Swift語言實戰入門

Swift語言實戰入門

《Swift語言實戰入門》以Swift語言的基礎知識和實戰技巧為主要內容,佐以大量的實例和圖片進行講解。全書內容分為三大部分,共11章節。第一大部分講述Swift語言的基礎知識和語法,第二大部分講解開發框架和庫的相關內容,第三大部分集中講解以2048遊戲為例的實戰演練,從入門到實戰層層遞進。本書注重實戰,秉承著學以致用的原則,讓讀者真正看後能夠實際操作。120個代碼清單全部共享,配套教學視頻線上收看,全方位的學習體驗,讓你成為掌握Swift語言的領頭羊。

基本介紹

  • 書名:Swift語言實戰入門
  • 又名: Swift從入門到精通
  • 作者: 伍星 / 羅飛 / 劉志華 / 王浩力 / 劉蕾 
  • ISBN: 9787115369901
  • 頁數:512
  • 定價:79
  • 出版社: 人民郵電出版社
  • 出版時間:2014-10-23
  • 裝幀:平裝
內容簡介,作者簡介,目錄,

內容簡介

《Swift語言實戰入門》以Swift語言的基礎知識和實戰技巧為主要內容,佐以大量的實例和圖片進行講解。全書內容分為三大部分,共11章節。第一大部分講述Swift語言的基礎知識和語法,第二大部分講解開發框架和庫的相關內容,第三大部分集中講解以2048遊戲為例的實戰演練,從入門到實戰層層遞進。本書注重實戰,秉承著學以致用的原則,讓讀者真正看後能夠實際操作。120個代碼清單全部共享,配套教學視頻線上收看,全方位的學習體驗,讓你成為掌握Swift語言的領頭羊。

作者簡介

本書寫作小組成員包括:優才網CEO伍星、競鹿CTO羅飛、優才網教學總監劉志華、軟體工程師王浩力、iOS開發工程師劉蕾。

目錄

