培訓(xùn)背景
iOS從2007年誕生至今已有近10年的歷史,10年的時間對iOS技術(shù)圈來說足夠產(chǎn)生相當(dāng)可觀的沉淀。課程就 iOS架構(gòu)這一主題,給自己做下知識梳理的同時,也期望能引入新的思考。
培訓(xùn)收益
1.基礎(chǔ)部分,介紹Objective-C和Swift基礎(chǔ)語言;
2.UI部分,iOS應(yīng)用開發(fā)基礎(chǔ)、MVC模式設(shè)計模式和UIView與控件;
3.布局與導(dǎo)航部分,介紹了表視圖、iOS多分辨率屏幕適配和導(dǎo)航設(shè)計模式;
4.架構(gòu)設(shè)計,移動平臺的分層架構(gòu)設(shè)計;
5.數(shù)據(jù)、信息和網(wǎng)絡(luò)通訊,主要介紹數(shù)據(jù)持久化技術(shù),數(shù)據(jù)交換格式,以及網(wǎng)絡(luò)通訊;
6.單元測試,測試驅(qū)動下的iOS應(yīng)用開發(fā);
7.性能優(yōu)化,Xcode性能檢測工具使用。
培訓(xùn)特色
1.全面:課程知識覆蓋全面,涵蓋了應(yīng)用開發(fā)技術(shù)的方方面面;
2.最新:最新的iOS SDK,最新Xcode開發(fā)工具,能夠緊跟蘋果的步伐;
3.案例驅(qū)動:授課過程中采用案例驅(qū)動模式授課模式,從案例入手講解知識點;
4.資源共享:課程結(jié)束后,所有課程PPT以及案例代碼完全提供給學(xué)員,以便學(xué)員技術(shù)鞏固及資料積累;
5.真機運行:授課過程中的案例,會在iPad或iPhone上測試和運行,學(xué)員感受更加直觀。
課程大綱
時間 | 課程內(nèi)容 | 學(xué)員實踐內(nèi)容 |
---|---|---|
第一天 |
Part-1UI部分 1.Hello iOS 2.MVC模式 2.1.MVC模式概述 2.2.Cocoa Touch中的MVC模式 2.3.MVC實例 3.UIView與控件 3.1.視圖“始祖”——UIView 3.2.標(biāo)簽控件和按鈕控件 3.3.TextField控件和TextView控件 3.4.工具欄和導(dǎo)航欄 |
實踐1:創(chuàng)建HelloWorld APP 通過自己動手創(chuàng)建HelloWorld APP熟悉Xcode中參加一個iOS應(yīng)該過程,熟悉Xcode工程結(jié)構(gòu)。 實踐2:Label_ButtonSample案例 通過自己動手創(chuàng)建該案例,熟悉iOS事件處理機制和輸出口機制。 實踐3:TextField_TextViewSample案例 通過自己動手創(chuàng)建該案例,熟悉視圖委托協(xié)議的作用。 |
Part-2 布局與導(dǎo)航部分 4.表視圖 4.1.表視圖概述 4.2.簡單表視圖 4.3.分節(jié)表視圖 5.iOS多分辨率屏幕適配 5.1.iOS屏幕的多樣性 5.2.iOS屏幕布局 5.3.Auto Layout布局 5.4.Size Class與iOS多屏幕適配 6.視圖控制器與導(dǎo)航模式 6.1.導(dǎo)航概述 6.2.平鋪導(dǎo)航 6.3.標(biāo)簽導(dǎo)航 6.4.樹形導(dǎo)航 |
實踐4:Simpletable案例 通過自己動手創(chuàng)建該案例,熟悉表視圖應(yīng)用程序創(chuàng)建過程和運行機理。 實踐5:SizeClassSample案例 通過自己動手創(chuàng)建該案例,熟悉iOS中Auto Layout和Size Class技術(shù)。 實踐6:TabNavigation案例 通過自己動手創(chuàng)建該案例,掌握標(biāo)簽導(dǎo)航實現(xiàn)過程。 | |
第二天 |
Part-3架構(gòu)設(shè)計 7.移動平臺的分層架構(gòu)設(shè)計 7.1.低耦合企業(yè)級系統(tǒng)架構(gòu)設(shè)計 7.2.移動平臺的分層架構(gòu)設(shè)計 7.3.基于同一工程的分層實現(xiàn) 7.4.基于一個工作空間不同工程的分層 |
實踐7:MyNotes案例 通過自己動手創(chuàng)建該案例,熟悉在Xcode中如何創(chuàng)建工作空間,在工資空間中添加和創(chuàng)建工程,并在工程中配置依賴關(guān)系。 實踐8:創(chuàng)建框架和靜態(tài)鏈接庫工程 熟練掌握在Xcode創(chuàng)建框架和靜態(tài)鏈接庫工程,并配置依賴關(guān)系。 |
Part-4 數(shù)據(jù)、信息和網(wǎng)絡(luò)通訊 8.數(shù)據(jù)持久化 8.1.數(shù)據(jù)持久化概述 8.2.SQLite數(shù)據(jù)庫 9.數(shù)據(jù)交換格格式 9.1.數(shù)據(jù)交換 9.2.JSON數(shù)據(jù)交換格式 10.網(wǎng)絡(luò)的編程 10.1.REST Web Service 10.2.使用AFNetworking網(wǎng)絡(luò)請求框架 10.3.手工配置AFNetworking環(huán)境 10.4.CocoaPods配置AFNetworking環(huán)境 10.5.GET請求 10.6.POST請求 |
實踐9:重構(gòu)MyNotes案例 通過自己動手重構(gòu)MyNotes案例的數(shù)據(jù)持久層,熟悉SQLite數(shù)據(jù)持久化技術(shù)。 實踐10:配置CocoaPods環(huán)境 通過自己動手掌握CocoaPods配置過程。 實踐11:重構(gòu)MyNotes案例 通過自己動手重構(gòu)MyNotes案例,通過AFNetworking技術(shù)從云服務(wù)器讀取數(shù)據(jù),熟悉AFNetworking網(wǎng)絡(luò)請求框架技術(shù)。 | |
第三天 |
Part5 單元測試 11.測試驅(qū)動下的iOS應(yīng)用開發(fā) 11.1.iOS單元測試框架 11.2.使用XCTest測試框架 11.3.異步單元測試 11.4.性能測試 |
實踐12:測試PITax案例 通過自己動手為PITax案例添加XCTest測試用例,掌握XCTest測試框架的使用。 實踐13:MyNotes案例性能測試實現(xiàn) 通過自己動手為MyNotes案例添加XCTest測試用例,掌握XCTest測試框架中性能測試用例實現(xiàn)。 實踐14:MyNotes案例異步測試實現(xiàn) 通過自己動手為MyNotes案例添加XCTest測試用例,掌握XCTest測試框架中異步測試用例實現(xiàn) |
Part6:性能優(yōu)化 12.Xcode性能檢測工具使用 12.1.使用Xcode中的Analyze工具 12.2.使用Xcode中的Instruments工具 13.并發(fā)處理與多核CPU 13.1.主線程阻塞問題 13.2.選擇NSThread還是GCD 13.3.使用GCD |
實踐15:使用Instruments工具 通過自己動手熟練使用Instruments工具。 實踐16:GCDDemo案例 通過自己動手創(chuàng)建該案例,熟悉GCD技術(shù)。 | |
點評與總結(jié) |