课程简介
课程知识覆盖全面,涵盖了应用开发技术的方方面面。
最新的iOSSDK,最新Xcode开发工具,能够紧跟苹果的步伐。
目标收益
培训对象
本课程适用于想从事iPhone、iPod 和iPad开发的程序员、系统设计人员,也适合于想从事Mac OS X下应用开发的程序员和相关人员。
课程大纲
(第一天) Part1 移动APP架构设计 |
1. 从一个糟糕的设计开始 1.1. 表示逻辑与业务逻辑分离 1.2. 业务逻辑与数据持久层分离 1.3. 给视图控制器“减负” 1.4. 面向协议和面向扩展的编程 2. 移动平台的分层架构设计 2.1. 低耦合企业级系统架构设计 2.2. 移动平台的分层架构设计 2.3. 基于同一工程的分层实现 2.4. 基于一个工作空间不同工程的分层 |
Part-2 数据、信息和网络通讯 |
3. 数据持久化 3.1. 数据持久化概述 3.2. SQLite数据库 4. 数据交换格格式 4.1. 数据交换 4.2. JSON数据交换格式 5. 网络的编程 5.1. REST Web Service 5.2. 使用AFNetworking网络请求框架 5.3. 手工配置AFNetworking环境 5.4. CocoaPods配置AFNetworking环境 5.5. GET请求 5.6. POST请求 |
(第二天) Part3:单元测试 |
6. 测试驱动下的iOS应用开发 6.1. iOS单元测试框架 6.2. 使用XCTest测试框架 6.3. 异步单元测试 6.4. 性能测试 7. iOS应用UI测试 7.1. UI测试 7.2. 添加UI测试框架 7.3. 录制脚本 7.4. 访问UI元素 |
Part4:性能优化 |
8. 使用Xcode调试iOS应用 程序 8.1. 定位编译错误 8.2. 查看和显示日志 8.3. 设置和查看断点 8.4. 异常堆栈报告分析 8.5. 跟踪异常堆栈 8.6. 分析堆栈报告 9. iOS应用程序性能优化 9.1. 内存优化 9.2. 使用Analyze工具检查内存泄漏 9.3. 使用Instruments工具检查内存泄漏 9.4. 使用Instruments工具检查僵尸对象 9.5. 优化资源文件 9.6. 延迟加载 9.7. 数据持久化的优化 9.8. 可重用对象的使用 10. 多线程与并发编程 10.1. 并发相关概念 10.2. CPU与并发执行 10.3. 进程与线程 10.4. GCD技术 10.5. GCD与调度队列 10.6. GCD应用 10.7. 使用GCD解决主线程阻塞 10.8. 选择NSThread还是GCD 10.9. GCD与单例模式 |
Part5:学员实践: |
11. 学员实践: 11.1. 根据自己业务需求设计一个基于分层架构设计的移动APP 11.2. 验收与点评 |
(第一天) Part1 移动APP架构设计 1. 从一个糟糕的设计开始 1.1. 表示逻辑与业务逻辑分离 1.2. 业务逻辑与数据持久层分离 1.3. 给视图控制器“减负” 1.4. 面向协议和面向扩展的编程 2. 移动平台的分层架构设计 2.1. 低耦合企业级系统架构设计 2.2. 移动平台的分层架构设计 2.3. 基于同一工程的分层实现 2.4. 基于一个工作空间不同工程的分层 |
Part-2 数据、信息和网络通讯 3. 数据持久化 3.1. 数据持久化概述 3.2. SQLite数据库 4. 数据交换格格式 4.1. 数据交换 4.2. JSON数据交换格式 5. 网络的编程 5.1. REST Web Service 5.2. 使用AFNetworking网络请求框架 5.3. 手工配置AFNetworking环境 5.4. CocoaPods配置AFNetworking环境 5.5. GET请求 5.6. POST请求 |
(第二天) Part3:单元测试 6. 测试驱动下的iOS应用开发 6.1. iOS单元测试框架 6.2. 使用XCTest测试框架 6.3. 异步单元测试 6.4. 性能测试 7. iOS应用UI测试 7.1. UI测试 7.2. 添加UI测试框架 7.3. 录制脚本 7.4. 访问UI元素 |
Part4:性能优化 8. 使用Xcode调试iOS应用 程序 8.1. 定位编译错误 8.2. 查看和显示日志 8.3. 设置和查看断点 8.4. 异常堆栈报告分析 8.5. 跟踪异常堆栈 8.6. 分析堆栈报告 9. iOS应用程序性能优化 9.1. 内存优化 9.2. 使用Analyze工具检查内存泄漏 9.3. 使用Instruments工具检查内存泄漏 9.4. 使用Instruments工具检查僵尸对象 9.5. 优化资源文件 9.6. 延迟加载 9.7. 数据持久化的优化 9.8. 可重用对象的使用 10. 多线程与并发编程 10.1. 并发相关概念 10.2. CPU与并发执行 10.3. 进程与线程 10.4. GCD技术 10.5. GCD与调度队列 10.6. GCD应用 10.7. 使用GCD解决主线程阻塞 10.8. 选择NSThread还是GCD 10.9. GCD与单例模式 |
Part5:学员实践: 11. 学员实践: 11.1. 根据自己业务需求设计一个基于分层架构设计的移动APP 11.2. 验收与点评 |