前言

两年前,当我第一次收到清华大学出版社王金柱编辑的邀请,建议写一本帮助新手入门Swift语言iOS开发方向的工具书时,忐忑的心情至今还记忆犹新。经过再三的考虑与矛盾,我最终决定接下这个任务,当然这并不是由于我对自己编程技能有足够的信心,而是觉得我在学习过程中遇到的问题、走过的弯路、积累的经验如果可以整理成册并且提供给初学者一些帮助,也将是一件非常有意义的事情。后来经过半年多的努力,《Swift 3从入门到精通》顺利出版并且得到了不错的回应。尽管在写作的过程中充满了艰辛,但是看到自己的作品可以给读者带来切实的帮助,我也收获到了额外的喜悦与幸福感。

如今,距离Swift编程语言第一版的发布已经快5个年头了,其间Swift语言改变了很多,也优化了很多,从1.0到3.0版本,Swift语言经历了质的变化,从3.0到4.0版本,Swift语言迎来了完善与稳定。Swift语言是少有的在短时间内大版本更迭的编程语言,体现了这门语言不拘一格、大胆创新的特点。本书基于《Swift 3从入门到精通》,优化了部分过时的内容,新增了Swift 4的新特性,更重要的是,总结了读者的反馈,内容更加面向应用,插入了大量的面试题,并做了试题解析与面试指导。

到本书截稿,Swift语言最新的版本为4.2,即本书采用的Swift语言版本。

本书内容特色

本书分为3大部分:


· 第1部分将为读者介绍Swift语言的语法,这也是本书后面部分的基础。这一部分的主要内容包括数据类型、流程控制语句、运算符、函数与闭包、枚举、结构体、类、属性与方法、对象构造与析构、内存管理、异常处理、扩展与协议等。本部分内容将竭力为读者全面介绍Swift语言的语法特点与应用场景,并且每一章后面都附带有习题供读者对本章所学知识进行测试与应用。

· 第2部分为iOS开发基础部分,目前Swift语言应用的主要场景是在iOS应用的开发。这部分内容将系统地向读者介绍iOS开发技能,包括独立UI控件的应用、视图界面逻辑的开发、动画与布局技术、网络与数据处理技术等。掌握了这些技能,从理论上讲读者已经具备独立开发一款iOS应用程序的能力。

· 第3部分为实战部分。学习编程,实战是必经的一关。本书为读者安排了3个实战项目,由简入难,并且各个项目的侧重点分布均匀,力图全面锻炼读者的实际开发能力。


除了3大部分循序渐进的技能学习,在每一章的最后都加入了练习题与模拟面试。练习题可以帮助读者更好地理解和掌握当前章节所学习的内容,模拟面试可以帮助读者提高实战经验,得到应用能力的提高。

本书的读者对象

本书是一本从基础到实战较全面的Swift编程语言学习教程。如果你符合下面的特点,那么本书就是为你定制的:

(1)对iOS系统软件开发感兴趣,想要从事iOS软件开发行业。

(2)对编程感兴趣,对Swift编程语言感兴趣。

(3)熟悉Objective-C语言,想要尝试Swift语言的开发者。

(4)需要进行面试指导的Swift求职者。

本书源代码下载

读者可以扫描下面的二维码下载本书源代码:

如果下载有问题,请发送电子邮件至booksaga@126.com,邮件主题设置为“Swift 4从零到精通iOS开发代码”。

建议

编程是一门动手性很强的技能,因此在学习本书时,读者首先需要搭建好自己的开发环境(本书第1章有介绍)。在学习书中内容时要对照书中代码进行实际操作,并且本书的配套资源中也有书中所引用的全部代码,读者在学习时可以进行参考对照。如果读者没有良好的Swift语言基础,在学习本书时,请务必根据章节的顺序安排进行学习,只有有了良好的语言基础,再学习后面章节的时候才能得心应手。

读者也可以加入QQ群(203317592),与大家进行iOS开发技术交流。

致谢

本书能够顺利完成,首先要感谢家人对我写作的支持。另外,也要感谢朋友们的无私帮助。尤其要感谢吕远同学,我们曾经一起学习、一起工作、一起教学、一起创业,人生有如他这样志同道合的朋友是我的幸运。最后,感谢所有读者,我们都是编程途中的学习者,你们的努力和认可让我坚定不移地去做分享知识这件有意义的事,我们一起努力,我们一起前进!


张益珲

2019.1.7