iOS编程指南
Alasdair Allan
周亮, 徐可 译
出版时间:2014年03月
页数:375
“本书包含了渴望能快速上手iOS编程的程序员所需要的一切,内容详实并且通俗易懂,强烈推荐。”
——Fraser Speirs
Connected Flow公司总监,FlickrExport应用作者

通过阅读本书,你可以快速了解iPhone、iPad和iPod touch平台上的编程。本书通过非常容易上手的示例来讲解从打开Xcode到提交产品到App Store所需要的所有知识。
本书的内容和示例代码都根据iOS 6和Xcode 4编写。不管你是刚刚准备学习Mac平台编程的程序员,还是准备转向学习iOS开发的经验丰富的Mac开发者,本书都适合你阅读。

本书包括如下内容:
· 探讨开发本地化应用的优缺点;
· 介绍Objective-C和Cocoa Touch框架;
· 深入讲解构建用户界面的表视图以及相关类;
· 处理数据输入、解析XML和JSON文档,使用SQLite持久化数据;
· 使用iOS传感器,包括加速度计、磁力计、照相机和GPS;
· 在应用中使用Core Location框架和MapKit框架;
· 在应用中集成苹果的iCloud服务;
· 介绍发布应用到App Store的完整步骤。

Alasdair Allan是埃克塞特大学(University of Exeter)的高级研究员,参与建立了一个基于分布式对等网络的望远镜系统。他还参与开发了一些开放硬件,并开发了很多iPhone应用来管理基于云计算的服务以及监控分布式传感器网络。
  1. 第1章 为何选择本地化应用 
  2. 1.1 优点和缺点 
  3. 为何要开发本地化应用? 
  4. 1.2 发行周期 
  5. 1.3 做好了用户自然会来
  6. 第2章 成为一名开发者
  7. 2.1 注册成为ios开发者
  8. 2.2 加入ios开发者计划
  9. 2.3 mac开发者计划
  10. 2.4 安装ios sdk 
  11. 关于beta版本
  12. 2.5 准备你的ios设备
  13. 2.5.1 创建开发证书
  14. 2.5.2 获取开发设备的udid 
  15. 2.5.3 创建app id
  16. 2.5.4 创建移动描述文件
  17. 2.5.5 让你的设备支持开发
  18. 第3章 你的第一个ios应用
  19. 3.1 objective-c基础
  20. 3.1.1 面向对象编程
  21. 3.1.2 objective-c的对象模型
  22. 3.1.3 objective-c的基本语法
  23. 3.2 创建工程
  24. 3.2.1 浏览xcode工程
  25. 3.2.2 interface builder 
  26. 3.2.3 设计用户界面
  27. 3.2.4 关联ui控件和代码
  28. 3.2.5 在模拟器上运行
  29. 3.2.6 在iphone上运行
  30. 第4章 objective-c编程
  31. 4.1 声明和定义类
  32. 4.1.1 声明类的接口
  33. 4.1.2 定义类的实现
  34. 4.1.3 强类型与弱类型
  35. 4.1.4 属性
  36. 4.1.5 合成(synthesizing)属性
  37. 4.1.6 点句式(dot syntax) 
  38. 4.1.7 方法声明
  39. 4.1.8 方法调用
  40. 4.1.9 调用nil对象的方法
  41. 4.2 内存管理
  42. 4.2.1 创建对象
  43. 4.2.2 自动回收池(autorelease pool)
  44. 4.2.3 alloc,retain,copy和release周期 
  45. 4.2.4 自动引用计数
  46. 4.2.5 dealloc方法
  47. 4.2.6 处理内存警告(memory warnings) 
  48. 4.3 常用ios设计模式
  49. 4.3.1 mvc模式
  50. 4.3.2 视图和视图控制器
  51. 4.3.3 委托和数据源模式
  52. 4.4 总结
  53. 第5章 基于表视图应用
  54. 5.1 创建工程
  55. 5.2 创建表视图
  56. 运行代码
  57. 5.3 为表视图填充内容
  58. 5.4 创建模型
  59. 5.4.1 添加城市
  60. 5.4.2 添加图片
  61. 5.5 关联控制器和模型
  62. 用alert窗口测试功能
  63. 5.6 添加导航控制器(navigation control) 
  64. 5.7 添加城市视图
  65. 5.8 编辑模式
  66. 5.8.1 删除城市
  67. 5.8.2 添加城市
  68. 5.8.3 添加新城市的界面
  69. 5.8.4 保存城市数据
  70. 第6章 其他视图控制器
  71. 6.1 工具类应用(utility application) 
  72. 电量监控应用
  73. 6.2 标签栏应用(tab bar application) 
  74. 添加标签视图
  75. 6.3 联合使用多种视图控制器
  76. 6.4 模态视图控制器
  77. 修改city guide应用
  78. 6.5 图片选择视图控制器
  79. 在city guide应用中加入图片选择器
  80. 6.6 主从视图(master-detail)应用
  81. 创建一个通用(universal)应用
  82. 6.7 popover控制器
  83. 第7章 访问网络
  84. 7.1 监测网络状态
  85. reachability类
  86. 7.2 在应用中嵌入浏览器
  87. 7.2.1 网页视图控制器
  88. 7.2.2 显示静态html文件
  89. 7.2.3 从uiwebview中获取数据
  90. 7.3 发送邮件
  91. 7.4 从互联网获取数据
  92. 7.4.1 同步请求
  93. 7.4.2 异步请求
  94. 7.4.3 使用web服务
  95. 第8章 处理数据
  96. 8.1 数据输入
  97. 8.1.1 uitextfield及其委托
  98. 8.1.2 uitextview及其委托
  99. 8.2 解析xml 
  100. 8.2.1 使用libxml2解析xml 
  101. 8.2.2 使用nsxmlparser解析xml 
  102. 8.3 解析json 
  103. 8.3.1 nsjsonserialization 
  104. 8.3.2 json framework 
  105. 8.3.3 抓取twitter热门话题(trending) 
  106. 8.3.4 使用social 框架
  107. 8.3.5 twitter trends应用
  108. 8.4 正则表达式
  109. 8.5 存储数据
  110. 8.5.1 使用纯文本文件保存数据
  111. 8.5.2 使用sql数据库保存信息
  112. 8.5.3 core data框架
  113. 第9章 使用传感器
  114. 9.1 硬件支持
  115. 9.1.1 网络可用性
  116. 9.1.2 相机可用性
  117. 9.1.3 音频输入可用性
  118. 9.1.4 gps可用性
  119. 9.1.5 磁力计可用性
  120. 9.2 设置应用的硬件需求
  121. 9.2.1 wifi长连接
  122. 9.2.2 后台运行模式
  123. 9.3 iphone和ipad的不同
  124. 9.4 使用camera 
  125. 9.5 core motion框架
  126. 9.5.1 轮询运动数据
  127. 9.5.2 订阅运动数据
  128. 9.5.3 加速度计
  129. 9.5.4 陀螺仪
  130. 9.5.5 磁力计
  131. 9.6 使用近距离感应器
  132. 9.7 使用震动器
  133. 第10章 地图和定位
  134. 10.1 core location框架
  135. 设备的朝向
  136. 10.2 基于位置的天气
  137. 10.2.1 反向地理编码
  138. 10.2.2 正向地理编码
  139. 10.2.3 clplacemark对象
  140. 10.2.4 完善天气应用
  141. 10.3 定位与mapkit 
  142. 10.4 地图标记
  143. 第11章 icloud介绍
  144. 11.1 怎样使用icloud? 
  145. 11.1.1 icloud备份
  146. 11.1.2 获取授权描述文件
  147. 11.2 使用键值对存储
  148. 11.3 总结
  149. 第12章 与系统应用集成
  150. 12.1 应用选项
  151. 12.2 accounts框架
  152. 12.3 social框架
  153. 12.3.1 发送twitter信息
  154. 12.3.2 发送facebook信息
  155. 12.4 自定义url scheme 
  156. 12.4.1 使用自定义url scheme 
  157. 12.4.2 注册自定义url scheme 
  158. 12.5 媒体播放
  159. 12.6 使用地址簿
  160. 12.6.1 使用交互方式选择联系人
  161. 12.6.2 使用编程方式选择联系人
  162. 12.7 发送短信
  163. 第13章 发布你的应用
  164. 13.1 添加还缺少的功能
  165. 13.1.1 添加图标
  166. 13.1.2 添加启动图片
  167. 13.1.3 修改显示名称
  168. 13.1.4 启用自动旋转
  169. 13.2 编译与签名
  170. 13.2.1 ad hoc发布
  171. 13.2.2 developer-to-developer发布
  172. 13.2.3 app store 发布
  173. 13.3 提交到app store 
  174. 13.3.1 为app store发布构建你的应用
  175. 13.3.2 app store资源中心
  176. 13.4 审核被拒的原因
  177. 第14章 未来之路
  178. 14.1 cocoa和objective-c 
  179. 14.2 web应用
  180. 14.3 phonegap 
  181. 14.4 core data
  182. 14.5 应用内购买
  183. 14.6 core animation 
  184. 14.7 game kit 
  185. 14.8 编写游戏
  186. 14.9 界面和交互
  187. 14.10 配件
书名:iOS编程指南
作者:Alasdair Allan
译者:周亮, 徐可 译
国内出版社:人民邮电出版社
出版时间:2014年03月
页数:375
书号:978-7-115-34664-3
原版书书名:Learning iOS Programming, 3rd Edition
原版书出版商:O'Reilly Media
Alasdair Allan
 
Alasdair Allan is a senior research fellow in astronomy at the University of Exeter. As
part of his work there, he is building a distributed peer-to-peer network of telescopes
that, acting autonomously, will reactively schedule observations of time-critical events.
On the side, Alasdair runs a small technology consulting business writing bespoke
software and building open hardware, and he is currently developing a series of iPhone
applications to monitor and manage cloud-based services and distributed sensor
networks.