iOS 7 iPhone/iPad应用开发技术详解

相关资料

[

  相比以前的版本而言,ios
7有了很大的变化,有些变化具有一定的革命性,比如界面和图标的设计。这对广大的ios应用开发者而言,既是机遇,又是挑战,开发者需要迅速掌握ios
7的各项新特性。目前市面上还没有关于ios
7的中文图书,本书的出版可谓恰逢其时,能给广大的ios应用开发者提供帮助。本书以中初级的开发者为读者对象,循序渐进地讲解了ios应用开发者必须掌握的各项理论知识和开发方法,是系统学习ios
7应用开发的经典著作。
   ——51cto 中国领先的it技术网站

]

本书特色

[

  技术新颖,基于ios
7撰写,详细讲解开发iphone和ipad应用所需掌握的各项基础知识、开发流程和高级技巧,是系统学习ios应用开发的经典著作。

  资深mac/ios工程师撰写,内容循序渐进,实战性强,每个知识点都准备了辅助理解的小案例,*后还提供两个综合性案例。

]

内容简介

[

  本书由资深mac/ios开发工程师基于ios
7撰写。内容全面,从objective-c语法知识、ios功能特性,到高级开发方法和技巧,几乎涵盖了中初级ios开发工程师需要掌握的所有技术和知识;实战性强,每个知识点都有辅助理解的小案例,*后还提供了两个综合性应用开发案例。内容循序渐进,是系统学习ios应用开发的经典著作。

  全书共20章,分4部分。准备篇(第1~2章)介绍了ios、objective-c和xcode的入门知识,详细描述了ios
7新特性、objective-c应用开发环境的搭建,以及iphone应用开发的完整过程;语法篇(第3~8章)详细讲解objective-c的语法知识,其中包括类、对象、消息和协议,以及内存管理,重点讲解了foundation框架常用类的使用方法;基础篇(第9~18章)讲解了ios应用开发的框架,包含多状态和多任务、视图和视图控制器、事件和通知、音频和视频等,这些内容是本书的重点;实战篇(第19~20章)详细讲解了两个实战案例的完整开发过程,分别是基于ipad的应用程序“精灵小书柜”和基于iphone的“弹球游戏”,目标是通过两个案例把前面学到知识应用到实践中,帮助读者真正掌握ios应用开发的过程。

]

作者简介

[

  刘一道
  资深Mac/iOS开发工程师,有近10年软件开发经验,精通iOS、Objective-C、Xcode等与苹果开发相关的各项技术,同时对Android和Windows
Phone等移动开发技术也有深入的研究,并积累了丰富的实战经验。出版了《Objective-C程序设计入门与实践》等著作。

]

目录

