Introduction 介绍
2016年3月,我定下了写这本书的计划。那个时候,Swift 2.2 的语法是标准语法,Swift 3.0 才发布了几个月。在那个时间节点上,Swift 自诞生以来已经走了一段相当长的路,并且已经有一群强大的开发者追随着,他们可以只用 Swift 快速开发出稳定的软件。
那么为什么要写一本关于 Objective-C 的书呢?更重要的是,为什么要阅读一本关于 Objective-C 的书呢?在「Swift 是苹果开发者的未来」这一点上我毫不怀疑。但是与此同时,我依然能非常清晰地认识到,如果你决意走上这条路,Objective-C 是绕不开的,你必须要了解如何读写这门语言。
而因为 Objective-C 是一门古老,并且发展了许多年的语言,使得这一点变得复杂了起来。我已经发布了超过200个用 Objective-C 编写的 app,在比较旧的源代码和新的源代码的过程里,我发现了 Swift 随着时间推移的发展过程。
不像 Swift 语法,在几个月的时间里旧语法就会被弃用,在新的语法体系里无法再运行,几乎所有 Objective-C 的源码今天依然可以运行。这对于不想继续重构软件的公司来说,是非常贴心的。但是,对于开发者来说,这就意味着,你会在同一个项目里发现旧语法和新语法混用。有一些地方你可能会发现相当粗糙的 Objective-C 代码,也就是说,如果用今天的 Objective-C 语法来写的话,是不会写成这样的,但这种情况大概不可避免。