如何自学iOS编程?(iOS入门到精通的全路线)

直切正题

硬件

  • 电脑 Mac
    iOS 必须使用OS X系统开发,所以iOS的学习成本略高,必须要有一款Mac(当然,黑苹果也可以满足开发需求,但是编译起来较慢,想着简单了解或者前期不打算投入太大的朋友可以尝试,教程请童靴自行百度),所以iOS开发者自带装逼光环,Z君在大学时就以学习iOS为借口,买了一台Mac,走向了装逼之路...
  • 手机
    Xcode中自带手机模拟器,用来调试代码(展示成果),所以假如没有苹果手机的小伙伴也不用担心,开发中用模拟器去调试就好了。

开发工具

  • Xcode
    Xcode是苹果官方推出的一款IDE(集成了代码编写功能、分析功能、编译、调试功能等一体化的开发软件),iOS开发相比于其他语言编写,不需要手动的去配置各种环境,前期配置非常简单,在App Store中直接搜索下载Xcode安装即可。

语言

iOS有两种开发语言,分别为Objective-CSwift

  • Objective-C(简称OC)
    Objective-C诞生于1986年,在当时是唯一可以为iPhone和iPad编程的语言。随着iPhoneiPad在市场的占有率逐渐增加,Objective-C迎来了它的春天。苹果公司也是不断在优化更新这款语言,降低它的学习难度。
    苹果针对Objective-C有一份官方文档-《Objective-C官方文档》。这篇文档不再更新。
  • Swift
    Swift是苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Objective-C共同运行于Mac OSiOS平台,用于搭建基于苹果平台的应用程序。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个设计模式。有意思的是,书中搭配大量的插图,阅读起来生动有趣。而且此书的产品设计应用神经生物学、认知科学,以及学习理论,这使得这本书能够将这些知识深深地印在你的脑海里,不容易被遗忘。大力推荐。

博客&论坛

给大家推荐几个优质博客

  • onevcat ,王巍,一位中国的 iOS / Unity 开发者。
  • ObjC 中国 ,ObjC 中国,主要由王巍维护,其中包括两大内容,分别是ObjC 期刊ObjC 书籍。期刊已经不再更新,但是里边24篇文章确实很赞👍,推荐+10086。书籍里边的大多是Swift的译文,有兴趣的小伙伴可以看看。
  • 唐巧

推荐阅读更多精彩内容

  • 俗话说:“民以食为天”,食更是深受人们的喜欢,“玉盘珍馐直万钱”,足以体现出美味的价值。中秋佳节正当前,家宴上一定...
    梦尝客阅读 54评论 0 0
  • 今晚在嘉陵江畔的一家青旅住下,老板很帅,开窗就可看见浑如流过我家黄河水般的嘉陵江水,房客来自各地。本想靠旅...
    炸毛狮子座阅读 27评论 0 0
  • 颜可素,眼须色;笔随手,手从心。 外人眼里,我从小到大是个勤快的主儿,干活也比大部分人要麻利和自觉,只有自己知道我...
    爱瑋儿阅读 1,350评论 27 87
  • 九月相聚六月伤,东西奔赴有谁殇。 斗转星移八月至,遥望前途两茫茫。
    笔殇无业阅读 13评论 0 0
  • 每个人的生命当中 都有过一个 “明月清风予我 只是爱而不得”的爱人 或许 那是生命深处最记忆犹新的一抹残红 遇...
    Btk凌岚阅读 40评论 0 3