iPhone應用程式開發攻略之深入淺出Objective-C 20

iPhone應用程式開發攻略之深入淺出Objective-C 20

《iPhone應用程式開發攻略之深入淺出Objective-C20》是2011年出版的圖書,作者是王志剛等。

基本介紹

  • 書名:iPhone應用程式開發攻略之深入淺出Objective-C 20
  • 作者:王志剛等
  • ISBN:978-7-121-13469-2
  • 頁數:356頁
  • 定價:69.00元
  • 出版時間:2011年6月
  • 開本:16開
編輯推薦,內 容 簡 介,前 言,本書內容,本書讀者,目 錄,

編輯推薦

在學了此書中關於如何使用Objective-C 20開發您的第一個IPhone應用程式之後
您也可以賺取您的第一桶金

內 容 簡 介

本書系統地介紹了關於使用Objective-C 20開發iPhone應用程式的基礎知識,涵蓋各種開發工具的操作技巧、框架(Framework)內部的工作原理、軟體的調式技巧、後期製作等基礎知識。書中花費大量篇幅介紹開發iPhone應用程式時所必需的各種常用類庫,結合針對性強的套用實例的講解,可進一步加深讀者對這些常用類庫的理解。
本書可作為iPhone應用程式開發的入門教材使用。

前 言

今天像Android,Blackberry,Windows Phone,iPhone等智慧型手機廣受關注,特別是iPhone。2010年伊始,蘋果公司連續推出了iPhone的升級產品iPhone 4,以及與iPhone使用相同OS的iPad,2011年又推出了iPad 2,給業界帶來了強烈的衝擊。
蘋果公司的iPhone,iPad等產品廣受消費者支持的原因,不僅在於其前衛新穎的外觀設計,簡潔直觀的用戶界面,更在於其能給用戶提供多種多樣的應用程式的選擇。蘋果的App Store中已經匯集了十幾萬種應用程式供用戶選擇,而且每天還有各種專業或業餘的程式設計人員不斷將自己的作品匯入其中。可以肯定地說在不遠的將來,我們還將繼續見證蘋果移動電子產品的成長壯大。
本書目的不是要驚嘆iPhone,iPad等產品的偉大,而是想告訴大家,其實我們也可以在這個不斷成長的大餅中,利用自己的智慧分得一杯羹。只要您有好的創意,即使您是沒有程式設計經驗的家庭主婦,只要您做出了應用程式,加入到App Store中後,也可以從蘋果移動電子產品的全球用戶群中賺取您的利潤。運氣好的話,甚至是一筆不菲的收入呢,這方面成功的例子有很多。

本書內容

至於iPhone應用程式的開發更不是什麼高不可攀的東西,本書從易到難介紹iPhone應用程式編程的知識,同時還會有筆者在開發iPhone應用程式過程中獲得的許多心得體會。
本書主要介紹iPhone應用程式的開發語言Objective-C,以及Cocoa與Cocoa Touch框架(framework)的基礎知識(Cocoa Touch框架用於iPhone應用程式,而Cocoa框架用於Mac應用程式)。同時還花費了一定篇幅來介紹關於iPhone應用程式開發的基本概念方面的知識,如MVC框架概念、記憶體管理概念等。
iPhone應用程式開發必須要在Mac電腦上進行,對於那些沒有使用Mac電腦的朋友,書中也穿插了許多關於Mac電腦的使用知識,介紹了開發iPhone以及Mac應用程式時專用的、主要的幾種開發工具的使用,如Xcode,Interface Builder等。涵蓋從應用程式開發到最終應用程式發布為止的,幾乎所有會使用到的開發工具。
本書中圍繞相關知識的介紹,配備了詳細的實例。具體的開發相關知識都是以實例為中心進行展開的,力爭做到通俗易懂。

本書讀者

