Swift開發實戰( 簡體 字) | |
作者:管蕾 | 類別:1. -> 程式設計 -> 手機程式 -> Swift |
出版社:人民郵電出版社 | 3dWoo書號: 39582 詢問書籍請說出此書號! 有庫存 NT售價: 345 元 |
出版日:10/1/2014 | |
頁數:487 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787115368270 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章 工欲善其事,必先利其器——Swift語言基礎 1
1.1 Swift概述 1 1.1.1 Swift的創造者 1 1.1.2 Swift的優勢 2 1.2 搭建開發環境 3 1.2.1 Xcode 6介紹 3 1.2.2 下載并安裝Xcode 6 5 1.3 使用Xcode開發環境 8 1.3.1 改變公司名稱 8 1.3.2 通過搜索框縮小文件范圍 10 1.3.3 格式化代碼 10 1.3.4 代碼縮進和自動完成 11 1.3.5 文件內查找和替換 12 1.3.6 快速定位到代碼行 14 1.3.7 快速打開文件 15 1.3.8 使用書簽 16 1.3.9 自定義導航條 17 1.3.10 使用Xcode幫助 18 1.3.11 調試代碼 19 1.4 啟動iOS 8模擬器 21 第2章 千里之行,始于足下——Swift語言基礎 24 2.1 第一段Swift程序 24 2.2 簡單值 30 2.3 流程控制 31 2.4 函數和閉包 34 2.5 對象和類 36 2.6 枚舉和結構體 38 2.7 協議和擴展 40 2.8 泛型 41 第3章 新語言,新特性——Swift的基礎語法 43 3.1 分號 43 3.2 空白 43 3.3 標識符和關鍵字 44 3.3.1 標識符 44 3.3.2 關鍵字 45 3.4 常量和變量 45 3.4.1 聲明常量和變量 45 3.4.2 聲明變量 46 3.4.3 輸出常量和變量 49 3.4.4 標注類型 50 3.4.5 常量和變量的命名規則 51 3.5 注釋 52 3.5.1 注釋的規則 52 3.5.2 使用注釋的注意事項 53 3.6 數據類型 54 3.6.1 數據類型的分類 55 3.6.2 類型安全和類型推斷 55 3.6.3 類型注解 56 3.6.4 類型標識符 56 3.6.5 元組類型 57 3.6.6 函數類型 57 3.6.7 數組類型 58 3.6.8 可選類型 58 3.6.9 隱式解析可選類型 59 3.6.10 協議合成類型 59 3.6.11 元類型 60 3.6.12 類型繼承子句 60 3.6.13 類型推斷 61 3.7 最基本的數值類型 61 3.7.1 整數 61 3.7.2 浮點數 63 3.8 字面量 64 3.8.1 數值型字面量 64 3.8.2 整型字面量 65 3.8.3 浮點型字面量 66 3.8.4 文本型字面量 67 3.9 數值型類型轉換 68 3.9.1 整數轉換 68 3.9.2 整數和浮點數轉換 69 3.10 類型別名 70 3.11 布爾值 71 3.12 元組 72 3.13 可選類型 73 3.13.1 if 語句以及強制解析 74 3.13.2 可選綁定 75 3.13.3 nil 76 3.13.4 隱式解析可選類型 76 3.14 斷言 77 3.14.1 使用斷言進行調試 77 3.14.2 何時使用斷言 78 第4章 運算符 83 4.1 運算符概述 83 4.2 賦值運算符 84 4.2.1 基本賦值運算符 84 4.2.2 復合賦值運算符 85 4.3 算術運算符 86 4.3.1 一元運算符 86 4.3.2 二元運算符 88 4.3.3 求余運算 89 4.3.4 浮點數求余計算 90 4.4 比較運算符(關系運算符) 91 4.5 三元條件運算 93 4.6 區間運算符 94 4.6.1 閉區間運算符 95 4.6.2 半閉區間運算符 95 4.7 邏輯運算 96 4.7.1 邏輯非 97 4.7.2 邏輯與 97 4.7.3 邏輯或 97 4.7.4 組合邏輯 98 4.7.5 使用括號設置運算優先級 98 4.8 位運算符 99 4.8.1 按位取反運算符 99 4.8.2 按位與運算符 100 4.8.3 按位或運算符 101 4.8.4 按位異或運算符 102 4.8.5 按位左移/右移運算符 103 4.9 溢出運算符 107 4.10 運算符函數 110 4.10.1 前置和后置運算符 110 4.10.2 組合賦值運算符 111 4.10.3 比較運算符 112 4.11 自定義運算符 113 4.12 運算符的優先級和結合性 113 第5章 字符串和字符 117 5.1 字符和字符串基礎 117 5.2 字符串字面量 118 5.3 初始化空字符串 119 5.4 字符串可變性 120 5.5 字符串是值類型 121 5.6 字符串遍歷 121 5.7 計算字符數量 122 5.8 連接字符串和字符 123 5.9 字符串插值 125 5.10 比較字符串 125 5.10.1 字符串相等 125 5.10.2 前綴/后綴相等 125 5.10.3 大寫和小寫字符串 127 5.11 國際標準Unicode 128 5.11.1 Unicode 術語 128 5.11.2 字符串的Unicode表示 128 5.11.3 UTF-8 129 5.11.4 UTF-16 129 5.11.5 Unicode 標量 129 第6章 表達式 132 6.1 前綴表達式 132 6.2 二元表達式 132 6.3 賦值表達式 134 6.4 三元條件運算符 135 6.5 類型轉換運算符 135 6.6 主表達式 136 6.6.1 字符型表達式 136 6.6.2 self表達式 136 6.6.3 超類表達式 137 6.6.4 閉包表達式 137 6.6.5 隱式成員表達式 138 6.6.6 圓括號表達式 138 6.6.7 通配符表達式 139 6.7 后綴表達式 139 6.7.1 函數調用表達式 139 6.7.2 初始化函數表達式 139 6.7.3 顯式成員表達式 140 6.7.4 后綴self表達式 140 6.7.5 動態表達式 140 6.7.6 下標腳本表達式 141 6.7.7 強制取值表達式 141 6.7.8 可選鏈表達式 141 第7章 集合類型 143 7.1 數組 143 7.1.1 定義數組 143 7.1.2 數組構造語句 144 7.1.3 訪問和修改數組 145 7.1.4 數組的遍歷 148 7.1.5 創建并且構造一個數組 149 7.2 字典 152 7.2.1 字典字面量 152 7.2.2 讀取和修改字典 153 7.2.3 字典遍歷 157 7.2.4 創建一個空字典 159 7.3 集合的可變性 160 第8章 語句和流程控制 163 8.1 Swift語句概述 163 8.1.1 循環語句 163 8.1.2 分支條件語句 167 8.1.3 帶標簽的語句 172 8.1.4 控制傳遞語句 172 8.2 for循環 173 8.2.1 for-in 173 8.2.2 for條件遞增 175 8.3 while循環 177 8.3.1 while 177 8.3.2 do-while 179 8.4 條件語句 181 8.4.1 if語句 181 8.4.2 switch 182 8.4.3 不存在隱式的貫穿 183 8.4.4 區間匹配 184 8.4.5 元組 185 8.4.6 值綁定 185 8.4.7 where 186 8.5 控制轉移語句 187 8.5.1 continue 187 8.5.2 break 188 8.5.3 貫穿(Fallthrough) 190 8.5.4 帶標簽的語句(Labeled Statements) 191 第9章 函數 193 9.1 函數的分類 193 9.1.1 從函數定義的角度劃分 193 9.1.2 從是否有返回值角度劃分 193 9.1.3 從是否有參數角度劃分 194 9.1.4 庫函數 194 9.2 函數的定義 194 9.2.1 無參函數的定義 195 9.2.2 有參函數的定義 195 9.3 函數聲明 196 9.3.1 函數聲明的格式 196 9.3.2 聲明中的參數名 197 9.3.3 聲明中的特殊類型參數 199 9.4 函數調用 199 9.4.1 調用函數的格式 199 9.4.2 函數調用的方式 201 9.5 函數參數 202 9.5.1 多重輸入參數 202 9.5.2 無參函數 203 9.5.3 無返回值函數 203 9.6 返回值 204 9.7 函數參數的名稱 205 9.7.1 外部參數名 206 9.7.2 簡寫外部參數名 206 9.7.3 默認參數值 207 9.7.4 默認值參數的外部參數名 207 9.7.5 可變參數 208 9.7.6 常量參數和變量參數 208 9.7.7 輸入/輸出參數 209 9.8 函數類型 210 9.8.1 使用函數類型 211 9.8.2 函數類型作為參數類型 211 9.8.3 函數類型作為返回類型 213 9.9 嵌套函數 214 9.10 函數和閉包 215 9.11 內置庫函數 218 第10章 閉包 225 10.1 閉包表達式 225 10.1.1 sort 函數 226 10.1.2 閉包表達式語法 227 10.1.3 根據上下文推斷類型 229 10.1.4 單表達式閉包隱式返回 229 10.1.5 參數名稱的縮寫 230 10.1.6 運算符函數 230 10.2 閉包的簡寫方式 230 10.3 尾隨閉包 231 10.4 捕獲值 234 10.5 閉包是引用類型 235 第11章 枚舉 237 11.1 枚舉基礎 237 11.2 枚舉語法 238 11.3 匹配枚舉值和switch語句 240 11.4 相關值 241 11.5 原始值 243 第12章 類 247 12.1 類和結構體基礎 247 12.1.1 定義類和結構體 248 12.1.2 聲明結構體字段 249 12.2 類的成員 250 12.2.1 最簡單的數據成員 250 12.2.2 最重要的函數成員 251 12.3 結構體成員 252 12.3.1 字段 252 12.3.2 函數 253 12.3.3 屬性 253 12.4 類和結構體實例 254 12.5 類的繼承 255 12.5.1 類的層次結構 255 12.5.2 繼承概述 256 12.5.3 定義子類 257 12.5.4 重寫 259 12.5.5 繼承規則 263 12.6 屬性訪問 265 12.7 結構體和枚舉是值類型 267 12.8 類是引用類型 268 12.8.1 恒等運算符 269 12.8.2 指針 269 12.9 類和結構體的選擇 269 12.10 集合類型的賦值和復制行為 270 12.10.1 字典類型的賦值和拷貝行為 270 12.10.2 數組的賦值和復制行為 271 12.10.3 確保數組的唯一性 272 12.10.4 判定兩個數組是否共用相同元素 272 12.10.5 強制復制數組 273 第13章 構造函數和析構函數 274 13.1 構造函數概述 274 13.1.1 結構體中的構造函數 275 13.1.2 類中的構造函數 277 13.2 構造過程詳解 279 13.2.1 為存儲型屬性賦初始值 280 13.2.2 定制化構造過程 281 13.2.3 默認構造器 283 13.2.4 值類型的構造器代理 284 13.2.5 類的繼承和構造過程 286 13.2.6 通過閉包和函數來設置屬性的默認值 293 13.3 析構函數 295 13.3.1 析構過程原理 295 13.3.2 析構函數操作 296 13.4 綜合演練 298 第14章 屬性 308 14.1 屬性的種類 308 14.2 常用的聲明屬性 308 14.3 類型屬性 310 14.4 存儲屬性 310 14.4.1 常量和存儲屬性 311 14.4.2 懶惰儲存屬性 311 14.4.3 延遲存儲屬性 312 14.4.4 存儲屬性和實例變量 313 14.5 計算屬性 314 14.5.1 基本操作 314 14.5.2 setter聲明的簡略寫法 314 14.5.3 便捷 setter 聲明 315 14.5.4 只讀計算屬性 315 14.6 屬性監視器 318 14.7 全局變量和局部變量 319 14.8 類型屬性 320 14.8.1 類型屬性語法 320 14.8.2 獲取和設置類型屬性的值 321 第15章 方法 323 15.1 實例方法 323 15.1.1 方法的局部參數名稱和外部參數名稱 324 15.1.2 self屬性 325 15.1.3 在實例方法中修改值類型 326 15.1.4 在變異方法中給self賦值 327 15.2 類型方法 328 第16章 下標腳本 331 16.1 下標腳本語法 331 16.2 下標腳本用法 332 16.3 下標腳本選項 333 第17章 自動引用計數 338 17.1 iOS ARC的背景 338 17.2 Swift ARC的工作機制 338 17.3 自動引用計數實踐 339 17.4 類實例之間的循環強引用 341 17.5 解決實例之間的循環強引用 345 17.5.1 弱引用 345 17.5.2 無主引用 351 17.5.3 無主引用以及隱式解析可選屬性 353 17.6 閉包引起的循環強引用 358 17.7 解決閉包引起的循環強引用 362 17.7.1 定義捕獲列表 363 17.7.2 弱引用和無主引用 363 第18章 泛型 365 18.1 泛型所解決的問題 365 18.2 泛型函數 367 18.3 類型參數 368 18.4 命名類型參數 371 18.5 泛型類型 371 18.6 類型約束 374 18.6.1 類型約束語法 374 18.6.2 類型約束行為 374 18.7 關聯類型 376 18.7.1 關聯類型行為 376 18.7.2 擴展一個存在的類型為一指定關聯類型 378 18.8 where語句 378 第19章 可選鏈 380 19.1 可選鏈可替代強制解析 380 19.2 為可選鏈定義模型類 381 19.3 通過可選鏈調用屬性 383 19.4 通過可選鏈調用方法 383 19.5 使用可選鏈調用子腳本 383 19.6 連接多層鏈接 384 19.7 鏈接可選返回值的方法 385 第20章 類型檢查和嵌套類型 386 20.1 定義一個類層次作為例子 386 20.2 檢查類型(Checking Type) 387 20.3 向下轉型(Downcasting) 388 20.4 Any和AnyObject的類型轉換 389 20.4.1 AnyObject類型 389 20.4.2 Any類型 390 20.5 嵌套類型 391 20.5.1 嵌套類型實例 391 20.5.2 嵌套類型的引用 392 第21章 混編開發 393 21.1 在同一個工程中使用Swift和Objective-C 393 21.1.1 Mix and Match概述 393 21.1.2 在同一個應用的target中導入 394 21.1.3 在同一個框架的target中導入 395 21.1.4 導入外部框架 396 21.1.5 在Objective-C中使用Swift 396 21.1.6 實戰演練Swift與Objective-C的相互調用 397 21.2 Swift調用C函數 399 21.2.1 調用簡單的C函數 399 21.2.2 增加一個C鍵盤輸入函數 403 21.3 Swift調用C函數的綜合演練 405 第22章 擴展 409 22.1 擴展語法 409 22.2 計算型屬性 410 22.3 構造器 411 22.4 擴展方法 412 22.5 下標 413 22.6 嵌套類型 415 22.7 擴展字符串截取方法 416 22.7.1 演示擴展字符串的用法 416 22.7.2 使用Swift String擴展截取字符串 417 22.8 在iOS項目中使用擴展 419 22.9 用Swift編寫UITextField擴展 430 第23章 協議 438 23.1 協議的語法 438 23.2 對屬性的規定 440 23.3 對方法的規定 441 23.4 對突變方法的規定 442 23.5 協議類型 443 23.6 委托模式 444 23.7 在擴展中添加協議成員 446 23.8 通過擴展補充協議聲明 447 23.9 集合中的協議類型 448 23.10 協議的繼承 448 23.11 協議合成 449 23.12 檢驗協議的一致性 449 23.13 對可選協議的規定 451 第24章 Sprite Kit游戲開發 453 24.1 Sprite Kit框架基礎 453 24.1.1 Sprite Kit的優點和缺點 453 24.1.2 Sprite Kit、Cocos2D、Cocos2D-X和Unity的選擇 453 24.2 開發一個Flappy Bird游戲 454 24.3 開發一個iPad飛行游戲(基于Swift) 462 24.3.1 新建工程 462 24.3.2 載入有云的天空的動畫 462 24.3.3 實現二維飛行界面 468 24.3.4 生成發射子彈視圖 468 24.3.5 定義敵人類 469 24.4 開發一個方塊游戲 471 Swift是蘋果公司在WWDC2014大會上發布的一門全新的編程語言,用于編寫OS X和iOS應用程序。《Swift開發實戰》共分24章,循序漸進地講解了Swift語言的基本知識及實戰技術。《Swift開發實戰》從Swift語言基礎講起,依次講解了Swift的語法、運算符、字符串和字符、表達式、集合類型、語句和流程控制、函數、閉包、枚舉、類、構造函數和析構函數、屬性、方法、下標腳本、自動引用計數、泛型、可選鏈、類型檢查和嵌套類型、混編開發、擴展、協議、Sprite Kit游戲開發等知識。《Swift開發實戰》幾乎涵蓋了Swift語言的全部內容,講解通俗易懂,特別適合初學者學習。
《Swift開發實戰》適合Swift初學者、iOS愛好者、iPhone應用開發人員、iPad應用開發人員、iOS應用開發人員學習,也可以作為相關培訓學校和大專院校相關專業的教學用書。 |