編輯推薦
突齣iOS新特性、涵蓋Objective-C語法知識和iOS應用開發的核心知識
涵蓋蘋果力推的新技術HomeKit、HealthKit、watchOS 和Touch ID
301個典型實例+1個綜閤實例,全程10個小時的視頻講解
內容簡介
本書共32章,循序漸進地講解瞭Objective-C開發iOS應用程序的基本知識。本書從搭建開發環境講起,依次講解瞭Objective-C的基礎,如常量、變量和數據類型,運算符和錶達式,選擇結構,循環結構;Objective-C的高級知識,如類、對象和方法、繼承、多態、動態類型和異常處理;Objective-C的實戰技術,如Foundation框架類詳解,日期、時間、復製和謂詞,文件操作,Xcode Interface Builder界麵開發,使用Xcode編寫MVC程序,基礎控件,Web視圖控件,可滾動視圖控件和翻頁控件,提醒、操作錶和錶視圖,活動指示器、進度條和檢索條,UIView和視圖控製器,圖形、圖像、圖層和動畫,多媒體應用,定位處理,觸摸、手勢識彆和Force Touch,Touch ID,遊戲開發等。本書內容全麵,幾乎涵蓋瞭Objective-C語言的核心語法知識和開發iOS應用程序所需要的主要技術,全書內容言簡意賅,講解方法通俗易懂,特彆適閤於初學者學習。
本書適閤Objective-C初學者、Objective-C開發人員、iOS初學者、iOS程序員、iPhone開發人員、iPad開發人員學習,也可以作為相關培訓學校和大專院校相關專業的教學用書。
作者簡介
計算機科學技術學院碩士,通信工程博士,精通Java、C語言、C++程序開發,擅長底層技術和應用程序的結閤。熟悉Android和iOS係統,有豐富的Android和iOS開發經驗。
目錄
第一篇 基礎知識
第1章 認識“進步”最快的Objective-C語言 2
1.1 最耀眼的新星 2
1.1.1 一份統計數據 2
1.1.2 Objective-C的走紅過程 3
1.1.3 究竟何為Objective-C 3
1.1.4 蘋果公司選擇Objective-C的原因 3
1.2 Objective-C的優點和缺點 4
1.3 搭建Objective-C開發環境 5
1.3.1 Xcode介紹 5
1.3.2 下載Xcode7 6
1.3.3 安裝Xcode 7 6
1.3.4 創建iOS 9項目並啓動模擬器 8
1.3.5 打開現有的iOS 9項目 9
1.4 第一段Objective-C程序 11
1.4.1 使用Xcode編輯代碼 11
1.4.2 注釋 14
1.4.3 #import指令 15
1.4.4 主函數 16
1.5 Xcode集成開發環境介紹 17
1.5.1 基本麵闆 17
1.5.2 Xcode 7的基本操作 22
1.5.3 使用Xcode 7幫助係統 29
第二篇 核心語法
第2章 常量、變量和數據類型 32
2.1 標識符和關鍵字 32
2.2 數據類型和常量 33
2.2.1 整數類型 33
2.2.2 float類型和double類型 35
2.2.3 char類型 36
2.2.4 字符常量 37
2.2.5 id類型 39
2.2.6 限定詞 40
2.2.7 基本數據類型小結 41
2.2.8 NSLog函數 42
2.3 變量 43
2.3.1 定義變量 43
2.3.2 統一定義變量 45
2.4 字符串 46
第3章 運算符和錶達式 47
3.1 運算符的種類 47
3.2 算術錶達式 47
3.2.1 初步瞭解運算符的優先級 47
3.2.2 整數運算和一元負號運算符 49
3.2.3 模運算符 50
3.2.4 整型值和浮點值的相互轉換 51
3.2.5 類型轉換運算符 51
3.2.6 常量錶達式 52
3.3 條件運算符 53
3.4 sizeof運算符 54
3.5 關係運算符 54
3.6 強製類型轉換運算符 55
3.7 賦值運算符 56
3.7.1 基本賦值運算符 57
3.7.2 高級賦值運算符 57
3.7.3 通過計算器類演示運算符的用法 57
3.8 位運算符 59
3.8.1 按位與運算符 59
3.8.2 按位或運算符 59
3.8.3 按位異或運算符 60
3.8.4 求反運算符 60
3.8.5 嚮左移位運算符 61
3.8.6 嚮右移位運算符 61
3.8.7 頭文件 62
3.9 邏輯運算符 62
3.10 逗號運算符 63
3.11 運算符小結 64
第4章 選擇結構 66
4.1 順序結構和選擇結構 66
4.2 if語句 66
4.2.1 單分支結構 67
4.2.2 雙分支結構 69
4.2.3 復閤條件測試 70
4.2.4 if語句的嵌套 72
4.2.5 else if結構 74
4.3 switch語句 79
4.3.1 switch語句基礎 79
4.3.2 任何兩種情況的值都不能相同 80
4.3.3 switch語句小結 81
第5章 循環結構 82
5.1 語句 82
5.2 流程控製介紹 82
5.3 for循環語句 83
5.3.1 for循環基礎 83
5.3.2 for語句的執行步驟 86
5.3.3 讓for循環執行適當的次數 88
5.3.4 for循環嵌套 89
5.3.5 for循環的其他用法 90
5.4 while語句 91
5.4.1 基本while語句 91
5.4.2 算法在編程中的意義 93
5.4.3 while語句的陷阱 94
5.4.4 do-while語句 95
5.5 break語句 96
5.6 continue語句 97
5.7 goto語句 98
5.8 空語句 99
5.9 return語句 100
5.10 Boolean變量 100
第三篇 麵嚮對象
第6章 麵嚮對象——類、對象和方法 104
6.1 麵嚮對象介紹 104
6.2 對象建模技術 105
6.2.1 功能模型 105
6.2.2 對象模型 105
6.2.3 動態模型 106
6.3 類的基礎知識 106
6.3.1 類和實例 106
6.3.2 方法 106
6.3.3 實例和方法 107
6.3.4 認識Objective-C中的類 107
6.4 使用@interface定義類 108
6.4.1 設置科學的類名 109
6.4.2 實例變量 110
6.5 使用@implementation聲明成員 111
6.6 program具體實現部分 112
6.7 類的使用 113
6.7.1 類的初始化 114
6.7.2 使用類實例 115
6.7.3 使用類的好處 116
6.8 類的高級應用 117
6.8.1 訪問實例變量並封裝數據 118
6.8.2 盡量分離接口和實現文件 119
6.9 隱藏和封裝 122
6.9.1 什麼是封裝 122
6.9.2 訪問控製符 123
6.9.3 閤成存取器方法 125
6.9.4 使用點運算符訪問屬性 125
6.10 多參方法 126
6.10.1 不帶參數名的方法 128
6.10.2 操作分數 128
6.11 局部變量 129
6.11.1 方法的參數 129
6.11.2 static關鍵字 130
6.11.3 self關鍵字 131
6.12 在方法中分配和返迴對象 131
第7章 麵嚮對象——繼承 135
7.1 從根類談起 135
7.1.1 繼承的好處 135
7.1.2 繼承的使用 137
7.1.3 進一步理解繼承的概念 137
7.1.4 重寫方法 139
7.2 方法重載 141
7.2.1 方法重載基礎 141
7.2.2 重載的作用 142
7.2.3 選擇正確的方法 143
7.2.4 重載dealloc方法 144
7.2.5 使用super關鍵字 145
7.2.6 連續繼承 147
7.3 通過繼承添加新的實例變量 147
7.4 調用動態方法 148
7.5 訪問控製 150
7.6 Category類彆 151
第8章 多態、動態類型和異常處理 154
8.1 多態 154
8.1.1 多態基礎 154
8.1.2 實現多態 156
8.1.3 指針變量的強製類型轉換 159
8.1.4 判斷指針變量的實際類型 160
8.2 動態綁定和id類型 161
8.2.1 id類型的優勢 161
8.2.2 與C#的比較說明 162
8.2.3 編譯時和運行時檢查 162
8.2.4 id數據類型與靜態類型 163
8.2.5 動態類型的參數和返迴類型 163
8.2.6 處理動態類型的方法 164
8.3 異常處理 166
8.3.1 用@try處理異常 166
8.3.2 使用@finally迴收資源 168
8.3.3 自定義異常類 169
8.3.4 和C++異常處理進行比較 170
第9章 類彆、協議和閤成對象 172
9.1 類彆 172
9.1.1 定義類彆 172
9.1.2 類彆的使用 174
9.1.3 用類彆實現模塊化設計 175
9.1.4 使用類彆調用私有方法 179
9.1.5 擴展 179
9.2 協議 181
9.2.1 使用類彆實現非正式協議 181
9.2.2 定義正式協議 183
9.2.3 遵守(實現)協議 185
9.2.4 協議和委托 187
9.3 閤成對象 190
第10章 預處理程序 194
10.1 宏定義 194
10.1.1 無參宏定義 194
10.1.2 帶參宏定義 196
10.1.3 #define語句的作用 199
10.1.4 高級類型定義 200
10.1.5 #運算符 202
10.1.6 ##運算符 203
10.2 #import語句 203
10.3 條件編譯 205
10.3.1 #ifdef、#endif、#else和#ifndef語句 205
10.3.2 #if和#elif預處理程序語句 206
第11章 深入理解變量和數據類型 208
11.1 內存布局 208
11.2 自動變量 208
11.3 外部變量 209
11.4 作用域 210
11.4.1 控製實例變量作用域的指令 210
11.4.2 外部變量 210
11.4.3 靜態變量 212
11.4.4 選擇局部變量和全局變量 213
11.4.5 復閤語句和作用域 213
11.5 存儲類說明符 214
11.5.1 auto 214
11.5.2 const 214
11.5.3 volatile 215
11.5.4 static 216
11.5.5 extern 216
11.6 枚舉數據類型 216
11.7 typedef語句 218
第四篇 知識進階
第12章 Foundation框架類詳解 222
12.1 數字對象 222
12.2 字符串處理 224
12.2.1 創建字符串對象 225
12.2.2 可變對象與不可變對象 227
12.2.3 可變字符串 231
12.2.4 釋放字符串對象 233
12.3 數組對象 235
12.3.1 數組的存儲 235
12.3.2 數組的比較機製 238
12.3.3 調用數組元素 239
12.3.4 操作數組對象 240
12.3.5 返迴操作並生成訪問器方法 242
12.3.6 枚舉操作 244
12.3.7 使用枚舉遍曆查詢信息 246
12.3.8 刪除信息 248
12.3.9 數組排序 250
12.3.10 KVC和KVO開發 254
12.4 字典對象 255
12.4.1 NSDictionary功能介紹 255
12.4.2 創建可變字典 256
12.4.3 枚舉字典 257
12.5 集閤對象 258
12.5.1 NSSet類介紹 260
12.5.2 重復判斷操作 262
12.5.3 NSMutableSet可編輯集閤 263
12.5.4 NSCountedSet狀態集閤 264
12.5.5 有序集閤 265
第13章 日期、時間、復製和謂詞 267
13.1 賦值和復製 267
13.2 copy方法和mutableCopy方法的使用 267
13.3 淺復製和深復製 270
13.3.1 獨立副本 271
13.3.2 復製的應用 271
13.4 使用alloc+init...方式實現復製 273
13.5 NSCopyObject()的使用 273
13.6 用自定義類實現復製 274
13.7 用賦值方法和取值方法復製對象 276
13.8 復製可變和不可變對象 277
13.9 使用setter方法復製 278
13.10 謂詞 278
13.10.1 創建謂詞 279
13.10.2 用謂詞過濾集閤 279
13.10.3 在謂詞中使用格式說明符 280
13.11 日期和時間處理 281
13.12 日期格式器 282
13.13 日曆和日期組件 284
第14章 和C語言同質化的數據類型(上) 286
14.1 數組 286
14.1.1 一維數組 286
14.1.2 二維數組 288
14.1.3 顯式初始化二維數組 289
14.1.4 多維數組的定義 291
14.1.5 多維數組的初始化 292
14.1.6 字符數組 294
14.2 函數 297
14.2.1 函數的種類 297
14.2.2 定義函數 299
14.2.3 函數的聲明 299
14.2.4 函數原型 301
14.2.5 函數的參數 301
14.2.6 返迴值 303
14.2.7 聲明返迴類型和參數類型 304
14.2.8 調用函數 305
14.2.9 函數的嵌套調用和遞歸調用 305
14.2.10 數組作為函數的參數 307
14.2.11 內部函數和外部函數 309
14.3 變量的作用域和生存期 310
14.3.1 變量的作用域 310
14.3.2 靜態存儲變量和動態存儲變量 313
14.4 結構體 314
14.4.1 結構體基礎 314
14.4.2 結構體變量的初始化 318
14.4.3 結構體數組 322
14.4.4 結構體和函數 324
14.4.5 結構體中的結構體 325
14.4.6 位字段 326
14.4.7 typedef 327
第15章 和C語言同質化的數據類型(下) 328
15.1 指針 328
15.1.1 指針基礎 328
15.1.2 指針變量的運算 331
15.1.3 指針變量作為函數參數 334
15.1.4 指針和數組 335
15.1.5 指針和多維數組 339
15.1.6 指針和字符串 341
15.1.7 指針數組和多級指針 346
15.1.8 指針函數和函數指針 348
15.1.9 結構體指針 352
15.2 共用體 354
15.2.1 定義共用體類型和共用體變量 354
15.2.2 引用共用體變量 355
15.3 塊 357
15.3.1 塊的基本語法 357
15.3.2 塊和局部變量 358
15.3.3 用typedef定義塊類型 359
第16章 文件操作 361
16.1 Foundation框架的文件操作 361
16.2 用NSFileManager管理文件和目錄 361
16.2.1 NSFileManager基礎 362
16.2.2 訪問文件屬性和內容 365
16.2.3 使用NSData類 366
16.2.4 創建、刪除、移動和復製文件 367
16.2.5 目錄操作 367
16.2.6 枚舉目錄中的內容 369
16.2.7 查看目錄的內容 371
16.3 路徑操作類 372
16.3.1 常用的路徑處理方法 374
16.3.2 復製文件 375
16.3.3 使用NSProcessInfo獲取進程信息 377
16.4 用NSFileHandle實現文件I/O操作 378
16.5 使用NSURL讀取網絡資源 380
16.6 使用NSBundle處理項目資源 382
第17章 歸檔 384
17.1 使用XML屬性列錶進行歸檔 384
17.2 使用NSKeyedArchiver歸檔 385
17.3 NSCoding協議 388
17.4 編碼方法和解碼方法 389
17.5 使用NSData創建自定義文檔 390
17.6 使用歸檔程序復製對象 391
17.7 歸檔總結 392
第五篇 核心組件
第18章 Xcode IB界麵開發 396
18.1 IB基礎 396
18.2 和IB密切相關的庫麵闆 398
18.3 IB采用的方法 399
18.4 IB中的故事闆 399
18.4.1 推齣的背景 400
18.4.2 故事闆的文檔大綱 400
18.4.3 文檔大綱的區域對象 401
18.5 創建界麵 402
18.5.1 對象庫 402
18.5.2 將對象加入到視圖中 403
18.5.3 使用IB布局工具 404
18.6 定製界麵外觀 406
18.6.1 屬性檢查器的使用 406
18.6.2 設置輔助功能屬性 407
18.6.3 測試界麵 408
18.7 iOS 9控件的屬性 408
18.8 實戰演練——將界麵的控件連接到代碼 409
18.8.1 打開項目 409
18.8.2 輸齣口和操作 410
18.8.3 創建到輸齣口的連接 410
18.8.4 創建到操作的連接 412
18.9 實戰演練——純代碼實現UI設計 413
第19章 使用Xcode編寫MVC程序 416
19.1 MVC模式基礎 416
19.1.1 誕生背景 416
19.1.2 分析結構 416
19.1.3 MVC的特點 417
19.1.4 使用MVC實
Objective-C應用開發全程實錄 下載 mobi epub pdf txt 電子書 格式