開發iPhone應用程式時基本上都要使用Objective-C(部分有使用DashCode開發的Web應用程式),因此掌握Objective-C及相關框架知識是首要的前提條件。Objective-C語言的本質是C語言的擴展版本,是一種面向對象型的開發語言。有了C語言或者面向對象語言的基礎知識,將有助於您掌握Objective-C,但是並不意味著沒有這些,學習起來就會很困難。通常iPhone應用程式的大部分功能都是由各種框架(如iPhone應用程式的界面由AppKit框架實現)來完成的,實際代碼幾乎是約定俗成的,因此不用擁有對面向對象編程概念很深理解,或者更深的C語言知識就能夠著手編程了。筆者認為,本書正是適合那些沒有C語言基礎以及面向對象編程知識的朋友。當然對於擁有這方面知識的朋友可以將有關章節當做複習或者參考,畢竟Objective-C的面向對象的概念與其他語言如Java等還是有所區別的。
參與本書編寫的人員有朱蕾、羅偉、黃建峰、朱至濂。另外,在此特別感謝我父母在本書編寫過程中給予的大力支持。
作者
2011年3月

目 錄

第1章 配置開發環境 2
11 Mac應用程式開發環境2
12 iPhone應用程式的開發環境3
13 查看安裝目錄中的內容5
131 啟動Xcode6
132 啟動Interface Builder7
14 Mac中的基本操作7
141 彈出選單的顯示方法7
142 工具條的定製9
第2章 開發工具 11
21 Xcode11
211 綜合開發環境Xcode的功能11
212 工程視窗12
213 文本編輯器的功能16
214 開發者手冊18
22 Interface Builder20
23 Dashcode20
24 iPhone模擬器21
25 其他工具22
251 FileMerge22
252 Icon Composer23
253 Property List Editor23
26 Mac或iPhone應用程式開發的流程23
261 準備應用程式用的材料24
262 建立步驟25
263 gcc26
第3章 應用程式與框架 27
31 關於應用程式27
311 應用程式的種類28
312 關於iPhone應用程式29
32 框架29
321 簡單的“Hello World”程式29
322 框架的出現30
323 程式語言與框架的關係30
33 Mac OS X以及iPhone SDK中的框架31
331 框架的安裝目錄31
332 Cocoa與Carbon32
333 應用程式中使用的框架32
34 Cocoa與Carbon的發展軌跡34
341 Cocoa是面向對象型的框架,所以挺難掌握35
342 Carbon是用C開發的,懂語言的人應該用Carbon35
343 Carbon將來會消失35
344 Carbon應用程式使用Cocoa進行改寫後速度會提高35
345 如果使用Windows版的Cocoa進行開發,在Windows上也能
運行Cocoa應用程式36
第4章 Cocoa與Objective-C 37
41 框架的使用37
411 關於API37
412 API與程式語言的關係39
42 Objective-C的發展史39
43 用於其他語言中的Cocoa API41
431 通過橋調用Cocoa41
432 是否應提倡在Objective-C以外的語言中調用Cocoa API的開發方式42
44 解答與Objective-C相關的幾個疑問43
441 是否需要先掌握C語言,以及Smalltalk呢43
442 Objective-C這樣冷門的語言不好學吧43
443 Objective-C也能廣泛運用在Windows或Linux平台上嗎44
444 Objective-C將來會消失嗎44
第5章 Cocoa面向對象編程的基本概念 45
51 面向對象的5個基本術語45
511 類46
512 實例46
513 實例變數47
514 方法48
515 繼承48
516 相互關係49
517 對象50
52 在Cocoa實例中理解基本術語50
521 通過按鈕配置理解基本術語50
522 文本輸入框的繼承關係51
第6章 Hello World應用程式 53
61 關於Cocoa版的Hello World程式53
62 啟動Xcode創建工程54
63 創建類56
631 創建類檔案56
632 追加代碼56
64 啟動Interface Builder設計用戶界面58
641 xib檔案58
642 Interface Builder視窗59
643 設計Hello World的用戶界面61
65 類的實例化62
66 連線插座與動作64
67 完成AppController的代碼編寫67
68 建立與運行67
69 開發步驟再回顧69
第7章 MVC構架 70
71 Hello World應用程式開發流程中包含的信息70
72 什麼是MVC構架70
721 視圖層71
722 模型層71
723 控制層72
73 使用MVC構架的實例72
731 iTunes的模型72
732 iTunes的視圖73
733 iTunes的控制74
74 使用MVC構架的Cocoa應用程式開發特點75
741 視圖組件由Cocoa提供75
742 保持視圖與模型間的相互獨立 75
743 應用程式特有的功能由控制提供 75
744 只用創建模型以及控制的類 76
第8章 插座與動作77
81 視圖與控制間的信息交換 77
82 插座與動作78
821 什麼是插座78
822 什麼是動作78
83 插座以及動作的連線 79
831 插座與動作的追加79
832 插座的連線80
833 動作的連線81
834 連線確認82
第9章 C語言語法基礎 85
91 C語言概論85
911 C語言的發展過程 85
912 C語言的特點85
913 C源程式的結構特點86
914 C源程式的構成規則89
915 C語言的字元集89
916 C語言辭彙90
92 數據類型92
921 基本數據類型92
922 基本運算符和表達式98
923 關係運算符和表達式101
924 邏輯運算符和表達式102
93 數組103
931 一維數組103
932 二維數組104
933 字元數組104
94 指針104
941 指針的基本概念105
942 指針變數的類型聲明105
943 指針變數的賦值106
944 使用字元串指針變數與字元數組的區別106
95 C語言的輸出語句printf()函式107
951 printf()函式調用的一般形式107__
952 格式字元串107
953 輸出的實例109
96 控制語句110
961 if語句 110
962 switch語句113
963 while語句115
964 do…while語句116
965 for語句117
97 函式119
971 函式的語法120
972 函式的聲明與實體121
973 可變參數122
974 標準函式館122
98 結構123
981 結構的定義123
982 結構類型變數的聲明124
983 結構變數的取值與賦值125
99 在Xcode中創建學習C語言用的工程125
第10章 Objective-C的語法129
101 Objective-C的編程概論129
1011 Objective-C與C語言129
1012 Objective-C程式129
1013 類的聲明與實體130
1014 創建Objective-C的測試工程130
102 類的聲明135
1021 導入聲明檔案135
1022 類的聲明136
1023 實例變數的聲明137
1024 實例方法的聲明137
103 編寫類的實體142
1031 編寫類的實體142
1032 編寫方法代碼143
1033 關於方法的聲明144
104 對象專用變數類型144
1041 實例對象專用的變數類型144
1042 id類型145
1043 nil類型145
1044 在條件表達式中使用對象變數145
105 方法調用146
1051 實例方法的調用146
1052 類方法的調用147
1053 對象為nil的情況下148
106 命名規則148
1061 類的命名規則148
1062 實例變數的命名規則149
1063 方法的命名規則149
107 重新解析Cocoa的Hello World程式150
1071 AppControllerh150
1072 AppControllerm151
第11章 記憶體管理153
111 記憶體分配與釋放153
112 與記憶體相關的問題154
1121 記憶體釋放的時機154
1122 記憶體泄漏155
113 使用垃圾收集進行記憶體管理155
1131 垃圾回收155
1132 Objective-C與垃圾回收157
1133 垃圾回收功能有效化158
1134 垃圾回收編程的規則159
114 由參照統計實現的記憶體管理159
1141 參照統計的基本概念159
1142 retain和release方法160
1143 對象保持到釋放的流程160
115 類的實例化162
1151 類的實例化與初始化162
1152 自動釋放163
1153 創建實例的方法164
1154 實例的釋放165
116 記憶體管理的規則166
1161 臨時對象166
1162 記憶體管理經驗總結168
第12章 字元串169
121 字元串專用類169
122 NSString與NSMutableString170
123 字元編碼170
1231 什麼是字元編碼170
1232 NSString的字元代碼為Unicode171
1233 NSStringEncoding171
124 字元串的生成172
1241 使用@""的形式創建新字元串172
1242 創建中文字元串173
1243 使用格式創建字元串174
125 NSRange176
126 字元串處理177
1261 計算字元串的長度177
1262 字元串的連線、插入和刪除178
1263 字元串的比較181
1264 字元串的檢索183
1265 抽取部分字元串184
127 讀/寫文本檔案186
1271 讀取文本檔案186
1272 輸出文本檔案187
第13章 集合189
131 數組189
1311 NSArray與 NSMutableArray189
1312 數組的創建190
1313 數組的長度191
1314 通過索引取得對象192
1315 使用NSEnumerator取得對象193
1316 使用高速枚舉法取得對象196
1317 對象的追加與刪除197
132 字典199
1321 什麼是字典類型199
1322 NSDictionary與 NSMutableDictionary200
1323 NSDictionary的創建200
1324 鍵與值的取得202
1325 鍵與值的追加203
133 包裝類205
1331 什麼是包裝類205
1332 NSNumber205
134 對象的等價與同值208
1341 擁有相同值的對象208
1342 等價與同值的判定208
1343 在集合類中的套用210
135 集合類與參照統計210
1351 NSArray與參照統計210
1352 NSDictionary與參照統計212
第14章 XML套用213
141 XML概要213
1411 什麼是XML213
1412 一種常用的XML實例——RSS213
142 XML的解析215
1421 解析及解析器215
1422 XML解析器的種類215
1423 樹結構216
143 Cocoa中的XML解析器218
1431 NSXMLDocument,NSXMLNode和NSXMLElement218
1432 XML文檔的解析器219
1433 Xpath221
1434 節點信息222
1435 節點的父子關係223
1436 屬性值的取得225
第15章 表格視圖227
151 表格視圖227
1511 NSTableView與NSTableColumn227
1512 表格的構造229
152 數據資源229
1521 在表格中使用數據資源229
1522 數據資源的方法230
1523 NSTableView的方法231
153 實例231
1531 數據資源的設定238
1532 numberOfRowsInTableView:238
1533 tableView:objectValueForTableColumn:row:239
1534 單擊Read按鈕的處理代碼242
第16章 UIKit框架簡介及如何創建iPhone表格視圖245
161 UIKit概要246
1611 UIKit框架的類一覽表246
1612 UIKit框架與AppKit框架的區別249
162 創建測試UIKit類的試驗工程250
1621 創建第一個iPhone應用程式——Hello World工程251
1622 修改Hello World工程使之成為不使用xib檔案的實驗工程256
163 創建最簡單的表格261
1631 創建表262
1632 追加選擇單元時運行的動作265
164 iPhone表格視圖的相關類參考265
1641 UITableView類266
1642 UITableViewCell類272
1643 UITableViewController類279
1644 UITableViewDataSource協定類280
1645 UITableViewDelegate協定類284
第17章 常見的錯誤與警告287
171 什麼是錯誤與警告287
172 Xcode中的錯誤與警告287
1721 錯誤與警告的顯示方式288
1722 建立結果視窗288
1723 代碼視窗中的顯示289
173 經常會出現的錯誤信息290
1731 ‘ XXX’undeclared (first use in this function)290
1732 parse error before ‘XXX’token291
1733 invalid preprocessing directive #XXX291
1734 No Such file or directory292
1735 Undefined symbols292
174 經常會出現的警告信息293
1741 ‘XXX’may not respond to ‘YYY’ 293
1742 unused variable ‘XXX’294
1743 local declaration of ‘XXX’hides instance variable295
1744 incomplete implementation of class ‘XXX’296
1745 control reaches end of non-void function297
1746 passing argument n of ‘XXX’ assignment from
distinct Objective-C type298
第18章 調試方法299
181 缺陷與調試299
1811 什麼是缺陷與調試299
1812 描述缺陷300
1813 缺陷的重現300
182 NSLog301
1821 使用NSLog輸出調試信息301
1822 NSLog的格式302
183 調試工具304
1831 什麼是調試工具304
1832 調試構建配置305
1833 斷點與調試模式的啟動305
1834 調試界面306
1835 調試的分步執行308
184 例外309
1841 什麼是例外309
1842 捕捉例外309
1843 發生例外時停止運行312
1844 避免使用太多的例外313
第19章 應用程式的後期製作314
191 應用程式圖示314
1911 製作圖示的圖片315
1912 圖示格式檔案的製作316
1913 向工程中追加圖片檔案317
192 應用程式的設定317
1921 什麼是目標317
1922 與目標相關的應用程式設定318
1923 Infoplist321
193 本地化322
1931 什麼是本地化322
1932 用戶界面的本地化323
1933 應用程式名稱的本地化326
1934 本地化的測試328
194 構建配置329
1941 什麼是構建配置329
1942 將構建配置設為Release329
195 完成的應用程式330
附錄A 加入iPhone Developer Program331
索引337

相關詞條

熱門詞條

聯絡我們