定 價:49.8 元
叢書名:工業(yè)和信息化人才培養(yǎng)規(guī)劃教材
- 作者:傳智播客
- 出版時間:2016/8/1
- ISBN:9787115419606
- 出 版 社:人民郵電出版社
- 中圖法分類:TP312SW
- 頁碼:366
- 紙張:膠版紙
- 版次:1
- 開本:16K
內(nèi) 容 提 要
本書作為一本基于Swift 3.0語法的全新教程,系統(tǒng)全面地講解了使用Swift開發(fā)項目的知識和技術,可以幫助初學者真正達到從零基礎到獨立開發(fā)項目的技術水平,成為Swift開發(fā)者。
本書共分為12章:第1~5章講解了Swift開發(fā)的一些基本語法;第6~7章講解了Swift面向?qū)ο蟮木幊趟枷;?~10章講解了Swift的開發(fā)特性;第11章講解了Swift與Objective-C項目的相互遷移;第12章教大家開發(fā)《2048》游戲。本書從始至終保持通俗易懂的描述方式,采用理論與案例相結合的方法幫助初學者更好地理解各個知識點在實際開發(fā)中的應用。
本書附有源代碼、習題、教學視頻等配套資源,而且為了幫助初學者更好地學習本教材中的內(nèi)容,還提供了在線答疑。
本書既可作為高等院校本、?朴嬎銠C相關專業(yè)的程序設計課程教材,也可作為iOS開發(fā)技術的培訓教材。
《Swift項目開發(fā)基礎教程》是iOS開發(fā)工程師的入門讀物,是傳智播客團隊2016年打造的又一力作。本書配套有PPT、課程設計、教學視頻、課后練習及答案等學習資源,合適初學者學習。
傳智播客成立于2006年,它是由中國Java培訓的先行者張孝祥老師發(fā)起,聯(lián)合全球*大的中文IT社區(qū)CSDN、中關村軟件園共同創(chuàng)辦的一家專業(yè)教育機構。辦學至今,傳智播客一直堅守著“為千萬人少走彎路而著書,為中華軟件之崛起而講課”的辦學理念,堅持為中國培養(yǎng)優(yōu)秀軟件應用工程師群體為企業(yè)的宏偉目標。為了迎合人才市場的需求,傳智播客陸續(xù)開設了Java、網(wǎng)頁平面、PHP、.Net、iOS、C/C++等6個專業(yè)方向的課程,并且還將逐漸開設其他專業(yè)方向的課程。隨著傳智播客的日益壯大,除了江蘇總部,我們在北京、上海、廣州、武漢、成都、深圳等地都創(chuàng)立了直營分支機構。傳智播客儼然已成為了國內(nèi)*具專業(yè)口碑的IT教育機構。
第1章 Swift開發(fā)入門 1
1.1 Swift語言概述 1
1.1.1 什么是Swift語言 1
1.1.2 語言特點 2
1.1.3 開發(fā)框架 3
1.1.4 Swift與Objective-C語言對比 3
1.2 Swift開發(fā)環(huán)境和工具 5
1.2.1 開發(fā)環(huán)境 5
1.2.2 Xcode概述 6
1.2.3 安裝Xcode 8開發(fā)工具 7
1.2.4 Swift項目結構 9
1.2.5 幫助文檔 11
1.2.6 學習工具—playground 13
1.3 第一個Swift程序 14
1.4 本章小結 16
1.5 本章習題 16
第2章 基本語法 18
2.1 關鍵字和標識符 18
2.1.1 關鍵字 18
2.1.2 標識符 19
2.2 常量和變量 19
2.2.1 常量和變量的聲明 20
2.2.2 類型推斷和類型安全 22
2.2.3 輸出常量和變量 23
2.3 簡單數(shù)據(jù)類型 24
2.3.1 整型 25
2.3.2 浮點型 27
2.3.3 布爾類型(Bool) 28
2.4 元組類型 29
2.4.1 元組的聲明 29
2.4.2 元組變量的訪問 30
2.5 基本運算符 31
2.5.1 賦值運算符 31
2.5.2 單目負運算符 32
2.5.3 算術運算符 32
2.5.4 比較運算符 34
2.5.5 三目運算符 35
2.5.6 邏輯運算符 36
2.6 區(qū)間運算符 39
2.6.1 閉區(qū)間運算符 39
2.6.2 半閉區(qū)間運算符 40
2.7 Optional可選類型 41
2.7.1 可選類型的聲明 41
2.7.2 解包(Unwrapping) 42
2.7.3 隱式解析可選類型 43
2.8 本章小結 45
2.9 本章習題 45
第3章 控制流 49
3.1 條件語句 49
3.1.1 if條件語句 49
3.1.2 if-let語句 53
3.1.3 guard語句 54
3.1.4 switch語句 55
3.2 循環(huán)語句 58
3.2.1 for-in循環(huán) 59
3.2.2 while循環(huán) 60
3.2.3 repeat-while循環(huán) 62
3.3 本章小結 64
3.4 本章習題 64
第4章 字符串和集合 67
4.1 字符 67
4.1.1 字符概述 67
4.1.2 轉(zhuǎn)義字符 67
4.2 字符串 69
4.2.1 初始化字符串 69
4.2.2 字符串的基本操作 70
4.2.3 字符串的高級操作 73
4.3 集合(Collection) 75
4.3.1 創(chuàng)建數(shù)組(Array) 75
4.3.2 數(shù)組的常見操作 77
4.3.3 Set 80
4.3.4 字典(Dictionary) 84
4.4 本章小結 86
4.5 本章習題 86
第5章 函數(shù)、閉包和枚舉 90
5.1 函數(shù) 90
5.1.1 函數(shù)的定義和調(diào)用 90
5.1.2 函數(shù)的參數(shù)和返回值 91
5.1.3 局部參數(shù)名和外部參數(shù)名 94
5.1.4 函數(shù)參數(shù)的其他用法 96
5.1.5 嵌套函數(shù) 98
5.2 閉包 99
5.2.1 閉包的概念和定義 99
5.2.2 使用尾隨閉包 100
5.2.3 使用閉包表達式 100
5.2.4 捕獲 103
5.3 枚舉 104
5.3.1 枚舉的定義和訪問 104
5.3.2 使用Switch語句匹配枚舉值 105
5.3.3 原始值 106
5.4 本章小結 107
5.5 本章習題 107
第6章 面向?qū)ο螅ㄉ希?10
6.1 面向?qū)ο蟾攀觥?10
6.2 類和結構體 111
6.2.1 類和結構體的定義 111
6.2.2 類和結構體的實例 115
6.2.3 類和結構體對比 118
6.3 屬性 119
6.3.1 存儲屬性 119
6.3.2 懶存儲屬性 120
6.3.3 計算屬性 121
6.3.4 屬性觀察器 122
6.3.5 類型屬性 124
6.4 方法 127
6.4.1 實例方法 127
6.4.2 類型方法 128
6.5 構造函數(shù) 130
6.5.1 構造函數(shù)基礎 130
6.5.2 重載構造函數(shù) 132
6.5.3 指定構造函數(shù)與便利構造
函數(shù) 133
6.6 析構函數(shù) 134
6.7 下標腳本 135
6.7.1 下標腳本語法 135
6.7.2 下標腳本的使用 136
6.8 本章小結 138
6.9 本章習題 138
第7章 面向?qū)ο螅ㄏ拢?41
7.1 面向?qū)ο蟮娜筇匦浴?41
7.2 繼承和重寫 142
7.2.1 繼承的概念 142
7.2.2 繼承的實現(xiàn) 143
7.2.3 重寫 148
7.2.4 final關鍵字的使用 152
7.2.5 super關鍵字的使用 154
7.3 構造函數(shù)的繼承和重寫 156
7.3.1 構造函數(shù)的調(diào)用規(guī)則 156
7.3.2 構造過程的安全檢查 159
7.3.3 構造函數(shù)的自動繼承 161
7.3.4 構造函數(shù)的重寫 164
7.4 封裝和多態(tài) 166
7.4.1 封裝 166
7.4.2 多態(tài) 167
7.5 可選鏈 168
7.5.1 可選鏈與強制展開 169
7.5.2 可選鏈訪問屬性、方法和下標 170
7.6 類型檢查和轉(zhuǎn)換 174
7.6.1 類型檢查(is操作符) 176
7.6.2 類型轉(zhuǎn)換(as操作符) 176
7.6.3 Any和AnyObject的類型轉(zhuǎn)換 178
7.7 嵌套類型 180
7.8 本章小結 181
7.9 本章習題 181
第8章 擴展和協(xié)議 185
8.1 擴展 185
8.1.1 擴展概述 185
8.1.2 擴展計算型屬性 186
8.1.3 擴展構造函數(shù) 187
8.1.4 擴展方法 189
8.1.5 擴展下標 190
8.2 協(xié)議 191
8.2.1 協(xié)議概述 191
8.2.2 協(xié)議的要求 192
8.2.3 協(xié)議作為類型使用 197
8.2.4 協(xié)議的繼承 200
8.2.5 檢查協(xié)議一致性 201
8.2.6 代理模式 203
8.3 擴展和協(xié)議的結合 204
8.3.1 通過擴展采納協(xié)議 204
8.3.2 協(xié)議擴展 206
8.4 本章小結 207
8.5 本章習題 207
第9章 Swift內(nèi)存管理 212
9.1 Swift內(nèi)存管理機制 212
9.1.1 自動引用計數(shù)工作機制 213
9.1.2 自動引用計數(shù)示例 213
9.1.3 類實例之間的循環(huán)強引用 215
9.1.4 解決類實例之間的循環(huán)強引用 217
9.2 閉包引起的循環(huán)強引用 224
9.2.1 閉包引起的循環(huán)強引用 224
9.2.2 解決閉包引起的循環(huán)強引用 225
9.3 本章小結 228
9.4 本章習題 228
第10章 Swift的其他高級特性 232
10.1 泛型 232
10.1.1 泛型函數(shù) 232
10.1.2 泛型類型 235
10.1.3 類型約束 239
10.1.4 關聯(lián)類型 241
10.1.5 where子句 244
10.2 錯誤處理機制 246
10.2.1 錯誤的表示 246
10.2.2 錯誤處理 246
10.2.3 清理操作 250
10.3 訪問控制 251
10.3.1 模塊、源文件及訪問級別 251
10.3.2 類型的訪問級別 252
10.3.3 變量常量屬性下標及構造函數(shù)的
訪問控制 255
10.3.4 協(xié)議擴展的訪問控制 257
10.4 命名空間 259
10.4.1 查看和修改命名空間 259
10.4.2 使用命名空間 259
10.5 高級運算符 262
10.5.1 位運算符 263
10.5.2 溢出運算符 267
10.5.3 優(yōu)先級和結合性 268
10.5.4 運算符函數(shù) 271
10.5.5 自定義運算符 274
10.6 本章小結 276
10.7 本章習題 276
第11章 Swift與Objective-C的相互
操作 279
11.1 Swift項目中調(diào)用Objective-C類 279
11.1.1 實現(xiàn)原理分析 279
11.1.2 創(chuàng)建Swift項目 280
11.1.3 新建Objective-C類 281
11.1.4 在Swift項目中調(diào)用Objective-
C代碼 282
11.2 Objective-C項目中調(diào)用
Swift類 284
11.2.1 實現(xiàn)原理分析 285
11.2.2 創(chuàng)建Objective-C項目 285
11.2.3 新建Swift類 286
11.2.4 在Objective-C項目中調(diào)用Swift
代碼 288
11.3 Objective-C項目到Swift項目的
遷移 289
11.3.1 準備工作 289
11.3.2 遷移到Swift項目 292
11.4 本章小結 296
11.5 本章習題 296
第12章 項目實戰(zhàn)——《2048》
游戲 299
12.1 《2048》游戲項目分析 299
12.1.1 《2048》游戲簡介 299
12.1.2 項目架構分析 300
12.2 設置圖標、啟動畫面和新手引導 302
12.2.1 設置應用圖標 303
12.2.2 設置啟動界面 305
12.2.3 新手引導制作 308
12.3 編寫游戲界面 312
12.3.1 添加游戲和設置標簽 312
12.3.2 游戲主界面 314
12.3.3 游戲設置界面 317
12.4 編寫4×4方格數(shù)字界面 320
12.4.1 繪制4×4方格 320
12.4.2 建立方格視圖類 323
12.4.3 建立游戲模型 324
12.5 游戲效果實現(xiàn) 327
12.5.1 隨機閃現(xiàn)數(shù)字 327
12.5.2 響應數(shù)字滑動 330
12.5.3 數(shù)字響應方向重排 332
12.5.4 合并數(shù)字實現(xiàn)與動畫 342
12.5.5 游戲通關和結束檢測 349
12.6 游戲的其他內(nèi)容 356
12.6.1 設置游戲參數(shù) 356
12.6.2 分數(shù)和最高分邏輯處理 359
12.6.3 本地保存游戲最高分 364
12.7 本章小結 366