iOS应用程序开发方法与实践
2012-7
人民邮电出版社
金福生,李朴之 编著
461
821000
无
本书是一本面向初学者的入门教材,全面系统地介绍了苹果公司最新的iOS
5平台应用程序开发的各个知识点。教材内容全面,既讲解了相关基础知识,如iOS平台架构简介、Objective-C编程语言、视图与视图控制器、触屏事件处理、界面控件的用法、Xcode与Interface
Builder开发工具的使用、数据持久化等知识点,又深入探讨了相对高级的技术内容,例如视频与音频播放、网络、iCloud以及Cocos2d游戏开发入门等,知识点覆盖了绝大多数应用程序的开发。
教材内容循序渐进,每一章都分为理论知识、实验案例、知识点总结与练习题四部分,另外配有配套代码与电子教案。读者可以通过学、做、练的方式对iOS程序开发中的每个细节做到知其然亦知其所以然。
本书语言表达严谨流畅、内容丰富,既符合初学者的学习需求,又满足有一定基础的读者的需要。本书适合作为高等院校计算机学院、软件学院相关课程的教材,同时也适合作为开发人员的技术参考书。
第1章 iOS平台初探
1.1 iOS框架介绍
1.1.1 iOS的现状与发展前景
1.1.2 iOS框架层次
1.1.3 iPhone、iPad与iPod touch开发的联系与区别
1.2 其他主流移动操作系统简介
1.2.1 Android
1.2.2 Windows Mobile与Windows Phone
1.3 安装并配置集成开发环境
1.3.1 申请加入iOS开发人员计划
1.3.2 安装Xcode与iOS SDK
1.3.3 其他相关开发工具介绍
1.4 配置iOS设备以运行程序
1.4.1 生成并安装证书
1.4.2 注册设备
1.4.3 创建应用程序ID
1.4.4 创建并安装描述文件
1.5 使用Xcode创建第一个iOS应用程序
1.5.1 在Xcode中创建项目
1.5.2 熟悉Xcode界面
1.5.3 了解项目文件的组织结构
1.5.4 编译并在模拟器中运行项目
1.5.5 使用Interface Builder丰富程序的界面
1.5.6 在iOS设备上运行程序
1.5.7 使用iOS模拟器
1.6 了解程序执行的具体过程
1.6.1 图形界面程序执行的基本流程
1.6.2 程序入口
1.6.3 应用程序类
1.6.4 委托模式
1.6.5 应用程序委托类
1.6.6 分析程序执行的流程
1.7 本章小结
1.8 练习题
第2章 iOS开发基础知识
2.1 Objective-C语言介绍
2.2 类
2.2.1 类的外部接口与内部实现
2.2.2 类的成员变量
2.2.3 类的实例方法
2.2.4 类的属性
2.2.5 类的静态变量与静态方法
2.2.6 类的继承与复合
2.2.7 类的实例化与初始化
2.3 协议
2.3.1 声明协议
2.3.2 实现协议
2.3.3 使用协议限制对象类型与行为
2.4 类别
2.4.1 声明类别并实现类别方法
2.4.2 扩展类的功能
2.4.3 拆分类的实现
2.5 内存管理
2.5.1 通过实际场景了解内存管理
2.5.2 NSObject类与保留计数
2.5.3 自动释放池
2.5.4 内存管理原则
2.5.5 属性的附加特性与内存管理
2.6 字符串操作
2.6.1 创建字符串
2.6.2 字符串的各种操作
2.7 错误接收与异常处理
2.7.1 错误接收
2.7.2 异常处理
2.8 键值编码
2.9 集合类
2.9.1 数组与可变数组
2.9.2 集合与可变集合
2.9.3 字典与可变字典
2.10 函数指针与块
2.10.1 使用函数指针
2.10.2 声明块类型
2.10.3 定义和使用块对象
2.11 本章小结
2.12 练习题
第3章 视图与触屏事件
3.1 视图
3.1.1 视图层次与视图树
3.1.2 UIKit坐标系
3.1.3 坐标点、尺寸与位置
3.1.4 创建视图
3.1.5 视图框架、边界与中心
3.1.6 视图的显示
3.2 事件
3.2.1 事件对象
3.2.2 触屏对象
3.2.3 响应对象
3.2.4 案例:验证响应对象链表与点击测试过程
3.2.5 多点触屏内部机制
3.2.6 案例:验证多点触屏机制
3.3 综合案例:图片浏览程序
3.4 本章小结
3.5 练习题
第4章 界面控件与内置视图
4.1 界面控件基础
4.1.1 控件基本属性
4.1.2 目标-行为机制
4.2 常用界面控件的使用
4.2.1 按钮
4.2.2 案例:按钮的使用方法
4.2.3 文本框与键盘交互
4.2.4 案例:文本框的使用方法
4.2.5 开关
4.2.6 案例:开关的使用方法
4.2.7 滑动调节器
4.2.8 案例:滑动调节器的使用方法
4.2.9 分页控件
4.2.10 案例:分页控件的使用方法
4.2.11 分段控件
4.3 常用内置视图的使用
4.3.1 滚动视图
4.3.2 案例:滚动视图的使用
4.3.3 进度条
4.3.4 任务指示视图
4.3.5 警告视图
4.3.6 案例:警告视图的使用方法
4.3.7 行为列表
4.3.8 滚轮选取视图
4.3.9 案例:滚轮选取视图的使用方法
4.3.10 表格视图
4.4 本章小结
4.5 练习题
第5章 视图控制器
5.1 MVC架构模式
5.2 视图控制器的作用与分类
5.3 基本视图控制器
5.3.1 UIViewController类
5.3.2 案例:使用视图控制器构建程序界面
5.3.3 设备旋转
5.3.4 案例:验证设备方位与界面方位
5.3.5 案例:设备旋转后的界面重新布局
5.4 容器视图控制器
5.4.1 标签栏控制器
5.4.2 案例:使用标签栏控制器实现视图切换
5.4.3 导航栏控制器
5.4.4 案例:使用导航栏控制器管理层次化界面
5.5 模式视图控制器
5.5.1 UIViewController类与模式视图
5.5.2 案例:模式视图的显示与关闭
5.6 本章小结
5.7 练习题
第6章 使用开发工具
6.1 Interface Builder界面设计器
6.1.1 nib文件
6.1.2 Interface Builder界面
6.1.3 案例:使用IB创建一个简单应用程序
6.1.4 案例:添加自定义对象
6.1.5 案例:使用Xcode 4简化操作
6.2 代码检查器与代码分析器
6.2.1 案例:使用代码检查器检查程序错误
6.2.2 案例:使用代码分析器检查程序错误
6.3 调试器
6.3.1 调试窗口界面
6.3.2 案例:使用控制台输出语句与调试器找出程序错误
6.4 Instruments采样分析器
6.4.1 案例:使用Instruments找出内存泄露的代码
6.5 本章小结
6.6 练习题
第7章 基本数据持久化技术
7.1 背景知识
7.1.1 数据持久化方法简介
7.1.2 案例:遍历应用程序的目录与文件
7.2 文本文件
7.2.1 案例:使用文本文件保存数据
7.3 属性列表
7.3.1 案例:使用属性列表序列化简单对象
7.4 对象图的归档与解档
7.4.1 NSCoding协议
7.4.2 NSCoder类与不同的归档方式
7.4.3 案例:使用键值归档
7.4.4 对象图
7.4.5 案例:使用条件归档限制对象图的范围
7.5 综合案例:商品清单程序
7.5.1 创建项目并了解项目结构
7.5.2 设置表格视图的数据源
7.5.3 单元格的重用与生成
7.5.4 保存与恢复程序状态
7.5.5 添加详细视图
7.5.6 设置表格视图的委托对象
7.6 本章小结
7.7 练习题
第8章 多媒体
8.1 音频与视频基础
8.1.1 容器与编码
8.1.2 音频编码格式介绍
8.1.3 采样率与比特率
8.1.4 音频工具afconvert与afinfo
8.2 音频
8.2.1 使用System Audio Services播放声音
8.2.2 案例:播放简短音效与实现震动
8.2.3 使用Audio Player播放与控制声音
8.2.4 案例:播放较长的声音
8.2.5 使用Audio Recorder录制声音
8.2.6 案例:实现带录音功能的音乐播放机
8.2.7 使用Music Player Controller播放媒体库音乐
8.2.8 案例:播放媒体库音乐
8.3 视频
8.3.1 使用Movie Player Controller播放视频
8.3.2 案例:实现视频的播放
8.3.3 使用Movie Player视图控制器播放视频
8.3.4 案例:使用MPMoviePlayerViewController播放视频
8.3.5 使用相机进行拍照与摄像
8.3.6 案例:将相机拍照与摄像后的内容保存到媒体库中
8.4 本章小结
8.5 练习题
第9章 网络与iCloud云服务
9.1 网络数据处理
9.1.1 XML数据处理
9.1.2 案例:使用NSXMLParser处理XML数据
9.1.3 JSON数据处理
9.1.4 案例:使用NSJSONSerialization处理JSON数据
9.2 创建HTTP连接
9.2.1 创建HTTP连接的基本代码结构
9.2.2 创建连接请求
9.2.3 创建异步与同步连接
9.2.4 案例:通过XML与Web Service进行交互
9.3 创建Socket连接
9.3.1 创建Socket连接的过程
9.3.2 案例:使用Socket与服务器进行交互
9.4 获取网络连接状态
9.4.1 案例:获取网络连接状态
9.5 使用iCloud同步数据
9.5.1 iCloud简介
9.5.2 配置项目以支持iCloud
9.5.3 检查是否启用iCloud服务
9.5.4 查询云端数据
9.5.5 使用UIDocument与云同步
9.5.6 案例:实现iCloud文件查询与数据同步
9.6 本章小结
9.7 练习题
第10章 Cocos2d游戏开发入门
10.1 Cocos2d简介
10.2 安装Cocos2d项目模板
10.3 创建第一个Cocos2d项目
10.4 坐标系
10.5 节点
10.5.1 节点初始化
10.5.2 节点层次
10.5.3 锚点
10.5.4 定期更新
10.6 场景
10.7 图层
10.8 精灵
10.9 场景树
10.10 导演与场景切换
10.10.1 场景切换
10.10.2 场景切换效果
10.11 事件处理
10.11.1 触屏事件处理
10.11.2 加速度事件处理
10.12 动作
10.12.1 有限时间动作
10.12.2 无限重复动作
10.12.3 变速动作
10.12.4 跟随动作
10.13 文本标签与字体
10.14 菜单与菜单项
10.15 实现简单的碰撞检测
10.16 添加音乐和音效
10.17 本章小结
10.18 练习题
参考文献
第1章 iOS平台初探
1.1 iOS框架介绍
1.1.1 iOS的现状与发展前景
1.1.2 iOS框架层次
1.1.3 iPhone、iPad与iPod touch开发的联系与区别
1.2 其他主流移动操作系统简介
1.2.1 Android
1.2.2 Windows Mobile与Windows Phone
1.3 安装并配置集成开发环境
1.3.1 申请加入iOS开发人员计划
1.3.2 安装Xcode与iOS SDK
1.3.3 其他相关开发工具介绍
1.4 配置iOS设备以运行程序
1.4.1 生成并安装证书
1.4.2 注册设备
1.4.3 创建应用程序ID
1.4.4 创建并安装描述文件
1.5 使用Xcode创建第一个iOS应用程序
1.5.1 在Xcode中创建项目
1.5.2 熟悉Xcode界面
1.5.3 了解项目文件的组织结构
1.5.4 编译并在模拟器中运行项目
1.5.5 使用Interface Builder丰富程序的界面
1.5.6 在iOS设备上运行程序
1.5.7 使用iOS模拟器
1.6 了解程序执行的具体过程
1.6.1 图形界面程序执行的基本流程
1.6.2 程序入口
1.6.3 应用程序类
1.6.4 委托模式
1.6.5 应用程序委托类
1.6.6 分析程序执行的流程
1.7 本章小结
1.8 练习题
第2章 iOS开发基础知识
2.1 Objective-C语言介绍
2.2 类
2.2.1 类的外部接口与内部实现
2.2.2 类的成员变量
2.2.3 类的实例方法
2.2.4 类的属性
2.2.5 类的静态变量与静态方法
2.2.6 类的继承与复合
2.2.7 类的实例化与初始化
2.3 协议
2.3.1 声明协议
2.3.2 实现协议
2.3.3 使用协议限制对象类型与行为
2.4 类别
2.4.1 声明类别并实现类别方法
2.4.2 扩展类的功能
2.4.3 拆分类的实现
2.5 内存管理
2.5.1 通过实际场景了解内存管理
2.5.2 NSObject类与保留计数
2.5.3 自动释放池
2.5.4 内存管理原则
2.5.5 属性的附加特性与内存管理
2.6 字符串操作
2.6.1 创建字符串
2.6.2 字符串的各种操作
2.7 错误接收与异常处理
2.7.1 错误接收
2.7.2 异常处理
2.8 键值编码
2.9 集合类
2.9.1 数组与可变数组
2.9.2 集合与可变集合
2.9.3 字典与可变字典
2.10 函数指针与块
2.10.1 使用函数指针
2.10.2 声明块类型
2.10.3 定义和使用块对象
2.11 本章小结
2.12 练习题
第3章 视图与触屏事件
3.1 视图
3.1.1 视图层次与视图树
3.1.2 UIKit坐标系
3.1.3 坐标点、尺寸与位置
3.1.4 创建视图
3.1.5 视图框架、边界与中心
3.1.6 视图的显示
3.2 事件
3.2.1 事件对象
3.2.2 触屏对象
3.2.3 响应对象
3.2.4 案例:验证响应对象链表与点击测试过程
3.2.5 多点触屏内部机制
3.2.6 案例:验证多点触屏机制
3.3 综合案例:图片浏览程序
3.4 本章小结
3.5 练习题
第4章 界面控件与内置视图
4.1 界面控件基础
4.1.1 控件基本属性
4.1.2 目标-行为机制
4.2 常用界面控件的使用
4.2.1 按钮
4.2.2 案例:按钮的使用方法
4.2.3 文本框与键盘交互
4.2.4 案例:文本框的使用方法
4.2.5 开关
4.2.6 案例:开关的使用方法
4.2.7 滑动调节器
4.2.8 案例:滑动调节器的使用方法
4.2.9 分页控件
4.2.10 案例:分页控件的使用方法
4.2.11 分段控件
4.3 常用内置视图的使用
4.3.1 滚动视图
4.3.2 案例:滚动视图的使用
4.3.3 进度条
4.3.4 任务指示视图
4.3.5 警告视图
4.3.6 案例:警告视图的使用方法
4.3.7 行为列表
4.3.8 滚轮选取视图
4.3.9 案例:滚轮选取视图的使用方法
4.3.10 表格视图
4.4 本章小结
4.5 练习题
第5章 视图控制器
5.1 MVC架构模式
5.2 视图控制器的作用与分类
5.3 基本视图控制器
5.3.1 UIViewController类
5.3.2 案例:使用视图控制器构建程序界面
5.3.3 设备旋转
5.3.4 案例:验证设备方位与界面方位
5.3.5 案例:设备旋转后的界面重新布局
5.4 容器视图控制器
5.4.1 标签栏控制器
5.4.2 案例:使用标签栏控制器实现视图切换
5.4.3 导航栏控制器
5.4.4 案例:使用导航栏控制器管理层次化界面
5.5 模式视图控制器
5.5.1 UIViewController类与模式视图
5.5.2 案例:模式视图的显示与关闭
5.6 本章小结
5.7 练习题
第6章 使用开发工具
6.1 Interface Builder界面设计器
6.1.1 nib文件
6.1.2 Interface Builder界面
6.1.3 案例:使用IB创建一个简单应用程序
6.1.4 案例:添加自定义对象
6.1.5 案例:使用Xcode 4简化操作
6.2 代码检查器与代码分析器
6.2.1 案例:使用代码检查器检查程序错误
6.2.2 案例:使用代码分析器检查程序错误
6.3 调试器
6.3.1 调试窗口界面
6.3.2 案例:使用控制台输出语句与调试器找出程序错误
6.4 Instruments采样分析器
6.4.1 案例:使用Instruments找出内存泄露的代码
6.5 本章小结
6.6 练习题
第7章 基本数据持久化技术
7.1 背景知识
7.1.1 数据持久化方法简介
7.1.2 案例:遍历应用程序的目录与文件
7.2 文本文件
7.2.1 案例:使用文本文件保存数据
7.3 属性列表
7.3.1 案例:使用属性列表序列化简单对象
7.4 对象图的归档与解档
7.4.1 NSCoding协议
7.4.2 NSCoder类与不同的归档方式
7.4.3 案例:使用键值归档
7.4.4 对象图
7.4.5 案例:使用条件归档限制对象图的范围
7.5 综合案例:商品清单程序
7.5.1 创建项目并了解项目结构
7.5.2 设置表格视图的数据源
7.5.3 单元格的重用与生成
7.5.4 保存与恢复程序状态
7.5.5 添加详细视图
7.5.6 设置表格视图的委托对象
7.6 本章小结
7.7 练习题
第8章 多媒体
8.1 音频与视频基础
8.1.1 容器与编码
8.1.2 音频编码格式介绍
8.1.3 采样率与比特率
8.1.4 音频工具afconvert与afinfo
8.2 音频
8.2.1 使用System Audio Services播放声音
8.2.2 案例:播放简短音效与实现震动
8.2.3 使用Audio Player播放与控制声音
8.2.4 案例:播放较长的声音
8.2.5 使用Audio Recorder录制声音
8.2.6 案例:实现带录音功能的音乐播放机
8.2.7 使用Music Player Controller播放媒体库音乐
8.2.8 案例:播放媒体库音乐
8.3 视频
8.3.1 使用Movie Player Controller播放视频
8.3.2 案例:实现视频的播放
8.3.3 使用Movie Player视图控制器播放视频
8.3.4 案例:使用MPMoviePlayerViewController播放视频
8.3.5 使用相机进行拍照与摄像
8.3.6 案例:将相机拍照与摄像后的内容保存到媒体库中
8.4 本章小结
8.5 练习题
第9章 网络与iCloud云服务
9.1 网络数据处理
9.1.1 XML数据处理
9.1.2 案例:使用NSXMLParser处理XML数据
9.1.3 JSON数据处理
9.1.4 案例:使用NSJSONSerialization处理JSON数据
9.2 创建HTTP连接
9.2.1 创建HTTP连接的基本代码结构
9.2.2 创建连接请求
9.2.3 创建异步与同步连接
9.2.4 案例:通过XML与Web Service进行交互
9.3 创建Socket连接
9.3.1 创建Socket连接的过程
9.3.2 案例:使用Socket与服务器进行交互
9.4 获取网络连接状态
9.4.1 案例:获取网络连接状态
9.5 使用iCloud同步数据
9.5.1 iCloud简介
9.5.2 配置项目以支持iCloud
9.5.3 检查是否启用iCloud服务
9.5.4 查询云端数据
9.5.5 使用UIDocument与云同步
9.5.6 案例:实现iCloud文件查询与数据同步
9.6 本章小结
9.7 练习题
第10章 Cocos2d游戏开发入门
10.1 Cocos2d简介
10.2 安装Cocos2d项目模板
10.3 创建第一个Cocos2d项目
10.4 坐标系
10.5 节点
10.5.1 节点初始化
10.5.2 节点层次
10.5.3 锚点
10.5.4 定期更新
10.6 场景
10.7 图层
10.8 精灵
10.9 场景树
10.10 导演与场景切换
10.10.1 场景切换
10.10.2 场景切换效果
10.11 事件处理
10.11.1 触屏事件处理
10.11.2 加速度事件处理
10.12 动作
10.12.1 有限时间动作
10.12.2 无限重复动作
10.12.3 变速动作
10.12.4 跟随动作
10.13 文本标签与字体
10.14 菜单与菜单项
10.15 实现简单的碰撞检测
10.16 添加音乐和音效
10.17 本章小结
10.18 练习题
参考文献
《iOS应用程序开发方法与实践》由金福生和李朴之编著,本书遵循从零开始由浅入深的原则,每一章内容都经过了精心设计。本书首先介绍开发环境搭建和程序执行流程,然后介绍Objective-C编程语言和一些重要概念与类的使用方法,接着分别介绍程序的界面部分(各种视图、用户控件)、事件处理部分(多点触屏响应、控件事件响应)以及底层数据部分(文本文件、属性列表、归档解档)。之后,本书又挑选了几个重点内容单独进行介绍,例如开发工具的使用(Xcode、Interface Builder、iOS模拟器、调试器、Instruments)、多媒体(视频、音频的播放录制)、数据处理(XML、JSON)、网络(Socket连接、Web Service、iCloud)、Cocos2d游戏编程基础等。这些内容由易到难,既符合初学者的学习需求,又满足有一定基础的读者的需要。
无
非常不错 刚看了一部分 xcode4.2版本的
这学期开了这门课程,老师要求买的书,还是蛮不错的。
准备看呢,期待
就是纸张的质量的确是太差了点。
书很不错,就是快递太慢了!
内容全面,讲得比较细致,介绍了一般开发中常用的技术要点。既讲解了原理,又结合代码进行演示,对于初学者还是很有帮助的。
讲的很细,很全面,由浅入深
还不错。还没看完。。。书非借而不能读~
感觉内容比较粗糙,新手不建议用
书的质量的很一般很一般,我一度怀疑是否是盗版的1