編寫高質量代碼(改善Objective-C程序的61個建議) 编写高质量代码:改善Objective-C程序的61个建议 (Effective系列丛书)

劉一道

  • 出版商: 機械工業
  • 出版日期: 2015-09-01
  • 定價: $354
  • 售價: 8.5$301
  • 語言: 簡體中文
  • 頁數: 211
  • ISBN: 7111514637
  • ISBN-13: 9787111514633
  • 相關分類: Apple Developer

已絕版

買這商品的人也買了...

相關主題

商品描述

<內容簡介>

在通往「iOS技術殿堂」的路上,劉一道所著的《編寫高質量代碼(改善Objective-C程序的61個建議)/EFFECTIVE系列叢書》將為你編寫健壯、優雅、高質量的Obiective—C代碼提供極為寶貴的經驗!內容全部由Objective—C編碼的最佳實踐組成,從基本原則、慣用法、語法、內存管理、設計、實現、設計模式、兼容性和性能優化等方面深入探討了編寫高質量Objective—C代碼的技巧、禁忌和最佳實踐。共總結出61條寶貴的建議,每條建議對應Objective—C程序員可能會遇到的一個問題。本書不僅以建議的方式從正反兩方面給出了被實踐證明為十分優秀的解決方案或非常糟糕的解決方案,而且分析了問題產生的根源,會使人有一種醍醐灌頂的感覺,豁然開朗。
本書針對每個問題所選擇的應用場景都非常典型,給出的建議也都與實踐緊密結合。書中的每一條建議都可能在你的下一行代碼、下一個應用或下一個項目中顯露鋒芒。建議你將本書擱置在手邊,隨時查閱,相信這麼做一定能使你的學習和開發工作事半功倍。

 

<章節目錄>

前言
第1章  讓自己習慣Objec
  建議1:視Objective-C為一門動態語言
  建議2:在頭文件中盡量減少其他頭文件的引用
  建議3:盡量使用const、enum來替換預處理#d
  建議4:優先使用對象字面量語法而非等效方法
  建議5:處理隱藏的返回類型,優先選擇實例類型而非
  建議6:盡量使用模塊方式與多類建立複合關係
  建議7:明解Objective-C++中的有所為而有所不為
第2章  數據類型、集合和控制語句
  建議8:C語言與Objective-C語言的關係是充分而非必要條件
  建議9:高度警惕空指針和野指針的襲擊
  建議10:在64位環境下盡可能利用標記指針
  建議11:謹記兼容32位和64位環境下代碼編寫事項
  建議12:清楚常量字符串和一般字符串的區別
  建議13:在訪問集合時要優先考慮使用快速枚舉
  建議14:有序對象適宜存於數組,而無序對象適宜存於集
  建議15:存在公共鍵時,字典是在對象之間傳遞信息的絕佳方式
  建議16:明智而審慎地使用BOOL類型
第3章  內存管理
  建議17:理解內存和Objective-C內存管理規則
  建議18:內存管理講究「好借好還,再借不難」
  建議19:區別開alloc、init、retain、release和dealloc之間的差異
  建議20:優先選用存取方法來簡化內存管理
  建議21:對象銷毀或者被移除一定考慮所有權的釋放
  建議22:明智而審慎地使用d
第4章  設計與聲明
  建議23:編寫代碼要遵守Cocoa API約定
  建議24:洞悉實例變量
  建議25:透徹瞭解屬性的里裡外外
  建議26:存取方法是良好的類接口必要組成部分
  建議27:明曉類公共領域的方法都是虛方法
  建議28:初始化還是解碼取決於是否支持歸檔和解檔
  建議29:利用鍵–值機制訪問類的私有成員變量和方法
  建議30:淺複製適宜指針而深複製適宜數據
  建議31:明智而審慎地使用NSCo
  建議32:使用協議來實現匿名對象的提供
第5章  實現
  建議33:使用類別把類的實現拆分成不同的文件
  建議34:明智地使用內省可使程序更加高效和健壯
  建議35:盡量使用不可變性對象而非可變性對象
  建議36:利用複合能巧妙地把兩個類或兩個對象融合
  建議37:使用類擴展來隱藏實現的細節
  建議38:使用內聯塊應註意避免循環引用
  建議39:利用類別把方法添加到現有的類
  建議40:通過強弱引用來管理對象的所有權
第6章  繼承與面向對象設計
  建議41:明確isa在繼承上的作用
  建議42:利用類別和協議實現類似多重繼承的機制
  建議43:類別和類擴展是類繼承的延續性拓展

  建議44:繼承基類的實現行為勿忘調用
第7章  設計模式與Cocoa編程
  建議45:設計模式是特定環境下的特定問題的解決方案
  建議46:MVC模式是一種複合或聚合模式
  建議47:對象建模在數據庫中也廣泛使用
  建議48:類簇可簡化框架的公開架構而又不減少功能的豐富性
  建議49:委託用於界面控制,而數據源用於數據控制
第8章  定製init...和dea
  建議50:瞭解對象的alloc和in
  建議51:直接訪問實例變量的init...方法
  建議52:初始化方法必須以「init」字母開頭
  建議53:從init...方法得到的對象可能是不想要的
  建議54:實現init...方法的唯一性或者指定性並非「不可能」
  建議55:init...方法有「輕重級別」之分
第9章  Objective-C與Swift的兼容性
  建議56:Objective-C和Swift的互用性基於映射機制
  建議57:利用Swift的特性可增強已有的Objective-C代碼
  建議58:洞悉Objective-C 和Swift類型轉換的處理機制
  建議59:C語言的數據類型在Swift中「有所變有所不變」
  建議60:Swift和Objective-C兼容性是基於混搭機制
  建議61:利用遷移機制實現Objective-C代碼的重生

 

<作者介紹>

劉一道
劉一道,資深Mac∕IOS開發工程師,有近10年軟件開發經驗,精通IOS、Objective—C、Xcode等與蘋果開發相關的各項技術,同時對Android和Witldows PlOlle等移動開發技術也有深入的研究,並積累了豐富的實戰經驗。出版了《Objective—C程序設計入門與實踐》和《IOS 7:iPhorle∕iPad應用開發技術詳解》等著作。