培训背景
iOS从2007年诞生至今已有近10年的历史,10年的时间对iOS技术圈来说足够产生相当可观的沉淀。课程就 iOS架构这一主题,给自己做下知识梳理的同时,也期望能引入新的思考。
 
培训对象
1. 信息安全专家,如经理、顾问、分析师,需深入理解信息安全管理体系、风险评估和控制措施以保护敏感信息。
2. IT专家,特别是系统管理、网络管理和应用开发者,能从ISO 27001认证中受益,学习在系统和应用中实施最佳信息安全实践。
3. 管理人员,如高层领导、部门经理和项目经理,通过此认证了解信息安全管理对组织的重要性,使业务决策更安全。
4. 风险管理人员需学习如何评估和管理信息安全风险,并在信息安全管理体系中实施风险管理方法。
 
培训收益
1.基础部分,介绍Objective-C和Swift基础语言;
2.UI部分,iOS应用开发基础、MVC模式设计模式和UIView与控件;
3.布局与导航部分,介绍了表视图、iOS多分辨率屏幕适配和导航设计模式;
4.架构设计,移动平台的分层架构设计;
5.数据、信息和网络通讯,主要介绍数据持久化技术,数据交换格式,以及网络通讯;
6.单元测试,测试驱动下的iOS应用开发;
7.性能优化,Xcode性能检测工具使用。
 
培训特色
1.全面:课程知识覆盖全面,涵盖了应用开发技术的方方面面;
2.最新:最新的iOS SDK,最新Xcode开发工具,能够紧跟苹果的步伐;
3.案例驱动:授课过程中采用案例驱动模式授课模式,从案例入手讲解知识点;
4.资源共享:课程结束后,所有课程PPT以及案例代码完全提供给学员,以便学员技术巩固及资料积累;
5.真机运行:授课过程中的案例,会在iPad或iPhone上测试和运行,学员感受更加直观。
 
日程安排
| 日程 | 授课内容 | 实践内容 | 
| 第一天 | 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.标签控件和按钮控件
 3.3.TextField控件和TextView控件
 3.4.工具栏和导航栏
 | 实践1:创建HelloWorld APP通过自己动手创建HelloWorld APP熟悉Xcode中参加一个iOS应该过程,熟悉Xcode工程结构。
 实践2:Label_ButtonSample案例
 通过自己动手创建该案例,熟悉iOS事件处理机制和输出口机制。
 实践3:TextField_TextViewSample案例
 通过自己动手创建该案例,熟悉视图委托协议的作用。
 | 
| Part-2 布局与导航部分4.表视图
 4.1.表视图概述
 4.2.简单表视图
 4.3.分节表视图
 5.iOS多分辨率屏幕适配
 5.1.iOS屏幕的多样性
 5.2.iOS屏幕布局
 5.3.Auto Layout布局
 5.4.Size Class与iOS多屏幕适配
 6.视图控制器与导航模式
 6.1.导航概述
 6.2.平铺导航
 6.3.标签导航
 6.4.树形导航
 | 实践4:Simpletable案例通过自己动手创建该案例,熟悉表视图应用程序创建过程和运行机理。
 实践5:SizeClassSample案例
 通过自己动手创建该案例,熟悉iOS中Auto Layout和Size Class技术。
 实践6:TabNavigation案例
 通过自己动手创建该案例,掌握标签导航实现过程。
 | 
| 第二天 | Part-3架构设计7.移动平台的分层架构设计
 7.1.低耦合企业级系统架构设计
 7.2.移动平台的分层架构设计
 7.3.基于同一工程的分层实现
 7.4.基于一个工作空间不同工程的分层
 | 实践7:MyNotes案例通过自己动手创建该案例,熟悉在Xcode中如何创建工作空间,在工资空间中添加和创建工程,并在工程中配置依赖关系。
 实践8:创建框架和静态链接库工程
 熟练掌握在Xcode创建框架和静态链接库工程,并配置依赖关系。
 | 
| Part-4 数据、信息和网络通讯8.数据持久化
 8.1.数据持久化概述
 8.2.SQLite数据库
 9.数据交换格格式
 9.1.数据交换
 9.2.JSON数据交换格式
 10.网络的编程
 10.1.REST Web Service
 10.2.使用AFNetworking网络请求框架
 10.3.手工配置AFNetworking环境
 10.4.CocoaPods配置AFNetworking环境
 10.5.GET请求
 10.6.POST请求
 | 实践9:重构MyNotes案例通过自己动手重构MyNotes案例的数据持久层,熟悉SQLite数据持久化技术。
 实践10:配置CocoaPods环境
 通过自己动手掌握CocoaPods配置过程。
 实践11:重构MyNotes案例
 通过自己动手重构MyNotes案例,通过AFNetworking技术从云服务器读取数据,熟悉AFNetworking网络请求框架技术。
 | 
| 第三天 | Part5 单元测试11.测试驱动下的iOS应用开发
 11.1.iOS单元测试框架
 11.2.使用XCTest测试框架
 11.3.异步单元测试
 11.4.性能测试
 | 实践12:测试PITax案例通过自己动手为PITax案例添加XCTest测试用例,掌握XCTest测试框架的使用。
 实践13:MyNotes案例性能测试实现
 通过自己动手为MyNotes案例添加XCTest测试用例,掌握XCTest测试框架中性能测试用例实现。
 实践14:MyNotes案例异步测试实现
 通过自己动手为MyNotes案例添加XCTest测试用例,掌握XCTest测试框架中异步测试用例实现
 | 
| Part6:性能优化12.Xcode性能检测工具使用
 12.1.使用Xcode中的Analyze工具
 12.2.使用Xcode中的Instruments工具
 13.并发处理与多核CPU
 13.1.主线程阻塞问题
 13.2.选择NSThread还是GCD
 13.3.使用GCD
 | 实践15:使用Instruments工具通过自己动手熟练使用Instruments工具。
 实践16:GCDDemo案例
 通过自己动手创建该案例,熟悉GCD技术。
 | 
| 点评与总结
 | 
 |