《20天搞定iPhone軟體開發》
基本資料
作者: 王志剛 朱蕾 王中元
出版社:電子工業出版社
ISBN:9787121184871
上架時間:2012-10-22
出版日期:2012 年10月
開本:16開
頁碼:404
版次:1-1
所屬分類: 電腦 > 軟體與程式設計 > 移動開發 > iPhone
更多關於 》》》《20天搞定iPhone軟體開發》
內容簡介
書籍
電腦書籍
《20天搞定iPhone軟體開發》是為有一定其他語言編程經驗的程式員轉向iOS軟體開發而撰寫的速成教材。全書一共20講,一天完成1講的學習。本著循序漸進的原則,前面的10講偏重於Cocoa物件導向編程的基本概念以及Objective-C 2.0語言的文法基礎。從第10講以後開始進入iOS軟體開發的實戰階段,每1講的內容都比較充實,其中包含了各種執行個體代碼,讀者可以在Xcode等開發環境中邊實踐邊學習。讀者完成全書20講的學習後可以達到初級iOS程式員的水準。
目錄
《20天搞定iphone軟體開發》
第1講 配置開發環境1
1.1 mac應用程式開發環境1
1.2 iphone應用程式開發環境 2
1.3 查看安裝目錄內容 4
1.3.1 啟動xcode. 5
1.3.2 啟動interface builder 6
1.4 mac中的基本操作 6
1.4.1 快顯功能表的顯示方法 6
1.4.2 工具條的定製 8
第2講 應用程式與架構 10
2.1 關於應用程式 10
2.1.1 應用程式的種類 11
2.1.2 關於iphone應用程式 12
2.2 架構 13
2.2.1 簡單的【hello world】程式 13
2.2.2 架構的出現 13
2.2.3 程式設計語言與架構的關係 14
2.3 mac os x以及iphone sdk中的架構14
2.3.1 架構的安裝目錄 14
2.3.2 cocoa與carbon 15
2.3.3 應用程式中使用的架構 16
2.4 cocoa與carbon的發展軌跡18
第3講 cocoa與objective-c 20
3.1 架構的使用 20
3.1.1 關於api 20
3.1.2 api與程式設計語言的關係 21
3.2 objective-c的發展史 22
3.3 用於其他語言中的cocoa api23
3.3.1 通過橋調用cocoa 23
3.3.2 是否應提倡在objective-c以外的語言中調用cocoa api的開發方式 24
3.4 解答與objective-c相關的幾個疑問 25
第4講 開發工具27
4.1 xcode 27
4.1.1 綜合開發環境xcode的功能 27
4.1.2 工程視窗 28
4.1.3 文字編輯器的功能 32
4.1.4 開發人員手冊 35
4.2 interface builder 36
4.3 dashcode37
4.4 iphone模擬器 38
4.5 其他工具 38
4.5.1 filemerge 38
4.5.2 icon composer 39
4.5.3 property list editor 39
4.6 mac或iphone應用程式開發的流程39
4.6.1 準備應用程式用的材料 39
4.6.2 建立步驟 41
4.6.3 gcc 42
第5講 cocoa環境下的物件導向編程43
5.1 物件導向的基本概念術語 43
5.1.1 類 44
5.1.2 執行個體 44
5.1.3 執行個體變數 44
5.1.4 方法 45
5.1.5 繼承 45
5.1.6 相互關係 46
5.1.7 對象 46
5.2 在cocoa執行個體中理解基本術語 47
5.2.1 通過按鈕配置理解基本術語 47
5.2.2 文本輸入框的繼承關係 48
第6講 hello world應用程式 49
6.1 hello world程式 49
6.2 啟動xcode建立工程49
6.3 編輯代碼 51
6.4 啟動interface builder設計使用者介面 52
6.4.1 xib檔案. 52
6.4.2 interface builder視窗 53
6.4.3 設計hello world的使用者介面 55
6.5 串連插座與動作55
6.6 完成hello world app delegate的代碼編寫58
6.7 建立與運行 59
6.8 開發步驟再回顧 61
第7講 mvc構架 62
7.1 hello world應用程式開發流程中包含的資訊62
7.2 什麼是mvc構架 62
7.2.1 視圖層 63
7.2.2 模型層 63
7.2.3 控制層 64
7.3 使用mvc構架的執行個體64
7.3.1 itunes的模型 64
7.3.2 itunes的視圖 65
7.3.3 itunes的控制 66
7.4 使用mvc構架的cocoa應用程式開發特點 66
7.4.1 視圖組件由cocoa提供 66
7.4.2 保持視圖與模型間的相互獨立 67
7.4.3 應用程式特有的功能由控制提供 67
7.4.4 只用建立模型以及控制的類 67
第8講 插座與動作 68
8.1 視圖與控制間資訊交換68
8.2 插座與動作 69
8.2.1 什麼是插座 69
8.2.2 什麼是動作 69
8.3 插座與動作的串連 70
8.3.1 插座與動作的追加 70
8.3.2 插座的串連 71
8.3.3 動作的串連 72
8.3.4 串連確認73
第9講 objective-c的文法75
9.1 objective-c的編程概論 75
9.1.1 objective-c與c語言 75
9.1.2 objective-c程式 75
9.1.3 類的聲明與實體 76
9.1.4 建立objective-c的測試工程 76
9.2 類的聲明 81
9.2.1 匯入聲明檔案 81
9.2.2 類的聲明 82
9.2.3 執行個體變數的聲明 82
9.2.4 執行個體方法的聲明 83
9.3 編寫類的實體 87
9.3.1 編寫類的實體 87
9.3.2 編寫方法代碼 87
9.3.3 關於方法的聲明 88
9.4 對象專用變數類型 88
9.4.1 執行個體對象專用的變數類型 88
9.4.2 id類型 89
9.4.3 nil類型 89
9.4.4 在條件運算式中使用物件變數 89
9.5 方法調用 90
9.5.1 執行個體方法的調用 90
9.5.2 類方法的調用 91
9.5.3 對象為nil的情況 92
9.6 命名規則 92
9.6.1 類的命名規則 92
9.6.2 執行個體變數的命名規則 93
9.6.3 方法的命名規則 93
9.7 重新解析cocoa的hello world程式94
9.7.1 helloworldappdelegate.h 94
9.7.2 helloworldappdelegate.m 95
第10講 記憶體管理 98
10.1 記憶體配置與釋放 98
10.2 與記憶體相關的問題99
10.2.1 記憶體釋放的時機 99
10.2.2 記憶體流失 100
10.3 使用垃圾收集進行記憶體管理100
10.3.1 記憶體回收 100
10.3.2 objective-c與記憶體回收 102
10.3.3 記憶體回收功能有效化 103
10.3.4 記憶體回收編程的規則 103
10.4 由參照統計實現的記憶體管理104
10.4.1 參照統計的基本概念 104
10.4.2 retain、release方法 104
10.4.3 對象保持到釋放的流程 105
10.5 類的執行個體化 106
10.5.1 類的執行個體化與初期化 107
10.5.2 自動釋放 108
10.5.3 建立執行個體的方法 108
10.5.4 執行個體的釋放 109
10.6 記憶體管理的規則 110
10.6.1 臨時對象 110
10.6.2 記憶體管理經驗總結 111
第11講 字串 113
11.1 字串專用類 113
11.2 nsstring與nsmutablestring 113
11.3 字元編碼 114
11.3.1 什麼是字元編碼 114
11.3.2 nsstring的字元代碼為unicode 115
11.3.3 nsstringencoding 115
11.4 字串的產生 116
11.4.1 使用【@“”】的形式建立新字串 116
11.4.2 建立中文字串 116
11.4.3 使用格式建立字串118
11.5 nsrange 119
11.6 字串處理 120
11.6.1 計算字串的長度 120
11.6.2 字串串連、插入、刪除 121
11.6.3 字串的比較 124
11.6.4 字串的檢索 125
11.6.5 抽取部分字串 126
11.7 讀寫文字檔 127
11.7.1 讀取文字檔 127
11.7.2 文字檔輸出 128
第12講 集合 130
12.1 數組130
12.1.1 nsarray與 nsmutablearray 130
12.1.2 數組的建立 131
12.1.3 數組的長度 132
12.1.4 通過索引取得對象 132
12.1.5 使用nsenumerator取得對象 133
12.1.6 使用高速枚舉取得對象 136
12.1.7 對象的追加與刪除 136
12.2 字典138
12.2.1 什麼是字典類型 138
12.2.2 nsdictionary與 nsmutabledictionary 139
12.2.3 nsdictionary的建立 139
12.2.4 鍵與值的取得 141
12.2.5 鍵與值的追加 142
12.3 封裝類 143
12.3.1 什麼是封裝類 143
12.3.2 nsnumber 144
12.4 對象的等價與同值 146
12.4.1 擁有相同值的對象 146
12.4.2 等價與同值的判定 146
12.4.3 在集合類中的應用 147
12.5 集合類與參照統計 148
12.5.1 nsarray與參照統計 148
12.5.2 nsdictionary與參照統計 149
第13講 xml應用 150
13.1 xml概要 150
13.1.1 什麼是xml 150
13.1.2 一種常用的xml執行個體——rss 150
13.2 xml的解析 151
13.2.1 解析及解析器 151
13.2.2 xml解析器的種類 152
13.2.3 樹結構 153
13.3 cocoa的xml解析器 154
13.3.1 nsxmldocument、nsxmlnode、nsxmlelement 154
13.3.2 xml文檔的解析器 155
13.3.3 xpath 157
13.3.4 節點資訊 158
13.3.5 節點的父子關係 159
13.3.6 屬性值的取得 161
13.4 iphone 應用軟體中的xml解析執行個體 162
13.4.1 第三方api及執行個體概要 162
13.4.2 建立並完成rss檔案解析程式 163
第14講 uikit架構簡介及iphone應用程式基底礎類168
14.1 uikit概要168
14.1.1 uikit類列表 168
14.1.2 iphone hello world程式 171
14.1.3 不使用interface builder的hello world程式 175
14.1.4 在xcode 4中建立hello world程式 180
14.2 畫面構成基礎——uiview 184
14.2.1 uiview概要 184
14.2.2 uiview嵌套 187
14.3 uiviewcontroller與畫面控制 195
14.3.1 使用uiviewcontroller實現簡單的畫面切換 195
14.3.2 使用uitabbarcontroller實現並列畫面跳轉 200
14.3.3 使用uinavigationcontroller實現多層畫面跳轉 204
14.3.4 跳轉到任意畫面 210
14.3.5 模態(modal)畫面的顯示方法 212
第15講 iphone應用程式中的事件響應 215
15.1 事件響應 215
15.1.1 按鈕的觸摸 215
15.1.2 回應程式法的定義 217
15.1.3 滑塊的滑動 218
15.2 uiresponder221
15.2.1 畫面觸摸的檢測 221
15.2.2 標籤觸摸的檢測 222
15.2.3 響應鏈 224
15.2.4 觸摸系列最終處理及取消 228
15.3 二次觸碰 229
15.4 手勢232
15.4.1 拖動檢測 232
15.4.2 滑動檢測 236
15.4.3 快速滑動檢測 240
15.5 多點觸摸 243
15.5.1 檢測多點觸摸 243
15.5.2 檢測雙指滑動 244
15.5.3 檢測擴大/縮小 246
15.6 震動249
15.6.1 檢測震動249
第16講 常用ui控制項252
16.1 標籤(uilabel) 252
16.1.1 文本與對齊的設定 252
16.1.2 標籤顏色與文本顏色的修改 253
16.1.3 改變字型 254
16.1.4 字型尺寸的自動調整 254
16.1.5 多行字串 255
16.1.6 換行與省略 256
16.1.7 高亮時的文本顏色 256
16.1.8 陰影顯示 256
16.1.9 繪製方法的定製 258
16.2 按鈕(uibutton) 259
16.2.1 按鈕的配置與觸摸檢測 259
16.2.2 按鈕的種類 259
16.2.3 按鈕的狀態及標題變化 260
16.2.4 按鈕觸摸時的陰影反轉 261
16.2.5 按鈕觸摸時的背景閃爍 261
16.2.6 在按鈕中追加圖片 262
16.2.7 設定按鈕背景圖片 263
16.2.8 調整按鈕的邊間距 264
16.2.9 設定標題的換行/省略 265
16.3 文本輸入框(uitextfield) 266
16.3.1 文本輸入框的顯示 266
16.3.2 鍵盤的顯示/隱藏 266
16.3.3 鍵盤的各種設定 267
16.3.4 文本輸入框的邊框線 267
16.3.5 文本的橫向與縱向的調整 267
16.3.6 文本輸入框的字型及顏色 268
16.3.7 提示資訊的設定 269
16.3.8 清空按鈕的顯示 269
16.3.9 背景圖片的設定 270
16.3.10 uiview的追加 270
16.3.11 文本輸入框的狀態監視 272
16.4 開關(uiswitch) 272
16.5 選擇控制項(uisegmentedcontroller) 274
16.5.1 選擇控制項的使用方法 274
16.5.2 選擇控制項的種類 276
16.5.3 不顯示選擇狀態 276
16.5.4 選擇控制項的顏色變更 276
16.5.5 使用表徵圖的選擇控制項 277
16.5.6 修改選項內容的顯示位置 278
16.5.7 設定選項的非活性 278
16.5.8 選項的插入與刪除 278
16.6 滑塊(uislider) 280
16.6.1 滑塊的使用方法 280
16.6.2 滑塊值的通知時機 281
16.6.3 向滑塊中追加表徵圖 281
16.6.4 滑塊的定製 282
16.7 日期時刻選擇框(uidatepicker) 284
16.7.1 日期時刻選擇框的使用 284
16.7.2 以動畫形式改變日期 285
16.7.3 設定間隔及最小/最大值 285
16.7.4 日期選擇框的種類 286
16.7.5 定製日期選擇框 287
第17講 表格視圖(uitableview) 290
17.1 表格顯示 290
17.1.1 最簡單的表格顯示 290
17.1.2 單元選擇時的動作 293
17.1.3 表格的分段顯示 294
17.1.4 表格的分組顯示 297
17.1.5 段腳的顯示 299
17.1.6 索引的活用 299
17.2 單元的定製 301
17.2.1 單元尺寸及顏色的修改 301
17.2.2 單元分隔線的修改 302
17.2.3 追加圖片 303
17.2.4 追加細節標籤 305
17.2.5 追加附件 306
17.2.6 追加自訂附件 308
17.2.7 追加僅編輯模式時顯示的附件 309
17.2.8 追加控制項 311
17.2.9 定製單元背景 315
第18講 使用sqlite資料庫 317
18.1 sqlite資料庫及使用sqlite資料庫的前期準備 317
18.1.1 sqlite資料庫概要 317
18.1.2 使用sqlite資料庫的前期準備 318
18.2 建立資料庫及表格 319
18.3 串連資料庫 321
18.4 資料檢索 324
18.5 資料的追加與刪除 328
18.6 資料庫更新 332
18.7 使用core data進行資料的追加、刪除 335
18.7.1 core data的優點 335
18.7.2 建立使用core data的應用程式 336
18.7.3 改造core data的資料模型 337
18.7.4 修改資料登入與保持代碼 341
18.7.5 資料刪除代碼 342
18.8 追加編輯資料畫面 342
18.9 添加排序項目345
第19講 調試方法 349
19.1 缺陷與調試 349
19.1.1 什麼是缺陷與調試 349
19.1.2 描述缺陷 350
19.1.3 缺陷的重現 350
19.2 nslog351
19.2.1 使用nslog輸出調試資訊 351
19.2.2 nslog的格式 353
19.3 調試工具 354
19.3.1 什麼是調試工具 355
19.3.2 調試構建配置 355
19.3.3 斷點與偵錯模式的啟動 356
19.3.4 調試介面 356
19.3.5 調試的分步執行 358
19.4 例外359
19.4.1 什麼是例外 359
19.4.2 捕捉例外 360
19.4.3 發生例外時停止運行 362
19.4.4 避免使用太多的例外 363
第20講 使用iphone終端進行測試 364
20.1 iphone developer program 364
20.1.1 【iphone developer program】的會員種類 364
20.1.2 【iphone developer program】的註冊手續 365
20.1.3 關於【apple id】 365
20.1.4 【iphone developer program】的付款及認證手續 366
20.2 在實際iphone手機上的調試 366
索引 379
本圖書資訊來源:中國互動出版網