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