图书前言

一、编写本书的目的 

随着中国移动互联网行业的蓬勃发展,几年前,我也积极投身到互联网创业中。在创业方 

向的选择上,几经尝试,最终选择了互联网教育。一方面是因为希望为中国的互联网企业提供 

更多的合格人才;另外一方面也希望为广大的学子提供一个高质量、低价格的学习平台。目前, 

我国的高等教育的人才供给与市场需求之间还存在着巨大的偏差,特别在移动开发兴起的前几 

年,能够熟练掌握移动应用开发技能的工程师极为稀缺,因而造成了企业用人成本居高不下。 

互联网企业通常只能靠高薪挖猎才能获得心仪的员工,这严重制约了互联网企业,特别是中小 

互联网企业的创新与发展步伐。为了解决供需两端的矛盾,我就在思考能否提供一本高质量且 

低价格,既无学习门槛且又符合最佳项目实践的图书呢?从去年开始,我和我的伙伴们一同开 

始筹划编写这本书,把我们在实践教学过程中以及实践开发过程中的经验进行提炼和总结,本 

书适合没有任何移动开发技术的读者从零开始学习,并且能够快速掌握实际工作中最常使用的 

核心技术,做到合理利用时间且有的放矢地进行学习。 

移动技术的开发经过几年的竞争,已经形成了两大方向 :iOS 以及 Android。Android 平台 

的用户数量巨大,且 Android 开发以 Java 语言为基础,所以之前很多从事 Java 开发的工程师 

都转型成为 Android 开发工程师,其入门门槛相对较低。而苹果的 iOS 系统,由于其采用的语 

言是 Objective-C,在最初阶段能够熟练掌握该门语言的工程师数量极为稀缺,因此造成了 iOS 

开发的入门门槛比较高。由于 iOS 系统是一个相对封闭的系统,其前期的语言学习有一定难 

度,但是一旦入门之后,其进阶学习的难度要比 Android 平台容易很多。虽然目前 Android 平 

台的用户数量超过 iOS 平台,但苹果设备在工业设计、用户体验、客户价值等方面都有很大的 

优势。 

二、本书的主要内容 

在开始编写本书之前,我们团队内部针对究竟该采用 Objective-C 语言为主,还是 Swift 

语言为主,展开了激烈的讨论。由于大家学习一门语言更多的目的是出于就业需要,综合目前 

国内的现状,我们认为在目前阶段还是需要以 Objective-C 语言为主。虽然苹果公司官方以及 

国内外很多媒体都在大力推广 Swift 语言,但就国内现状而言,Swift 语言还不是一门成熟且 

被普遍使用的语言,但我们相信在 2~3 年以后,Swift 语言一定会有较快的发展,而如果从就 

业角度考虑,我们认为还是需要优先掌握 Objective-C 语言。在介绍 iOS 平台的基础知识过程中, 

我们使用了 Objective-C 语言,但对 Swift 语言也提供了入门使用的语法介绍,有兴趣的读者 

可以使用 Swift 语言把前面的代码进行重写。另外,从 2015 年开始,React Native 变得越发火热, 

为了紧跟技术发展趋势,同时为了增加大家的就业竞争力,我们在本书中也加入了对 React Native 技术的 

介绍。总之,全书的内容是紧紧围绕就业这个目的展开的,如果你想成为一名 iOS 开发工程师,本书会是 

你的一个好选择。 

本书包括六大部分,24 章。 

第 1 部分介绍了 Objective-C 语言。如果完整地介绍 Objective-C 语言,需要一本厚厚的书籍,而我 

们把 Objective-C 语言在日常编程工作中最常使用的功能进行了提炼,让大家能够快速地掌握 Objective-C 

语言中最核心的内容。 

第 2 部分以 UIKit 框架为主,介绍了 iOS 开发中构成界面所需的各种控件,同时重点介绍了在实际应 

用中广泛使用的几种控制器,包括普通控制器、导航控制器等。 

第 3 部分提供了 iOS 开发中使用的进阶内容,包括多线程技术、数据持久化技术、网络、地图、传感器、 

核心绘图、核心动画、消息推送、证书管理以及应用发布等内容,使读者能够对 iOS 开发中的高级知识点 

具备完整的认知。 

第 4 部分介绍了在 iOS 开发中使用的第三方开源框架和工具。程序员的世界是一个开放的世界。开放、 

开源应该是每个致力于从事技术岗位的程序员的追求。借助第三方开源框架以及工具能够帮助我们极大地 

提升开发效率,学会使用其他人提供的“梯子”已经是当前每个程序员必须掌握的技巧。 

第 5 部分我们提供了 Swift 语言的介绍。虽然 Swift 语言目前在国内还没有完全成为主流,并且其自 

身也存在一些不完善的地方,但提前掌握 Swift 语言的基础对于将来向 Swift 语言过渡是大有益处的。 

第 6 部分是 React Native 技术的介绍。React Native 是 Facebook 于 2015 年开源的跨平台移动应 

用开发框架,React Native 之所以近一两年非常火热,其中一个重要原因在于其能够同时完成 iOS 以及 

Android 两个客户端的编写。在 React Native 的章节中我们着重介绍了 React Native 开发环境的部署、重 

要概念以及常用控件的使用,使读者能够由浅入深地逐步掌握该项技术的核心用法。 

三、配书资源 

为了帮助各位读者学习,我们团队录制了配套教学视频,每个视频的长度都控制在 10 分钟左右,便 

于大家能够在最短的时间内掌握每个知识点的核心内容,欢迎各位读者到清华大学出版社官网下载或联系 

作者获取(www.99ios.com)。另外,针对每个章节,我们都提供了示例代码,也欢迎各位读者下载。 

四、反馈与勘误 

欢迎广大读者对本书做出反馈,让我们知道本书中哪些部分是您喜欢的或者哪些部分是需要完善的。 

如果您对本书有任何建议,请发送邮件至 3300170691@qq.com。 

虽然我们团队十分用心确保内容的准确性,但错误依然难以避免。如果在阅读过程中,您发现了书中 

存在的错误,非常感谢您能反馈给我们,请将错误内容发送至 3300170691@qq.com,这不仅能够帮助其他 

读者解除疑惑,也可以帮助我们在下一个版本中进行改善。 

五、致谢 

完成一本书籍的编写是对技术、体力以及意志的综合考验,我们团队牺牲了无数的休息时间才完成了 

全书的编写。首先,需要感谢清华大学出版社的编辑在编写过程中给予我们的耐心指导。其次,要感谢我 

的伙伴们,特别是汤海波以及闫珍完成了 React Native 以及 Swift 内容的编写,并对全书的内容进行了审核 ;李维佳作为我最优秀的学生完成了全书内容的整理以及案例代码的编写。最后,感谢我的爱人,在我 

编写本书期间承担起了全部的家庭事务 ;2017 年恰逢我的父母六十大寿,在此也祝愿两位老人身体健康, 

每天都有好心情! 

由于时间仓促,书中难免有不妥之处,请读者原谅。 

史昕 

2017 年 12 月