|
-- 會員 / 註冊 --
|
|
|
|
Objective-C應用開發全程實錄 ( 簡體 字) |
作者:李梓萌 | 類別:1. -> 程式設計 -> 手機程式 -> iPhone |
譯者: |
出版社:人民郵電出版社 | 3dWoo書號: 46385 詢問書籍請說出此書號!【缺書】 NT售價: 495 元 |
出版日:2/1/2017 |
頁數:634 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787115437204 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介: 本書共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開發人員學習,也可以作為相關培訓學校和大專院校相關專業的教學用書。
|
目錄:第一篇 基礎知識 第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實現程序設計的結構化 417 19.2 Xcode中的MVC 418 19.2.1 基本原理 418 19.2.2 MVC的模板 418 19.3 在Xcode中實現MVC 419 19.3.1 視圖 419 19.3.2 視圖控制器 419 19.4 數據模型 420 19.5 實戰演練——使用Single View Application模板 421 19.5.1 創建項目 422 19.5.2 規劃變量和連接 425 19.5.3 設計界面 426 19.5.4 創建并連接輸出口和操作 427 19.5.5 實現應用程序邏輯 430 19.5.6 生成應用程序 431 第20章 基礎控件介紹 432 20.1 文本框 432 20.1.1 實戰演練——實現用戶登錄界面 432 20.1.2 實戰演練——限制輸入文本的長度 433 20.2 文本視圖 434 20.2.1 實戰演練——拖動輸入的文本 434 20.2.2 實戰演練——關閉虛擬鍵盤的輸入動作 435 20.3 標簽 436 20.3.1 實戰演練——使用標簽顯示一段文本 436 20.3.2 實戰演練——復制標簽中的文本 437 20.4 按鈕 439 20.4.1 實戰演練——自定義按鈕的圖案 440 20.4.2 實戰演練——實現豐富多彩的控制按鈕 442 20.5 滑塊控件 443 20.5.1 實戰演練——實現自動顯示刻度的滑動條 443 20.5.2 實戰演練——實現帶刻度的滑動條 446 20.6 實戰演練——設置指定樣式的步進控件 447 20.7 圖像視圖控件 451 20.7.1 實戰演練——實現圖片瀏覽器 452 20.7.2 實戰演練——實現幻燈片播放器效果 454 20.8 開關控件 455 20.8.1 實戰演練——改變開關控件的文本和顏色 455 20.8.2 實戰演練——創建并使用開關控件 457 20.9 分段控件 458 20.9.1 實戰演練——分段控件的使用 458 20.9.2 實戰演練——使用分段控件控制背景顏色 460 20.10 工具欄 461 20.10.1 實戰演練——自定義工具欄控件的顏色和樣式 461 20.10.2 實戰演練——自定義工具欄 465 20.11 選擇器視圖 466 20.11.1 實戰演練——實現兩個選擇器視圖控件間的數據依賴 466 20.11.2 實戰演練——實現單列選擇器 468 20.12 日期選擇控件 470 20.12.1 實戰演練——使用日期選擇器自動選擇時間 470 20.12.2 實戰演練——在屏幕中顯示日期選擇器 471 第21章 Web視圖控件、可滾動視圖控件和翻頁控件 473 21.1 Web視圖 473 21.1.1 實戰演練——在Web視圖控件中調用JavaScript腳本 473 21.1.2 實戰演練——實現一個迷你瀏覽器 475 21.2 可滾動的視圖 477 21.2.1 實戰演練——可滾動視圖控件的使用 477 21.2.2 實戰演練——通過滾動屏幕的方式瀏覽信息 478 21.3 翻頁控件 480 21.3.1 翻頁控件基礎 480 21.3.2 實戰演練——自定義翻頁控件的的外觀樣式 481 第22章 提醒、操作表和表視圖 483 22.1 提醒視圖 483 22.1.1 實戰演練——自定義提醒控件的外觀 483 22.1.2 實戰演練——實現帶輸入框的提示框 486 22.2 操作表 488 22.2.1 實戰演練——使用操作表控件定制按鈕面板 488 22.2.2 實戰演練——實現圖片選擇器 489 22.3 使用表視圖 491 22.3.1 實戰演練——拆分表視圖 491 22.3.2 實戰演練——實現圖文樣式聯系人列表效果 493 第23章 活動指示器、進度條和檢索控件 495 23.1 活動指示器 495 23.1.1 實戰演練——實現不同外觀的活動指示器 495 23.1.2 實戰演練——實現環形進度條效果 496 23.2 進度條 498 23.2.1 實戰演練——自定義外觀樣式的進度條 498 23.2.2 實戰演練——實現多個具有動態條紋背景的進度條 501 23.3 檢索條 504 23.3.1 實戰演練——使用檢索控件快速搜索信息 504 23.3.2 實戰演練——使用UISearchDisplayController實現搜索功能 507 第24章 UIView和視圖控制器詳解 510 24.1 UIView基礎 510 24.1.1 UIView的結構 510 24.1.2 視圖架構 512 24.1.3 實戰演練——給任意UIView視圖的4條邊框加上陰影 513 24.2 實戰演練——使用導航控制器手動旋轉屏幕 515 24.3 使用UINavigationController 517 24.3.1 UINavigationController詳解 517 24.3.2 實戰演練——實現界面導航條功能 518 24.4 選項卡欄控制器 521 24.4.1 實戰演練——使用動態單元格定制表格行 521 24.4.2 實戰演練——使用Segue實現過渡效果 523 第25章 UICollectionView和UIVisualEffectView控件 525 25.1 UICollectionView控件詳解 525 25.1.1 UICollectionView的構成 525 25.1.2 實現簡單的UICollectionView 526 25.1.3 自定義UICollectionViewLayout 529 25.1.4 實戰演練——使用UICollectionView控件實現網格效果 529 25.2 UIVisualEffectView控件詳解 532 25.2.1 UIVisualEffectView基礎 532 25.2.2 使用VisualEffectView控件實現模糊特效 534 25.2.3 使用VisualEffectView實現Vibrancy效果 534 25.2.4 實戰演練——在屏幕中實現模糊效果 536 第六篇 典型應用 第26章 圖形、圖像、圖層和動畫 540 26.1 圖形處理 540 26.1.1 實戰演練——在屏幕中繪制三角形 540 26.1.2 實戰演練——繪制幾何圖形 542 26.2 圖像處理 543 26.2.1 實戰演練——在屏幕中繪制圖像 544 26.2.2 實戰演練——實現對圖片的旋轉和縮放 545 26.3 圖層 545 26.3.1 視圖和圖層 546 26.3.2 實戰演練——實現圖片、文字及其翻轉效果 546 26.4 實現動畫 547 26.4.1 實戰演練——使用動畫樣式顯示電量使用情況 547 26.4.2 實戰演練——使用屬性動畫 550 第27章 多媒體應用 553 27.1 訪問聲音服務 553 27.1.1 聲音服務基礎 553 27.1.2 實戰演練——播放聲音文件 554 27.2 提醒和振動 557 27.2.1 播放提醒音 558 27.2.2 實戰演練——使用iOS的提醒功能 558 27.3 Media Player框架 566 27.3.1 Media Player框架中的類 567 27.3.2 實戰演練——使用Media Player播放視頻 567 27.4 AV Foundation框架 570 27.4.1 準備工作 571 27.4.2 實戰演練——使用AV Foundation框架播放視頻 571 27.5 圖像選擇器 574 27.5.1 使用圖像選擇器 574 27.5.2 實戰演練——獲取圖片并縮放 575 第28章 定位處理 580 28.1 Core Location框架 580 28.1.1 Core Location基礎 580 28.1.2 使用流程 580 28.2 獲取位置 582 28.2.1 位置管理器委托 583 28.2.2 獲取航向 584 28.3 地圖功能 585 28.3.1 Map Kit基礎 585 28.3.2 為地圖添加標注 586 28.4 實戰演練——定位當前的位置信息 587 第29章 觸摸、手勢識別和Force Touch 590 29.1 多點觸摸和手勢識別基礎 590 29.2 觸摸處理 590 29.2.1 觸摸事件和視圖 591 29.2.2 iOS中的手勢操作 595 29.2.3 實戰演練——觸摸的方式移動視圖 596 29.3 手勢處理 597 29.4 Force Touch技術 602 29.4.1 Force Touch介紹 602 29.4.2 Force Touch API介紹 603 29.4.3 實戰演練——使用Force Touch 604 第30章 Touch ID詳解 607 30.1 初步認識Touch ID 607 30.2 開發Touch ID應用程序 609 30.2.1 Touch ID的官方資料 609 30.2.2 實戰演練——Touch ID認證綜合應用 609 第31章 游戲開發 616 31.1 Sprite Kit框架基礎 616 31.1.1 Sprite Kit的優點和缺點 616 31.1.2 Sprite Kit、Cocos2D、Cocos2D-X和Unity的選擇 616 31.2 實戰演練——開發一個Sprite Kit游戲程序 617 第七篇 綜合實戰 第32章 房屋出租管理系統的開發 628 32.1 系統功能介紹 628 32.2 具體實現 628 32.2.1 實現接口文件 628 32.2.2 實現系統主界面 631 32.2.3 實現用戶登錄界面 633
|
序: |
|