如何自学iOS编程?(iOS入门到精通的全路线)
直切正题
硬件
- 电脑 Mac
iOS 必须使用OS X
系统开发,所以iOS的学习成本略高,必须要有一款Mac
(当然,黑苹果
也可以满足开发需求,但是编译起来较慢,想着简单了解或者前期不打算投入太大的朋友可以尝试,教程请童靴自行百度),所以iOS
开发者自带装逼光环,Z君在大学时就以学习iOS
为借口,买了一台Mac,走向了装逼之路... - 手机
Xcode中自带手机模拟器,用来调试代码(展示成果),所以假如没有苹果手机的小伙伴也不用担心,开发中用模拟器去调试就好了。
开发工具
- Xcode
Xcode是苹果官方推出的一款IDE(集成了代码编写功能、分析功能、编译、调试功能等一体化的开发软件),iOS
开发相比于其他语言编写,不需要手动的去配置各种环境,前期配置非常简单,在App Store
中直接搜索下载Xcode
安装即可。
语言
iOS有两种开发语言,分别为Objective-C
和Swift
。
- Objective-C(简称OC)
Objective-C诞生于1986年,在当时是唯一可以为iPhone和iPad编程的语言。随着iPhone
、iPad
在市场的占有率逐渐增加,Objective-C
迎来了它的春天。苹果公司也是不断在优化更新这款语言,降低它的学习难度。
苹果针对Objective-C
有一份官方文档-《Objective-C官方文档》。这篇文档不再更新。 - Swift
Swift是苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Objective-C
共同运行于Mac OS
、iOS
平台,用于搭建基于苹果平台的应用程序。Swift
相比Objective-C
而言,语法简洁、代码易懂。Swift也是苹果目前力推的语言。《Swift官方介绍》
虽然苹果大力提倡使用Swift
进行iOS
开发,但是一些公司由于之前采用OC
编写的项目过于庞大,再加Swift
仍处于青壮时期,考虑到时间和成本问题,一些公司并未强制采用Swift
开发。
代码管理
- git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。简单来说就是可以管理你的代码,有类似游戏存档归档的功能,又不限于此的多人协同功能,比如合并代码,解决冲突等。
代码管理工具
-
SourceTree,上边讲了
git
的代码管理方式,git
可以直接在终端中采用命令行的方式直接管理,但是对于新手来说,可视化低,在并没有完全理解的情况下直接操作,并不是特别容易,前期花费太多时间在git
的学习上,相对不划算,推荐一款可视化的代码管理工具SourceTree
。
书籍
初级
刚开始着手开发,有语言基础的同学,建议只看一些语法即可,直接上手Xcode,一边写,一边遇到问题,再去解决,这样可以快速看到成果,更加有兴趣。
-
《iOS开发指南:从Hello World到App Store上架》: 关东升 出版社: 人民邮电出版社。如果你是一个没有任何语言基础的,推荐看看这本书,推荐有两个原因:1.版本相对其他书籍还新一些 2.书籍内容为循序渐进的方式给读者灌输,实用性更强。
-
《Objective-C编程之道:iOS设计模式解析》:Carlo Chung 出版社: 人民邮电出版社 译者:刘威。看完上本书后,也推荐下这本编程之道,里边实用技能偏多,两本相互补充,相信你基本已经可以开发简单的项目。
-
《Xcode江湖录》:李俊阳,杜承垚,胡雪婷 出版社: 机械工业出版社,里边详细的介绍了Xcode的基本使用和部分高级功能,不建议大家开始花时间在深度学习IDE上,下边有一些优质博客中针对Xcode的简单介绍,可以满足前期开发。
-
《The Swift Programming Language》,提到Swift避不开的一本书,由苹果官方发布,权威性不言而喻。有一帮可爱的小伙伴协同翻译了中文版 《The Swift Programming Language》中文版,想学Swift的小伙伴推荐看一看。
进阶
如果大家看过上边的书籍或者已经get里边的技能,我相信你已经可以配合团队开发常见的应用了。下面将推荐几本进阶的书籍,看过之后,相对你会对编程有质变的理解。
-
《Design Patterns: Elements of Reusable Object-Oriented Software》:GoF(Erich Gamma、Richard Helm、Ralph Johnson、 John Vlissides),出于复用代码、增强代码维护性的目的,设计模式诞生。这本书已C++为范例,学术风格。有人将这本书定义为设计模式的红宝书。
-
《Head First设计模式》(中文版):EricFreeman & ElisabethFreeman 出版社:中国电力出版社。《HeadFirst设计模式》共有14章,每章都介绍了几个设计模式,完整地涵盖了四人组版本全部23个设计模式。有意思的是,书中搭配大量的插图,阅读起来生动有趣。而且此书的产品设计应用神经生物学、认知科学,以及学习理论,这使得这本书能够将这些知识深深地印在你的脑海里,不容易被遗忘。大力推荐。
博客&论坛
给大家推荐几个优质博客