內容介紹
《圖靈程式設計叢書·移動開發系列:Objective-C初學者指南(第2版)》從面向對象編程和程式邏輯的基本概念入手,引領讀者踏上熟練運用Xcode和Objective-C的征程,手把手教讀者編寫iPhone、iPad和Mac應用程式。作者注重實踐,始終強調親自動手的重要性,並在書中給出了大量示例代碼和圖示,教會讀者從編程的角度考慮問題,使用Objective-C構建編程邏輯,並將所有東西合成到實際套用中。
作者介紹
Gary Bennett 資深軟體開發工程師,xcelMe.com總裁,曾在多家公司擔任CIO和總裁,並在2002年帶領VistaCare成功上市。xcelMe.com是一家提供線上iPhone/iPad編程課程的網站,已培訓了數千名iPhone/iPad應用程式開發人員。iTunes App Store上有不少大賣的應用程式都是xcelMe.com的學員開發出來的。除本書外,Gary還與人合著了《精彩iPhone炫酷開發:七位一線高手的編程和設計範例》(人民郵電出版社出版)。
Mitch Fisher 資深軟體開發工程師,20世紀80年代就投身於計算機領域,先後擔任過多家大中型企業的軟體工程師、軟體架構師和軟體經理。目前致力於開發iOS應用程式、創建Unix伺服器端技術以及在xcelMe.com教授iOS開發。
Brad Lees 在應用程式開發和伺服器管理方面有超過15年的經驗,尤其擅長設計房地產開發系統和金融機構的軟體程式。Brad先後擔任過The Lyle Anderson公司信息系統經理、Smarsh產品研發經理、iNation應用程式開發副總裁,以及亞利桑那州最大的建築設計事務所Orcutt/Winslow Partnership的信息技術經理。
作品目錄
目錄
第1章 成為優秀的iOS或Mac 程式設計師 1
1.1 像開發人員一樣思考 1
1.2 完成開發周期 4
1.3 面向對象編程簡介 5
1.4 操縱Alice界面 7
1.5 總結 9
1.6 習題 9
第2章 編程基礎 10
2.1 和Alice一起漫遊仙境 10
2.1.1 導航選單 11
2.1.2 世界視窗 11
2.1.3 Alice中的類、對象和實例 13
2.1.4 對象樹 14
2.1.5 編輯區域 14
2.1.6 細節區域 15
2.1.7 事件區域 15
2.2 創建一個Alice套用——登月 16
2.3 你的第一個Objective-C程式 20
2.4 總結 26
2.5 習題 27
第3章 關於數據 28
3.1 編程中用到的數字系統 28
3.1.1 比特 28
3.1.2 位元組 30
3.1.3 十六進制計數 31
3.1.4 Unicode 32
3.2 數據類型 32
3.3 在Alice中使用變數和數據類型 33
3.4 數據類型與Objective-C 40
3.5 確定問題所在 44
3.6 總結 45
3.7 習題 45
第4章 程式流的決策與計畫 46
4.1 布爾邏輯 46
4.1.1 真值表 47
4.1.2 比較運算符 49
4.2 套用設計 49
4.2.1 偽代碼 50
4.2.2 設計需求 51
4.2.3 流程圖 54
4.2.4 示例套用的設計和流程圖 55
4.2.5 套用的設計 55
4.2.6 使用循環來重複程式語句 56
4.3 示例套用在Alice中的程式實現 58
4.4 示例套用在Objective-C中的程式實現 60
4.4.1 嵌套的if語句和else-if語句 62
4.4.2 刪掉多餘字元 62
4.4.3 通過重構改善代碼 63
4.4.4 運行套用 63
4.5 和Alice道別 64
4.6 總結 64
4.7 習題 65
第5章 基於Objective-C的面向對象編程 66
5.1 對象 66
5.2 什麼是類 67
5.3 類的設計 68
5.3.1 屬性的設計 68
5.3.2 方法的設計 70
5.3.3 類的實現 71
5.4 繼承 76
5.5 為什麼使用OOP 77
5.5.1 它無處不在 77
5.5.2 消除冗餘代碼 77
5.5.3 方便調試 77
5.5.4 方便替換 78
5.6 高階課題 78
5.6.1 接口 78
5.6.2 多態 78
5.7 總結 78
5.8 習題 79
第6章 學習Objective-C和Xcode 80
6.1 Objective-C簡史 80
6.2 理解語言的符號 81
6.3 面向對象概念 82
6.4 用Xcode再寫一個程式 86
6.5 總結 98
6.6 習題 99
第7章 Objective-C的類、對象及方法 100
7.1 創建Objective-C類 100
7.1.1 聲明接口和實例變數 101
7.1.2 傳送訊息(方法) 102
7.1.3 實現檔案的使用 104
7.1.4 方法的編碼 105
7.2 新類的使用 106
7.2.1 創建項目 106
7.2.2 添加對象 109
7.2.3 完成實現檔案 111
7.2.4 創建用戶界面 113
7.2.5 連線代碼 116
7.2.6 運行程式 120
7.2.7 充分發揮類方法的作用 121
7.3 訪問Xcode文檔 121
7.4 總結 122
7.5 習題 122
第8章 Objective-C編程基礎 123
8.1 集合類 123
8.1.1 使用NSSet 124
8.1.2 使用NSArray 125
8.1.3 NSDictionary 126
8.1.4 確定集合元素的類型 127
8.2 使用可變類 127
8.2.1 NSMutableSet 127
8.2.2 NSMutableArray 128
8.2.3 NSMutableDictionary 129
8.3 創建BookStore應用程式 130
8.4 引入實例變數 134
8.4.1 訪問實例變數 134
8.4.2 使用獲取方法和設定方法 135
8.5 引入屬性 137
8.5.1 屬性的使用 138
8.5.2 理解慣例的重要性 139
8.6 完成MyBookstore程式 139
8.6.1 創建視圖 140
8.6.2 添加實例變數 141
8.6.3 添加描述 142
8.6.4 創建一個簡單的數據模型類 144
8.6.5 更改MasterViewController 147
8.6.6 更改DetailViewController 151
8.7 總結 152
8.8 習題 152
第9章 比較數據 153
9.1 複習布爾邏輯 153
9.2 使用關係操作符 154
9.2.1 比較數值 154
9.2.2 創建示例Xcode套用 155
9.3 使用布爾表達式 158
9.3.1 比較字元串 159
9.3.2 比較日期 161
9.3.3 比較的結合 163
9.4 使用switch語句 164
9.5 總結 165
9.6 習題 166
第10章 創建用戶界面 167
10.1 理解Interface Builder 168
10.2 模型?視圖?控制器 168
10.3 人機互動界面準則(HIG) 170
10.4 用Interface Builder創建iPhone示例套用 171
10.4.1 使用Interface Builder 174
10.4.2 Dock 175
10.4.3 庫 176
10.4.4 查看器窗格和選擇器工具條 177
10.4.5 創建視圖 177
10.4.6 使用插口 179
10.4.7 連線動作和對象 180
10.4.8 實現檔案 181
10.5 總結 182
10.6 習題 182
第11章 數據存儲 183
11.1 存儲注意事項 183
11.2 首選項 183
11.2.1 首選項的寫操作 184
11.2.2 首選項的讀操作 185
11.3 資料庫 185
11.4 在資料庫中存儲信息 185
11.5 開始使用Core Data 186
11.6 模型 188
11.6.1 受控對象上下文 194
11.6.2 設定界面 194
11.7 總結 199
11.8 習題 200
第12章 協定和委託 201
12.1 多繼承 201
12.2 理解協定 202
12.3 理解委託 203
12.4 下一步 204
12.5 總結 205
第13章 記憶體、地址和指針 206
13.1 理解記憶體 206
13.1.1 比特、位元組和基數 207
13.1.2 十進制轉換為二進制 207
13.1.3 使用十六進制的計數法 208
13.2 理解記憶體地址的基礎 210
13.3 記憶體的分配 213
13.4 解除分配記憶體 215
13.5 在Objective-C中用ARC管理記憶體 217
13.6 沒有ARC的Objective-C記憶體管理 219
13.6.1 使用保留/釋放模型 220
13.6.2 處理隱含的保留訊息和自動釋放 221
13.6.3 傳送dealloc訊息 222
13.7 如果出了問題 223
13.8 ARC注意事項 224
13.9 總結 224
13.10 習題 225
第14章 Xcode調試器 226
14.1 準備調試 226
14.1.1 設定斷點 227
14.1.2 使用斷點導航器 228
14.1.3 調試基礎 230
14.1.4 使用調試器控制項 231
14.1.5 使用單步控制項 232
14.1.6 查看執行緒視窗和調用棧 233
14.1.7 變數的調試 234
14.2 處理代碼錯誤和警告 235
14.3 總結 239