前言**部分 准备篇第1章 初识ios、objective-c和xcode1.1 认识ios1.1.1 ios的发展历程1.1.2 ios的设计和功能特性1.1.3 ios 7的新特性1.1.4 ios架构1.1.5 ios框架1.1.6 ios系统框架的变迁1.1.7 mac os x和ios平台不同框架的差异性1.1.8 初步了解ios开发者工具1.2 认识objective-c1.2.1 发展历程及版本变化1.2.2 语言性能与分析1.2.3 框架和代码的关系1.3 基于非苹果机平台搭建开发环境1.3.1 前期准备1.3.2 创建用于安装mac os x的vmware虚拟机1.3.3 安装mac os x1.3.4 安装xcode sdk1.4 小结第2章 创建你的**个ios应用程序2.1 应用程序的实现目标2.2 入门的开始2.2.1 新建一个xcode项目2.2.2 在模拟器中查看应用程序的效果2.3 启动一个应用程序2.3.1 探究main.m源文件2.3.2 分析属性列表文件2.3.3 查看串联图2.4 检查视图控制器及其视图2.4.1 如何使用检查器2.4.2 更改视图的背景颜色2.5 对视图进行配置和管理2.5.1 新增用户界面元素2.5.2 为按钮增添一个动作2.5.3 为文本框和标签创建插座2.5.4 打开connections检查器验证连接2.5.5 对文本框进行委托处理2.5.6 让应用程序具有辅助功能2.6 使用视图控制器完成应用程序2.6.1 给用户的名称添加属性2.6.2 实现changegreeting: 方法2.6.3 把视图控制器作为输入文本框的委托2.7 测试应用程序2.7.1 排查和检测代码2.7.2 程序代码清单2.8 小结第二部分 语法篇第3章 objective-c——构建ios应用程序的基石3.1 探窥objective-c语言3.1.1 面向对象语言objective-c是c语言的超集3.1.2 类和对象3.1.3 方法和发消息3.1.4 属性和存取方法3.1.5 块3.1.6 协议和类别3.1.7 类型和编码策略3.1.8 import语句3.2 objective-c 2.0新增特性3.2.1 关联引用3.2.2 快速枚举3.2.3 选择器3.2.4 静态类型的使用3.3 进一步认识块3.3.1 块可以带参数和返回值3.3.2 块可以捕获封闭范围内的值3.3.3 在块内捕获变量值的变化3.3.4 块可以作为函数或者方法的参数3.3.5 用类型定义可以简化块语法3.3.6 使用属性可跟踪块3.4 小结第4章 类——构建应用程序的类型对象原型4.1 认识根类4.1.1 nsobject简介4.1.2 根类和协议4.1.3 根类方法4.1.4 根类接口规范4.1.5 根类实例方法和类方法4.2 如何设计类4.2.1 设计接口4.2.2 设计实现4.2.3 如何使用类名4.2.4 如何比较类4.3 类的类型4.3.1 如何指定静态类型4.3.2 类型的自查处理机制4.4 变量4.4.1 局部变量4.4.2 全局变量4.4.3 实例变量4.4.4 静态变量4.4.5 变量的存储类别4.5 属性4.5.1 属性的声明4.5.2 属性的实现4.5.3 属性类型和相关函数4.5.4 属性的类型编码4.5.5 属性重声明4.5.6 修改父类的属性4.5.7 新旧版本属性运行时的区别4.6 方法4.6.1 方法通用格式4.6.2 方法的调用4.7 继承4.7.1 类的继承关系4.7.2 继承父类的实例变量4.7.3 继承父类的方法4.7.4 哪些类需要被继承4.7.5 对象的合成4.8 方法重写4.8.1 方法重写的规则4.8.2 方法重写的使用4.9 方法重载4.9.1 方法重载的规则4.9.2 方法重载的使用4.9.3 调用还是重载4.9.4 重载的类型4.10 类的扩展4.10.1 类别的用法4.10.2 延伸的用法4.11 异常处理4.11.1 如何启用异常处理4.11.2 如何捕捉不同类型的异常4.11.3 如何抛出异常4.12 小结第5章 对象——构建应用程序的重要“活体”5.1 理解对象5.1.1 对象和根类的关系5.1.2 对象如何构建程序5.1.3 对象动态类型5.1.4 对象的生命周期5.2 创建对象5.2.1 对象分配处理的机制5.2.2 对象初始化方法的原型init5.2.3 初始化方法的返回值5.2.4 init方法的实现5.2.5 多个初始化方法和指定初始化方法5.2.6 使用dealloc方法5.2.7 类工厂方法5.3 对象的所有权5.3.1 对象所有权策略有哪些5.3.2 保留计数的处理机制5.3.3 自动释放所有权5.3.4 共享对象的有效性5.3.5 如何获取所有权5.4 回收对象5.4.1 dealloc方法的实现5.4.2 通过引用返回的对象5.4.3 保留循环的处理机制5.4.4 对象的弱引用5.4.5 资源的有效管理5.5 应用对象5.5.1 验证对象的功能5.5.2 比较对象5.5.3 复制对象5.6 小结第6章 消息和协议——对象之间的通信方式6.1 认识消息6.1.1 消息的基本语法6.1.2 消息处理机制6.1.3 获得方法地址6.1.4 使用隐藏的参数6.2 消息发送6.2.1 向nil发送消息6.2.2 向自己发送消息6.2.3 通过发送消息调用父类方法6.3 消息转发6.3.1 消息转发处理机制6.3.2 与多重继承关系6.3.3 与类继承关系6.3.4 与消息代理对象关系6.4 认识协议6.4.1 协议的分类6.4.2 协议对象6.4.3 预定义接口6.4.4 如何使用预定义方法6.4.5 为匿名对象声明方法6.5 应用协议6.5.1 如何采用一个协议6.5.2 如何服从一个协议6.5.3 协议类型校验处理机制6.5.4 如何实现协议嵌套协议6.5.5 如何引用其他协议6.6 小结第7章 foundation框架——提供基本的系统服务7.1 认识foundation框架7.1.1 foundation类层次结构7.1.2 与core foundation框架的区别7.1.3 如何引用及查询foundation框架信息7.1.4 对象的可变性和不变性7.2 创建和使用值对象7.2.1 创建值对象7.2.2 字符串和nsstring字面常量7.2.3 nsnumber字面常量7.2.4 日期和时间7.3 创建和使用集7.3.1 将对象按某种顺序储存在数组中7.3.2 将键值对储存在字典中7.3.3 将无序对象储存在集合中7.4 foundation框架常用类的使用方法详解7.4.1 数字类型7.4.2 字符串类型7.4.3 数组类型7.4.4 字典类型7.4.5 日期类型7.5 小结第8章 内存管理——应用程序高效运行的基础8.1 内存管理基础知识8.1.1 cocoa的引用计数机制8.1.2 内存管理规则8.1.3 内存管理应用实例8.1.4 内存管理混乱的原因及解决方法8.2 存取方法8.2.1 声明存取方法8.2.2 实现存取方法8.2.3 存取方法的使用8.2.4 实现重置方法8.2.5 应用存取方法常见错误8.3 自动释放池8.3.1 自动释放池工作原理8.3.2 非application kit程序中的自动释放池8.3.3 自动释放池和线程8.3.4 作用域和嵌套自动释放池的关系8.3.5 所有权策略8.3.6 如何实现垃圾回收8.4 内存中复制的处理机制8.4.1 深复制和浅复制8.4.2 独立副本8.4.3 使用alloc和init方式复制8.4.4 使用nscopyobject函数复制8.4.5 可变对象和不可变对象的复制8.4.6 值对象和复制8.5 nib对象的内存管理8.5.1 插座对象实现的内存管理机制8.5.2 nib文件实现的内存管理机制8.6 小结第三部分 基础篇第9章 探究ios应用程序的核心9.1 ios应用程序核心架构9.1.1 ios应用程序的生命周期9.1.2 ios应用程序的主函数9.1.3 应用程序的委托9.1.4 主nib文件9.1.5 事件处理周期9.1.6 应用程序的基本设置模式9.2 ios应用程序的核心对象9.2.1 ios应用程序的常见对象9.2.2 数据模型的定义9.2.3 构建用户界面9.3 ios应用程序包9.3.1 典型的ios应用程序捆绑包9.3.2 信息属性列表9.3.3 程序图标和启动图像9.3.4 nib文件9.4 ios应用程序关键任务的处理机制9.4.1 初始化和终止9.4.2 响应中断9.4.3 低内存警告9.5 ios应用程序的行为定制9.5.1 以景观模式启动9.5.2 和其他应用程序的通信9.5.3 定制的url模式9.5.4 应用程序的偏好设置9.5.5 关闭屏幕锁定9.6 小结第10章 多状态和多任务——ios功能日趋增强的表现10.1 应用程序的状态10.1.1 状态切换遵循的原则10.1.2 应用程序的状态及切换路径10.2 应用程序启动周期10.2.1 加载进入前台10.2.2 加载进入后台10.2.3 主函数10.2.4 启动处理的机制10.3 响应中断10.3.1 基于警告的中断处理机制10.3.2 中断应激处理10.3.3 通话时用户界面的调整处理10.4 前台与后台之间的切换机制10.4.1 从前台切换到后台的流程10.4.2 转换后台时应激处理10.4.3 后台运行时的内存情况10.4.4 从后台回转到前台的流程10.4.5 在唤醒时处理排队的通知10.4.6 应用程序的终止条件10.5 主运行循环10.5.1 主运行循环的运行机制10.5.2 ios应用程序中的事件10.6 后台执行和多任务处理10.6.1 判断设备系统多任务是否可用10.6.2 在后台执行有限长度的任务10.6.3 调度本地通知的递送10.6.4 允许在后台运行的任务10.6.5 选择退出后台的执行10.7 小结第11章 视图——ios应用程序交互的基础11.1 窗口、视图、视图控制器11.1.1 三者之间的关系11.1.2 窗口11.1.3 视图11.1.4 视图控制器11.2 视图的几何属性特征11.2.1 视图坐标系统11.2.2 边框、边界和中心的关系11.2.3 坐标系统变换11.3 视图架构处理11.3.1 视图交互模型11.3.2 视图渲染架构11.3.3 改变视图的层11.3.4 内容模式与比例缩放11.3.5 自动尺寸调整行为11.4 视图的创建和管理11.4.1 创建视图对象11.4.2 视图的标识和命名11.4.3 子视图的添加和移除11.4.4 视图层次中的坐标转换11.4.5 视图的查询11.5 在运行时修改视图11.5.1 实现视图动画11.5.2 配置动画的参数11.5.3 配置动画的委托11.5.4 响应布局的变化11.5.5 重画视图的内容11.5.6 隐藏视图11.6 定制视图对象11.6.1 初始化定制视图11.6.2 绘制视图内容11.6.3 响应事件11.6.4 视图对象的清理11.7 小结第12章 uikit框架——创建基于触摸的用户界面12.1 uikit标准视图的分类12.2 显示视图12.2.1 标签12.2.2 图片视图12.2.3 进度条视图12.2.4 等待视图12.3 控件12.3.1 按钮12.3.2 文本框12.3.3 滑块12.3.4 切换开关12.4 导航视图12.4.1 导航栏12.4.2 标签栏12.5 警告视图和动作表单12.5.1 警告视图12.5.2 动作表单12.6 文本和web视图12.6.1 文本视图12.6.2 web视图12.7 容器视图12.7.1 表视图12.7.2 滚动视图12.7.3 工具栏12.8 其他常用类型12.8.1 分页控件12.8.2 搜索栏12.9 小结第13章 视图控制器——视图的幕后操纵者13.1 视图控制器基础知识13.1.1 视图控制器的功能13.1.2 视图控制器的管理机制13.1.3 视图控制器的分类13.1.4 视图控制器的内容多种展示方式13.1.5 多种视图控制器混合应用13.2 视图控制器的生命周期13.2.1 视图控制器的初始化13.2.2 视图的加载和卸载13.3 标准视图控制器13.3.1 标准视图控制器的功能及使用方法13.3.2 标准视图控制器的应用13.4 分割视图控制器13.4.1 分割视图控制器构建原理及功能13.4.2 分割视图控制器的应用13.5 导航视图控制器13.5.1 导航视图控制器构建原理及功能13.5.2 导航视图控制器的应用13.6 选项卡视图控制器13.6.1 选项卡视图控制器构建原理及功能13.6.2 选项卡视图控制器的应用13.7 翻页视图控制器13.7.1 翻页视图控制器构建原理及功能13.7.2 翻页视图控制器的应用13.8 小结第14章 事件——应用程序的驱动动力14.1 ios系统中的事件14.1.1 事件是如何驱动应用程序的14.1.2 什么是触摸事件14.1.3 什么是运动事件14.1.4 事件和触摸14.1.5 事件的传递14.1.6 响应者对象和响应者链14.1.7 调整事件的传递14.2 常见手势的处理实例14.2.1 触摸事件处理方法14.2.2 单个和多个触碰手势处理方法14.2.3 检测碰擦手势14.2.4 处理复杂的多点触摸序列14.2.5 触摸事件处理技巧14.3 键盘管理14.3.1 接收键盘通告14.3.2 显示键盘14.3.3 取消键盘14.3.4 移动键盘下面的内容14.4 小结第15章 通知——消息的多样化展示15.1 通知的实现原理15.1.1 本地通知15.1.2 推送通知15.1.3 通知的应用场景15.2 通知的相关事务15.2.1 自定义警告声音15.2.2 创建和调度本地通知15.2.3 接收远程通知15.2.4 如何处理通知15.3 推送通知服务15.3.1 推送通知和路径15.3.2 服务的反馈和质量15.3.3 推送通知的安全处理机制15.3.4 通知的负载处理15.4 推送通知的配置和开发15.4.1 沙箱环境和产品环境15.4.2 配置处理流程15.5 实现推送通知服务的通信功能15.5.1 普通提供的通信功能15.5.2 二进制接口和通知的格式15.5.3 服务的反馈15.6 小结第16章 core data框架——管理应用程序的数据模型16.1 认识core data16.1.1 初窥core data特性16.1.2 core data数据管理机制16.1.3 探究core data的本质16.2 core data堆栈配置16.2.1 托管对象和上下文16.2.2 读取请求16.2.3 持久化存储协调者16.2.4 持久化存储16.2.5 持久化文档16.2.6 托管对象模型16.3 core data模块的运作机制及基础类16.3.1 nsmanagedobject-context类16.3.2 nsmanaged-object类16.3.3 nsmanagedobject-context类16.3.4 nspersistentstore-coordinator类16.3.5 nspersistent-document类16.3.6 nsfetch-request类16.4 core data堆栈访问技术16.4.1 创建一个新的托管对象上下文16.4.2 读取托管对象模型和实体16.4.3 添加持久化存储16.5 托管对象的管理16.5.1 读取托管对象16.5.2 读取特定的属性值16.5.3 创建托管对象16.5.4 保存托管对象16.5.5 删除托管对象16.6 小结第17章 音频和视频——强大的多媒体功能支持17.1 初识ios多媒体框架17.1.1 ios声音处理工具17.1.2 core audio框架17.1.3 音频硬件编解码17.1.4 ios支持的音频回放和录制格式17.1.5 core audio音频会话接口17.1.6 ios系统支持的音频单元17.2 录制音频17.2.1 使用avaudiorecorder类进行录制17.2.2 用音频队列服务进行录制17.2.3 音频中断处理17.3 播放音频17.3.1 通过ipod媒体库访问接口播放媒体项17.3.2 使用系统声音服务播放短声音及触发振动17.3.3 通过avaudioplayer类轻松播放声音17.3.4 用音频队列服务播放和控制声音17.3.5 使用openal播放和定位声音17.3.6 解析音频流17.4 iphone/ipad音频的*佳实践17.4.1 操作音频的贴士17.4.2 ios中偏好的音频格式17.5 ios中的视频17.5.1 录制视频17.5.2 播放视频17.6 小结第18章 设备特性——支持多种功能的应用18.1 识别可用的硬件特性18.2 external accessory框架的管道机制18.2.1 声明应用程序支持的协议18.2.2 在运行时连接配件18.2.3 处理和流相关的数据18.2.4 监控与配件有关的事件18.3 访问加速计事件18.3.1 配置加速计18.3.2 选择恰当的更新频率18.3.3 从加速计数据中分离重力成分18.3.4 从加速计数据中分离实时运动成分18.3.5 取得当前设备的方向18.4 core location框架提供定位服务18.4.1 获取用户的当前位置18.4.2 获取方向相关的事件18.5 map kit框架提供地图服务18.5.1 在用户界面中加入地图视图18.5.2 缩放和移动地图内容18.5.3 显示用户的当前位置18.5.4 坐标和像素之间的转换18.5.5 通过反向地理编码器获取地标信息18.6 地图上注解的实现18.6.1 在地图视图上显示注解18.6.2 添加和移除注解对象18.6.3 定义注解视图18.6.4 创建注解视图18.6.5 处理注解视图中的事件18.7 uikit框架的应用18.7.1 显示照相机界面18.7.2 关闭照相机界面18.7.3 显示照片选取器界面18.8 使用邮件编辑界面18.9 小结第四部分 实战篇第19章 ipad应用开发实战——精灵小书柜19.1 系统的总体设计方案19.1.1 系统模块组成19.1.2 启动项目19.2 组装书柜19.2.1 书柜的实现19.2.2 书柜的框架及组装19.2.3 设置书柜的显示效果19.3 在小书柜上展示书的封面19.3.1 构建书的封面19.3.2 将书的封面展示在书柜中19.3.3 构建多面书柜19.3.4 通过手势展示多面书柜19.4 阅读书的内容19.4.1 设计内容显示的模板19.4.2 书的封面与内容关联19.4.3 动画效果翻页19.4.4 返回书柜主界面19.5 小结第20章 iphone应用开发实战——弹球游戏20.1 认识游戏引擎20.1.1 cocos2d游戏引擎20.1.2 box2d物理引擎20.1.3 chipmunk物理引擎20.1.4 游戏引擎组成结构20.1.5 物理引擎中的刚体20.2 cocos2d框架中的常用类20.2.1 节点类ccnode20.2.2 场景类ccscene20.2.3 层类cclayer20.2.4 标签类cclabel20.2.5 动作类ccaction20.2.6 导演类ccdirector20.2.7 精灵类ccsprite20.3 弹球游戏的准备工作20.3.1 弹球游戏实现目标20.3.2 安装cocos2d-iphone20.3.3 启动项目的创建20.3.4 程序控制权的转交20.4 实现场景及其互动对象20.4.1 添加自定义的游戏场景20.4.2 创建场景类gamescene20.4.3 创建world对象和边界框20.5 制作弹球20.5.1 添加弹球精灵20.5.2 创建弹球body并添加冲力20.5.3 使用tick方法刷新对象20.6 设计球拍20.6.1 增加球拍20.6.2 移动球拍20.6.3 限制球拍20.6.4 球反弹的优化处理20.7 方块的实现20.7.1 增加方块20.7.2 销毁方块20.8 游戏逻辑处理20.8.1 碰撞检测机制20.8.2 球碰到屏幕底部20.8.3 游戏结束的条件20.8.4 添加游戏结束场景20.9 添加游戏音乐20.10 小结

封面

iOS 7 iPhone/iPad应用开发技术详解

书名:iOS 7 iPhone/iPad应用开发技术详解

作者:刘一道 著

页数:507

定价:¥79.0

出版社:机械工业出版社

出版日期:2013-11-01

ISBN:9787111440512

PDF电子书大小:155MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注