第1章 歡迎來到Swift語言的世界 1
1.1 起源 2
1.2 什麼是Swift語言 3
1.3 特性 3
1.3.1 高級 3
1.3.2 易上手 4
1.3.3 兼容性 4
1.3.4 運行效率 4
1.3.5 運行時(Runtime) 5
1.3.6 可混編 5
1.3.7 開發工具 5
1.4 搭建Swift開發環境 5
1.4.1 Mac OS簡介 6
1.4.2 Mac OS 下載安裝 6
1.4.3 下載並安裝Xcode 9
1.4.4 iOS開發者計畫 11
1.5 熟悉Xcode及模擬器環境 11
1.5.1 升級和改變 11
1.5.2 第一個Swift語言程式 12
1.5.3 原始碼檔案基本組成 15
1.5.4 Xcode集成開發環境 16
1.5.5 iOS模擬器 17
1.5.6 體驗Playground 18
1.6 Apple產品歷史 20
1.7 小結 21
第2章 Swift基礎語法 22
2.1 語法入門 22
2.1.1 變數與常量 23
2.1.2 整型 24
2.1.3 浮點型 25
2.1.4 布爾型 26
2.1.5 字元串和字元 27
2.1.6 可選(optional) 34
2.1.7 元組 37
2.1.8 類型別名 38
2.1.9 類型轉換 38
2.1.10 斷言(assertion) 40
2.2 運算符 42
2.2.1 基礎運算符 42
2.2.2 高級運算符 50
2.2.3 自定義運算符 55
2.2.4 運算符優先權和結合性 55
2.3 複雜數據類型 57
2.3.1 數組 57
2.3.2 字典 59
2.3.3 結構體 59
2.3.4 枚舉 61
2.4 控制流 62
2.4.1 條件結構 62
2.4.2 值綁定(Value Bindings) 66
2.4.3 循環結構 67
2.4.4 控制轉向語句 71
2.5 函式 74
2.5.1 函式的定義和調用 74
2.5.2 函式的形參和返回值 75
2.6 閉包 78
2.6.1 什麼是閉包 79
2.6.2 trailing閉包 80
2.6.3 捕獲 81
2.7 表達式 81
2.7.1 基本表達式 81
2.7.2 前綴表達式和後綴表達式 82
2.7.3 表達式解析 84
2.8 小結 86
第3章 Swift面向對象編程基礎 87
3.1 面向對象編程簡介 87
3.1.1 面向對象編程的基本概念 90
3.1.2 面向對象編程的特點 92
3.1.3 為什麼要使用面向對象編程 93
3.1.4 Swift語言中的面向對象概覽 94
3.2 類、方法、屬性介紹 94
3.2.1 編寫第一個類 94
3.2.2 屬性 96
3.3 方法 108
3.3.1 實例方法 108
3.3.2 類型方法 109
3.3.3 初始化方法和反初始化方法 111
3.3.4 下標腳本 118
3.4 枚舉、類與結構體的對比 121
3.4.1 枚舉與其他兩者的關係 121
3.4.2 類與結構體的關係 122
3.5 小結 124
第4章 Swift語言的語法高級特性 125
4.1 高級面向對象特性 125
4.1.1 繼承 125
4.1.2 多態 130
4.1.3 封裝 134
4.2 面向對象的高級用法 136
4.2.1 類擴展 136
4.2.2 協定 140
4.2.3 類組合 144
4.3 可選鏈 147
4.3.1 可選概念回顧 147
4.3.2 可選鏈 149
4.3.3 多級可選鏈 150
4.4 泛型 150
4.5 小結 154
第5章 Swift語言操作Cocoa底層庫 155
5.1 Cocoa開發體系 155
5.1.1 Core OS層 156
5.1.2 Core Service層 156
5.1.3 媒體層 157
5.1.4 UIKit層 158
5.2 Swift語言調用Objective-C 158
5.3 字元串 160
5.3.1 NSString與String互相轉換 160
5.3.2 拆分字元串 161
5.3.3 查找字元串 162
5.4 數字 163
5.5 數組 165
5.5.1 NSArray與Array的互相轉換 165
5.5.2 NSArray的初始化方法 166
5.5.3 NSArray的常用屬性和方法 167
5.6 詞典 170
5.6.1 Dictionary和NSDictionary互相轉換 170
5.6.2 NSDictionay的初始化方法 171
5.6.3 NSDictionary常用的屬性和方法 171
5.7 集 173
5.7.1 初始化 173
5.7.2 常用屬性和方法 174
5.7.3 集合元素計數 176
5.8 數據存儲NSData 177
5.8.1 創建NSData 177
5.8.2 訪問數據 178
5.8.3 位元組數據與Base64編碼字元串相互轉換 179
5.8.4 位元組數據存儲 180
5.8.5 NSMutableData 181
5.9 檔案 182
5.9.1 套用的目錄結構 183
5.9.2 訪問檔案 184
5.9.3 NSURL和NSURLComponents 185
5.9.4 NSFileManager 192
5.9.5 NSFileHandle 200
5.9.6 NSBundle 203
5.10 小結 207
第6章 Swift與Objective-C的互操作 208
6.1 Swift與Objective-C介紹 208
6.1.0 互操作簡介 208
6.2 簡單的互操作實踐 208
6.2.1 Swift中調用Objective- C代碼 209
6.2.2 Swift中調用C代碼 213
6.2.3 Swift項目中的Objective- C代碼調用Swift代碼 214
6.2.4 Objective- C項目中調用Swift代碼 219
6.3 Objective-C代碼庫的調用 220
6.3.1 理解框架代碼相互調用過程 220
6.3.2 KKColorListPicker庫的調用 221
6.3.3 SQLite3的引用 224
6.3.4 在Swift項目中引入GDataXML或DDXML 231
6.3.5 JSON解析及JSONKit的引用 235
6.4 Objective-C項目到Swift項目的遷移 238
6.5 小結 247
第7章 普通UI控制項的開發:UIKit第一部分 248
7.1 標籤(UILabel) 248
7.1.1 標籤的創建 248
7.1.2 背景顏色和文字顏色的設定 248
7.1.3 對齊方式的設定 249
7.1.4 文字陰影設定 249
7.1.5 字型的設定 250
7.1.6 文字的省略方式 250
7.1.7 文字的自動調整 251
7.1.8 多行字元串 251
7.2 按鈕(UIButton) 251
7.2.1 按鈕的創建 251
7.2.2 按鈕的文字、顏色和狀態 252
7.2.3 按鈕的圖片 253
7.2.4 按鈕的觸摸事件 254
7.3 文本框(UITextField) 255
7.3.1 文本框的創建 255
7.3.2 設定文本樣式 255
7.3.3 鍵盤設定 256
7.3.4 清除按鈕 258
7.3.5 背景設定 259
7.4 多行文本控制項(UITextView) 259
7.4.1 創建多行文本控制項 259
7.4.2 設定文字 259
7.4.3 游標和選擇範圍 260
7.4.4 委託事件 261
7.5 開關按鈕(UISwitch) 262
7.6 選擇控制項(UISegmentedControl) 263
7.6.1 選擇控制項的創建 263
7.6.2 選擇控制項基本設定 264
7.6.3 選擇控制項選項的插入和刪除 264
7.6.4 選擇控制項獲得選擇的值 264
7.7 圖像控制項(UIImageView) 265
7.7.1 圖片的顯示 265
7.7.2 使用圖像控制項實現動畫 266
7.8 進度條(UIProgressView) 267
7.9 滑塊(UISlider) 268
7.9.1 滑塊的創建 268
7.9.2 滑塊的值通知機制 269
7.9.3 制定滑塊樣式 269
7.10 警告框(UIAlertView)與操作表(UIActionSheet) 270
7.10.1 警告框的使用 270
7.10.2 警告框的委託事件 272
7.10.3 操作表的使用 272
7.10.4 操作表的委託事件 273
7.11 選擇框(UIPickerView) 274
7.11.1 建立選擇框 274
7.11.2 調整選擇框的尺寸 277
7.11.3 選擇框選項內容 278
7.11.4 檢測行的選擇狀態 278
7.12 微調器(UIStepper) 279
7.12.1 微調器的基本設定 279
7.12.2 微調器的外觀設定 280
7.13 滾動視圖(UIScrollView) 281
7.13.1 滾動視圖的創建 281
7.13.2 放大縮小 282
7.13.3 頁單位的滾動 283
7.14 加速度感測器(CoreMotion) 285
7.14.1 加速度感測器介紹 285
7.14.2 使用加速度感測器實現滾球效果 286
7.15 各種手勢檢測(UIGestureRecognizer以及具體識別器) 288
7.15.1 UIGestureRecognizer的基本用法 288
7.15.2 UITapGestureRecognizer 輕點手勢 290
7.15.3 UIPinchGestureRecognizer 捏合手勢 290
7.15.4 UIRotationGestureRecognizer旋轉手勢 291
7.15.5 UIPanGestureRecognizer拖動手勢 291
7.16 小結 292
第8章 高級UI:UIKit第二部分 293
8.1 日期選擇器(UIDatePicker) 293
8.1.1 控制項介紹 293
8.1.2 UIDatePicker 時間日期顯示實例 294
8.1.3 UIDatePicker倒計時顯示實例 297
8.2 網頁控制項(UIWebView) 301
8.2.1 UIWebView控制項詳解 301
8.2.2 UIWebView基本實例 303
8.2.3 UIWebView 瀏覽器實例 306
8.3 工具條(UIToolbar) 309
8.3.1 工具條控制項介紹 309
8.3.2 工具條控制項操作實例 310
8.3.3 自製小型瀏覽器 311
8.4 表格(UITableView) 317
8.4.1 UITableView介紹 317
8.4.2 表格控制項簡單示例 319
8.4.3 表格控制項屬性詳解 322
8.4.4 自定義單元格詳解 330
8.4.5 表格的編輯 348
8.4.6 類微信聊天界面的設計 351
8.5 搜尋條(UISearchBar) 359
8.5.1 控制項介紹 359
8.5.2 搜尋條簡單示例 360
8.5.3 搜尋條屬性 364
8.5.4 利用UISearchDisplayController 364
8.6 導航條(UINavigationBar)與導航條控制器
(UINavigationController) 369
8.6.1 導航介紹 369
8.6.2 導航條示例 369
8.6.3 使用segue圖形化設計導航 376
8.7 格線(UICollectionView)與格線控制器
(UICollectionViewController) 378
8.7.1 格線介紹 378
8.7.2 格線屬性 378
8.7.3 流布局簡單示例 379
8.7.4 自定義布局實現複雜界面 380
8.8 標籤條(UITabBar)與標籤頁控制器(UITabBarController) 386
8.8.1 標籤頁介紹 386
8.8.2 使用storyboard設計標籤頁 386
8.8.3 代碼實現標籤頁 388
8.9 頁控制項(UIPageControl)與頁控制器(UIPageViewController) 390
8.9.1 頁控制項介紹 390
8.9.2 UIPageControl與UIScrollView結合使用 390
8.9.3 UIPageViewController實現翻頁 393
8.10 故事板(UIStoryboard) 397
8.10.1 故事板介紹 397
8.10.2 故事板設計 398
8.10.3 故事板編程 399
8.11 分割視圖控制器(UISplitViewController) 400
8.11.1 分割視圖控制器介紹 400
8.11.2 分割視圖控制器示例 401
8.11.3 開發兼容的iOS套用 403
8.12 UIActivity分享 404
8.12.1 UIActivity介紹 404
8.12.2 定製UIActivity分享 405
8.13 小結 407
第9章 2048遊戲實戰開發 408
9.1 編寫遊戲界面 408
9.1.1 入口界面 409
9.1.2 遊戲主界面 411
9.1.3 遊戲設定界面 418
9.2 建立遊戲模型 422
9.2.1 遊戲模型簡介 422
9.2.2 遊戲數據的存儲 423
9.2.3 遊戲數據的變更 429
9.3 遊戲效果實現 435
9.3.1 閃現數字的動畫 435
9.3.2 數字回響方向重排 439
9.3.3 合併數字實現與動畫 448
9.4 遊戲個性化設定 454
9.4.1 本地資料庫的建立 454
9.4.2 個性化數據的保存 458
9.4.3 遠程保存最高分 462
9.5 其他實戰項目相關內容 468
9.5.1 項目屬性介紹 468
9.5.2 套用圖示和啟動界面的設定 472
9.5.3 新手引導的製作 476
9.6 小結 479
第10章 程式模型與事件機制 480
10.1 MVC模式 480
10.1.1 MVC介紹 48110.1.2 MVC在iOS開發中的具體使用 482
10.1.3 MVC在Swift 2048項目中體現 483
10.2 事件機制 484
10.2.1 iOS事件機制介紹 484
10.2.2 iOS開發事件的傳遞機制 487
10.3 簡單設計模式 488
10.3.1 設計模式簡介 489
10.3.2 常見設計模式 489
10.3.3 Swift 2048所用的模式 490
10.4 小結 491
第11章 真機測試及發布上架 492
11.1 真機測試 492
11.2 開發上架 495
11.2.1 生成發布到App Store的證書 495
11.2.2 到iTunes Connect網站提交套用說明 501
11.2.3 套用簽名和打包 505
11.3 小結 511
後記 512

相關詞條

熱門詞條

聯絡我們