課程簡(jiǎn)介
課程知識(shí)覆蓋全面,涵蓋了應(yīng)用開(kāi)發(fā)技術(shù)的方方面面。
最新的iOSSDK,最新Xcode開(kāi)發(fā)工具,能夠緊跟蘋(píng)果的步伐。
目標(biāo)收益
培訓(xùn)對(duì)象
本課程適用于想從事iPhone、iPod 和iPad開(kāi)發(fā)的程序員、系統(tǒng)設(shè)計(jì)人員,也適合于想從事Mac OS X下應(yīng)用開(kāi)發(fā)的程序員和相關(guān)人員。
課程大綱
(第一天) Part1 移動(dòng)APP架構(gòu)設(shè)計(jì) |
1. 從一個(gè)糟糕的設(shè)計(jì)開(kāi)始 1.1. 表示邏輯與業(yè)務(wù)邏輯分離 1.2. 業(yè)務(wù)邏輯與數(shù)據(jù)持久層分離 1.3. 給視圖控制器“減負(fù)” 1.4. 面向協(xié)議和面向擴(kuò)展的編程 2. 移動(dòng)平臺(tái)的分層架構(gòu)設(shè)計(jì) 2.1. 低耦合企業(yè)級(jí)系統(tǒng)架構(gòu)設(shè)計(jì) 2.2. 移動(dòng)平臺(tái)的分層架構(gòu)設(shè)計(jì) 2.3. 基于同一工程的分層實(shí)現(xiàn) 2.4. 基于一個(gè)工作空間不同工程的分層 |
Part-2 數(shù)據(jù)、信息和網(wǎng)絡(luò)通訊 |
3. 數(shù)據(jù)持久化 3.1. 數(shù)據(jù)持久化概述 3.2. SQLite數(shù)據(jù)庫(kù) 4. 數(shù)據(jù)交換格格式 4.1. 數(shù)據(jù)交換 4.2. JSON數(shù)據(jù)交換格式 5. 網(wǎng)絡(luò)的編程 5.1. REST Web Service 5.2. 使用AFNetworking網(wǎng)絡(luò)請(qǐng)求框架 5.3. 手工配置AFNetworking環(huán)境 5.4. CocoaPods配置AFNetworking環(huán)境 5.5. GET請(qǐng)求 5.6. POST請(qǐng)求 |
(第二天) Part3:?jiǎn)卧獪y(cè)試 |
6. 測(cè)試驅(qū)動(dòng)下的iOS應(yīng)用開(kāi)發(fā) 6.1. iOS單元測(cè)試框架 6.2. 使用XCTest測(cè)試框架 6.3. 異步單元測(cè)試 6.4. 性能測(cè)試 7. iOS應(yīng)用UI測(cè)試 7.1. UI測(cè)試 7.2. 添加UI測(cè)試框架 7.3. 錄制腳本 7.4. 訪(fǎng)問(wèn)UI元素 |
Part4:性能優(yōu)化 |
8. 使用Xcode調(diào)試iOS應(yīng)用 程序 8.1. 定位編譯錯(cuò)誤 8.2. 查看和顯示日志 8.3. 設(shè)置和查看斷點(diǎn) 8.4. 異常堆棧報(bào)告分析 8.5. 跟蹤異常堆棧 8.6. 分析堆棧報(bào)告 9. iOS應(yīng)用程序性能優(yōu)化 9.1. 內(nèi)存優(yōu)化 9.2. 使用Analyze工具檢查內(nèi)存泄漏 9.3. 使用Instruments工具檢查內(nèi)存泄漏 9.4. 使用Instruments工具檢查僵尸對(duì)象 9.5. 優(yōu)化資源文件 9.6. 延遲加載 9.7. 數(shù)據(jù)持久化的優(yōu)化 9.8. 可重用對(duì)象的使用 10. 多線(xiàn)程與并發(fā)編程 10.1. 并發(fā)相關(guān)概念 10.2. CPU與并發(fā)執(zhí)行 10.3. 進(jìn)程與線(xiàn)程 10.4. GCD技術(shù) 10.5. GCD與調(diào)度隊(duì)列 10.6. GCD應(yīng)用 10.7. 使用GCD解決主線(xiàn)程阻塞 10.8. 選擇NSThread還是GCD 10.9. GCD與單例模式 |
Part5:學(xué)員實(shí)踐: |
11. 學(xué)員實(shí)踐: 11.1. 根據(jù)自己業(yè)務(wù)需求設(shè)計(jì)一個(gè)基于分層架構(gòu)設(shè)計(jì)的移動(dòng)APP 11.2. 驗(yàn)收與點(diǎn)評(píng) |
(第一天) Part1 移動(dòng)APP架構(gòu)設(shè)計(jì) 1. 從一個(gè)糟糕的設(shè)計(jì)開(kāi)始 1.1. 表示邏輯與業(yè)務(wù)邏輯分離 1.2. 業(yè)務(wù)邏輯與數(shù)據(jù)持久層分離 1.3. 給視圖控制器“減負(fù)” 1.4. 面向協(xié)議和面向擴(kuò)展的編程 2. 移動(dòng)平臺(tái)的分層架構(gòu)設(shè)計(jì) 2.1. 低耦合企業(yè)級(jí)系統(tǒng)架構(gòu)設(shè)計(jì) 2.2. 移動(dòng)平臺(tái)的分層架構(gòu)設(shè)計(jì) 2.3. 基于同一工程的分層實(shí)現(xiàn) 2.4. 基于一個(gè)工作空間不同工程的分層 |
Part-2 數(shù)據(jù)、信息和網(wǎng)絡(luò)通訊 3. 數(shù)據(jù)持久化 3.1. 數(shù)據(jù)持久化概述 3.2. SQLite數(shù)據(jù)庫(kù) 4. 數(shù)據(jù)交換格格式 4.1. 數(shù)據(jù)交換 4.2. JSON數(shù)據(jù)交換格式 5. 網(wǎng)絡(luò)的編程 5.1. REST Web Service 5.2. 使用AFNetworking網(wǎng)絡(luò)請(qǐng)求框架 5.3. 手工配置AFNetworking環(huán)境 5.4. CocoaPods配置AFNetworking環(huán)境 5.5. GET請(qǐng)求 5.6. POST請(qǐng)求 |
(第二天) Part3:?jiǎn)卧獪y(cè)試 6. 測(cè)試驅(qū)動(dòng)下的iOS應(yīng)用開(kāi)發(fā) 6.1. iOS單元測(cè)試框架 6.2. 使用XCTest測(cè)試框架 6.3. 異步單元測(cè)試 6.4. 性能測(cè)試 7. iOS應(yīng)用UI測(cè)試 7.1. UI測(cè)試 7.2. 添加UI測(cè)試框架 7.3. 錄制腳本 7.4. 訪(fǎng)問(wèn)UI元素 |
Part4:性能優(yōu)化 8. 使用Xcode調(diào)試iOS應(yīng)用 程序 8.1. 定位編譯錯(cuò)誤 8.2. 查看和顯示日志 8.3. 設(shè)置和查看斷點(diǎn) 8.4. 異常堆棧報(bào)告分析 8.5. 跟蹤異常堆棧 8.6. 分析堆棧報(bào)告 9. iOS應(yīng)用程序性能優(yōu)化 9.1. 內(nèi)存優(yōu)化 9.2. 使用Analyze工具檢查內(nèi)存泄漏 9.3. 使用Instruments工具檢查內(nèi)存泄漏 9.4. 使用Instruments工具檢查僵尸對(duì)象 9.5. 優(yōu)化資源文件 9.6. 延遲加載 9.7. 數(shù)據(jù)持久化的優(yōu)化 9.8. 可重用對(duì)象的使用 10. 多線(xiàn)程與并發(fā)編程 10.1. 并發(fā)相關(guān)概念 10.2. CPU與并發(fā)執(zhí)行 10.3. 進(jìn)程與線(xiàn)程 10.4. GCD技術(shù) 10.5. GCD與調(diào)度隊(duì)列 10.6. GCD應(yīng)用 10.7. 使用GCD解決主線(xiàn)程阻塞 10.8. 選擇NSThread還是GCD 10.9. GCD與單例模式 |
Part5:學(xué)員實(shí)踐: 11. 學(xué)員實(shí)踐: 11.1. 根據(jù)自己業(yè)務(wù)需求設(shè)計(jì)一個(gè)基于分層架構(gòu)設(shè)計(jì)的移動(dòng)APP 11.2. 驗(yàn)收與點(diǎn)評(píng) |