編輯推薦
本書麵嚮學習iOS開發的零基礎讀者。本書從實際開發的角度,提煉齣所需要的iOS核心知識,讓讀者在短時間內有的放矢地掌握iOS開發的核心技能。為瞭提升讀者的學習效率,本書配套提供由作者親自錄製的教學視頻,針對每個章節的核心內容進行講解,方便讀者領會並掌握各個知識點。
本書共包括5個部分,涵蓋瞭開發語言、iOS專業知識、常用工具等各個方麵。本書的內容是作者多年來從事iOS開發的經驗提煉與總結,是一本既全麵立體,又難度適中,且緊扣實踐的書籍。
內容簡介
本書適閤iOS開發零基礎的讀者閱讀。全書包含六大部分,共24章,涵蓋瞭針對iOS開發入門所需要掌握的核心內容,同時緊扣iOS開發的*新發展趨勢,以Objective-C語言為基礎,並引入瞭Swift語言以及ReactNative的介紹。通過本書的係統學習,能夠滿足一般軟件公司對iOS開發工程師的崗位要求。第一部分:Objective-C語言基礎。針對初學者介紹iOS開發使用*廣泛、成熟度*高的Objective-C語言,簡單扼要地介紹瞭在實際開發中*常使用的語法內容。第二部分:iOS開發入門。基於UIKit框架,介紹瞭iOS開發中需要優先掌握的基礎類,包括基礎UI控件、高級UI控件、控製器、手勢等。第三部分:iOS開發進階。著重介紹多綫程、網絡、存儲、繪圖、設計模式、設備、地圖、推送、證書以及應用發布等進階技術。第四部分:常用框架以及輔助工具介紹。介紹在實際開發中*常使用的輔助開發工具以及框架。第五部分:Swift語言基礎。以Swift3.0為基礎,介紹Swift語言的基本使用以及語法知識。第六部分:ReactNative基礎。重點介紹瞭ReactNative的環境部署、基本概念以及常用框架的使用方法等內容。本書適閤iOS開發新手、iOS程序員使用,也可以作為相關培訓機構和大專院校教學用書。
目錄
第1部分
Objective-C語言基礎
第1章
環境搭建
3
1.1Xcode簡介3
1.2創建App應用3
1.2.1下載安裝Xcode3
1.2.2使用Xcode創建App.4
1.2.3Xcode開發界麵介紹5
1.3程序調試.6
1.3.1App運行狀態監控6
1.3.2UI界麵分析6
1.3.3斷點調試.7
1.4Xcode常用快捷鍵8
1.5常用插件.9
1.5.1蘋果封鎖第三方插件的原因.9
1.5.2源碼編輯器擴展.9
1.6快捷代碼段.10
1.6.1如何創建代碼段.10
1.6.2常用代碼段.11
第2章
數據類型與錶達式
13
2.1數據類型與常量.13
2.1.1基本數據類型.13
2.1.2限定詞.15
2.1.3id與instancetype17
2.2算術錶達式.18
2.2.1基本運算符.18
2.2.2數據類型轉換.20
2.3循環結構.22
2.3.1for循環22
2.3.2for-in循環.24
2.3.3while循環.26
目錄
iOS開發:從零基礎到精通
6
2.3.4break與continue28
2.4選擇結構.29
2.4.1if語句29
2.4.2switch語句32
2.4.3條件運算符/三目運算符.35
2.5typedef語句36
第3章
類、對象與方法
38
3.1類.38
3.1.1類的定義.38
3.1.2類的繼承.40
3.2屬性.42
3.2.1屬性的定義.42
3.2.2公有屬性與私有屬性44
3.2.3屬性關鍵字.45
3.3方法.48
3.3.1方法的定義.48
3.3.2方法的調用.49
3.3.3方法的重寫.52
3.4對象.54
3.4.1創建對象.54
3.4.2對象操作.57
3.5變量.60
3.5.1局部變量.60
3.5.2全局變量.61
3.5.3靜態變量.64
3.5.4const關鍵字.66
第4章
Foundation框架
.69
4.1Foundation框架簡介.69
4.2字符串類.69
4.2.1不可變字符串NSString69
4.2.2可變字符串NSMutableString.74
4.3數組類.76
4.3.1不可變數組NSArray.76
4.3.2可變數組NSMutableArray.79
4.4字典類.81
4.4.1不可變字典NSDictionary.81
4.4.2可變字典NSMutableDictionary84
4.5NSNumber類86
7
目錄
4.6NSDate類.88
4.7NSFileManager類92
4.7.1文件操作.92
4.7.2目錄操作.96
4.7.3枚舉目錄中的內容98
4.7.4文件的讀取與寫入100
4.8NSURL類.102
4.9NSBundle類.103
第5章
Objective-C語言特性
.107
5.1代碼塊.107
5.1.1Block簡介.107
5.1.2Block的參數與返迴值109
5.1.3操作Block外部的變量.112
5.1.4Block迴調.114
5.2分類.116
5.3協議.118
5.3.1協議簡介.118
5.3.2代理.119
5.4KVC.120
5.4.1使用KVC賦值取值120
5.4.2字典轉模型122
5.4.3修改readonly的屬性以及私有屬性123
5.5KVO125
第6章
Objective-C進階
128
6.1對象復製.128
6.1.1淺復製與深復製128
6.1.2可變對象復製與不可變對象復製129
6.1.3自定義對象復製135
6.2內存管理.137
6.3預編譯指令.139
6.3.1宏定義.139
6.3.2#include、#import與@class142
6.3.3條件編譯.143
6.4NSLog()函數145
6.4.1NSLog()函數基本使用.145
6.4.2定製輸入日誌的格式146
6.5結構.148
6.5.1結構的定義與基本使用148
iOS開發:從零基礎到精通
8
6.5.2結構的嵌套150
第2部分
iOS開發基礎
第7章
基礎UI控件
.155
7.1UIKit框架.155
7.2視圖UIView.156
7.2.1UIView簡介.156
7.2.2視圖UIView的外觀159
7.2.3視圖UIView的形變162
7.2.4視圖UIView的層次關係163
7.2.5視圖UIView的動畫166
7.2.6響應用戶交互事件167
7.2.7內容模式contentMode170
7.2.8圖片拉伸.172
7.2.9使用代碼創建自定義UIView.175
7.2.10使用XIB創建自定義UIView177
7.2.11控件改變坐標係(convertRect:)180
7.3圖片控件UIImageView181
7.3.1基本使用.181
7.3.2常用操作.183
7.3.3幀動畫功能185
7.4按鈕控件UIButton.186
7.4.1基本使用.186
7.4.2按鈕的創建188
7.4.3調整圖標與標題的位置190
7.5文本控件UILabel.192
7.5.1UILabel簡介192
7.5.2常用的UILabel使用場景.194
7.6提示框控件.195
7.7文本輸入框UITextField198
7.7.1UITextField的基本屬性198
7.7.2UITextField的代理方法簡介201
7.7.3UITextField的代理方法實例之鍵盤迴收203
7.7.4UITextField的代理方法實例之字數限製205
第8章
高級UI控件
.207
8.1滾動視圖UIScrollView.207
8.1.1UIScrollView基本使用.207
8.1.2UIScrollView常用代理方法的實現.209
9
目錄
8.1.3視圖的縮放功能212
8.2錶視圖UITableView214
8.2.1UITableView基本介紹214
8.2.2UITableView的數據源方法217
8.2.3瞭解單元格UITableViewCell.219
8.2.4UITableView創建示例220
8.2.5UITableView代理方法之點擊單元格222
8.2.6UITableView代理方法之編輯單元格224
8.2.7UITableViewCell性能優化.227
8.2.8分段Section.228
8.2.9分段Section實現示例231
8.2.10自定義Cell.235
8.2.11Cell高度的設置.238
8.2.12動態調整Cell高度(self-sizing).238
8.2.13動態調整Cell高度(代碼)
240
8.2.14UITableView+FDTemplateLayoutCell計算Cell高度.244
8.2.15改變Cell位置247
8.2.16UITableView的Header和Footer.247
8.2.17去除多餘的單元格分割綫248
8.3集閤視圖UICollectionView249
8.3.1UICollectionView簡介249
8.3.2UICollectionView數據源協議DataSource252
8.3.3最簡單的集閤視圖實現253
8.3.4UICollectionView代理協議方法簡介255
8.3.5UICollectionView代理方法實例256
8.3.6UICollectionViewFlowLayout簡介257
8.3.7UICollectionViewFlowLayout使用實例259
8.3.8UICollectionViewDelegateFlowLayout類的代理方法實現262
8.3.9自定義Cell.265
8.4手勢UIGestureRecognizer267
8.4.1UIGestureRecognizer簡介267
8.4.2點擊手勢UITapGestureRecognizer269
8.4.3捏閤與鏇轉手勢UIPinchGestureRecognizer.270
8.4.4滑動手勢UISwipeGestureRecognizer273
8.4.5拖動手勢UIPanGestureRecognizer275
8.4.6長按手勢UILongPressGestureRecognizer276
第9章
控製器
278
9.1控製器UIViewController278
9.1.1控製器簡介以及創建控製器278
iOS開發:從零基礎到精通
10
9.1.2使用XIB以及Storyboard創建控製器279
9.1.3控製器的生命周期283
9.1.4使用Storyboard切換控製器285
9.1.5使用代碼切換控製器287
9.1.6控製器嵌套288
9.2導航控製器UINavigationController.291
9.2.1導航控製器簡介291
9.2.2控製器跳轉295
9.2.3子控製器的管理295
9.2.4UINavigationBar296
9.2.5barStyle屬性297
9.2.6barTintColor與tintColor.298
9.2.7導航欄設置背景圖片299
9.2.8UINavigationItem.300
9.2.9UINavigationItem定製示例302
9.2.10UINavigationItem顯示原始圖片樣式304
9.2.11UINavigationController的代理方法.304
9.2.12順傳數據.305
9.2.13使用代理逆傳數據307
9.2.14使用通知逆傳數據309
9.2.15使Block逆傳數據.310
9.2.16工具欄toolBar.311
9.3UITabBarController.313
9.3.1UITabBarController的常用屬性和方法.313
9.3.2UITabBar的常用屬性和方法.314
9.3.3UITabBarItem的常用屬性和方法315
9.3.4微信TabBar實現.316
9.3.5UITabBarController的代理協議.318
9.4UIWindow、UIView與UIViewController關係.319
9.4.1概念簡介.319
9.4.2關係描述.320
第10章
其他UI控件
.322
10.1WKWebView.322
10.1.1WKWebView簡介.322
10.1.2WKWebView的基本使用——加載網頁.324
10.1.3網頁瀏覽控製325
10.1.4加載本地文件328
10.1.5WKWebView代理協議之WKNavigationDelegate.330
10.2UITextView.330
11
目錄
10.2.1UITextView的基本使用330
10.2.2UITextView的代理方法332
10.3UIPageControl.333
10.3.1UIPageControl介紹.333
10.3.2UIPageControl實際應用.334
10.4UIPickerView338
10.4.1UIPickerView簡介338
10.4.2UIPickerView的基本使用340
10.4.3相互依賴的多列選擇器342
10.5UISilder.345
10.5.1UISlider基本介紹.345
10.5.2UISlider實例.347
10.6UIDatePicker.349
10.6.1UIDatePicker基本介紹.349
10.6.2UIDatePicker基本使用.349
10.7UISegmentedControl351
10.7.1UISegmentedControl簡介.351
10.7.2UISegmentedControl實例.352
第3部分
iOS開發進階
第11章
多綫程
359
11.1綫程基礎知識.359
11.2GCD.362
11.2.1GCD基本概念介紹.362
11.2.2隊列與任務組閤363
11.2.3綫程間通信369
11.2.4隊列組dispatchgroup371
11.2.5延遲執行操作373
11.3NSOperation374
11.3.1NSOperation基本使用374
11.3.2綫程間通信379
11.3.3任務間的執行依賴380
第12章
網絡
.382
12.1網絡開發基本概念介紹382
12.2常用網絡協議之HTTP.383
12.3網絡請求之GET、POST請求384
12.4AFNetworking框架介紹.385
12.5聚閤數據API簡介387
iOS開發:從零基礎到精通
12
12.6GET請求與POST請求使用示例.389
12.7JSON和XML簡單介紹.391
第13章
數據持久化
.394
13.1沙盒.394
13.1.1沙盒基礎.394
13.1.2在Mac上查看沙盒目錄.396
13.2Plist文件.397
13.2.1Plist簡介.397
13.2.2Plist文件的讀取399
13.2.3Plist文件的寫入400
13.2.4操作實例.402
13.3偏好設置NSUserDefaults.406
13.3.1NSUserDefaults簡介.406
13.3.2讀寫示例.407
13.4歸檔.409
13.4.1基本使用.409
13.4.2單個對象歸檔/解檔.410
13.4.3自定義對象歸檔/解檔.412
13.4.4歸檔多個自定義對象416
13.4.5子類對象的歸檔419
13.4.6歸檔多個不同類型的對象422
13.5SQLite.424
13.5.1數據庫的操作424
13.5.2錶的操作.427
13.5.3數據記錄的操作430
13.6FMDB433
13.6.1基本介紹.433
13.6.2更新操作與查詢操作436
13.6.3綫程安全.438
13.7CoreData.439
13.7.1概念簡介.439
13.7.2使用示例.440
13.8Realm.445
13.8.1Realm基本介紹.445
13.8.2Realm的安裝.449
13.8.3常用屬性與方法451
13.8.4Realm使用示例.453
13
目錄
第14章
繪圖和動畫
.457
14.1核心繪畫.457
14.1.1核心繪畫的基本概念457
14.1.2貝塞爾路徑458
14.1.3繪圖方法和步驟460
14.1.4常見圖形的繪製方法461
14.2UIImage繪圖應用.464
14.2.1繪製圖片.464
14.2.2添加水印.467
14.2.3裁剪圓形圖片470
14.2.4截屏.473
14.3CALayer474
14.3.1CALayer簡介474
14.3.2iOS開發中的坐標係.477
14.3.3動畫屬性.481
14.4核心動畫.482
14.4.1核心動畫簡介482
14.4.2動畫的實現步驟484
14.4.3CAPropertyAnimiation屬性動畫485
14.4.4CABasicAnimiation基本動畫.486
14.4.5CAKeyframeAnimation關鍵幀動畫.487
14.4.6CASpringAnimation彈簧動畫489
14.4.7CAAnimationGroup動畫組490
14.4.8CATransition轉場動畫492
第15章
設計模式
495
15.1iOS下的MVC設計模式495
15.2單例模式.497
15.3iOS下的MVVM設計模式499
精彩書摘
對象與方法
3.1類
3.1.1類的定義
在Objective-C中
iOS開發:從零基礎到精通 下載 mobi epub pdf txt 電子書 格式