转自:http://ourcoders.com/thread/show/117/编程
应该不少人看过了,发出来给没有看过的。。架构
有些文档都是很早的了,但仍是涵盖了许多基础知识,值得一看框架
有些能够直接去苹果官网查看最新版本的,一些文档苹果已经更新到iOS7了异步
这里咱们就介绍自学iOS开发应该遵循或者说咱们推荐的必读文档的阅读顺序。ide
阅读顺序:工具
首先应该看的是Getting Started里面的《立刻着手开发 iOS 应用程序 (Start Developing iOS Apps Today)》(中英文版本皆有,苹果官方的翻译)。这个文档讲的很浅,可是是创建概念的文档,你之后在开发里面常常遇到的概念,在这里都有包含,特别注意是,这个文档看起来简单,可是每页下面的相关文章,不是选读,都是必读。学习
即便是不少作了iOS开发好久的同窗,其实也有不少概念上的误解,现代程序开发愈来愈简单,工具愈来愈强大,每每有些误解也能够继续前行,可是实际上不创建扎实的基础是很吃亏的,每每后面理解和解决一个不难解决小问题都要付出不少辛苦。开发工具
阅读这个文档的目的和检测标准是,之后你看到iOS开发中的基本概念,都大体全部了解。动画
读完《立刻着手开发 iOS 应用程序 (Start Developing iOS Apps Today)》后,应该去看Your XXX iOS App系列这个系列不是什么很难的文章,你也没必要着急先去学习Objective-C,学什么C语言就更不要着急。我推荐的学习方法是有成就的逐步学习法。在学习系统体系架构、Objective-C以前,你能够先按照文档写一个全天下最简单的App,完成学习过程当中第一个里程碑。在这个过程当中不用担忧有什么疑问,有什么不懂,先照着作就是。ui
阅读这三个文档的目的和检测标准是,把这三个Demo App作出来在模拟器上跑起来。
在这个过程当中,你对开发工具的基本认识就创建起来了,也有了成就感,去了魅(就是消除了对iOS开发的神秘感)。
再往下,建议你去看《iOS Technology Overview》(iOS技术概览),iOS不是一个技术,而是一堆技术,前一篇讲到文档导航区域的分类,框架分类的时候,我说不细讲的缘由就在于此,你要作一个动画应该用Core Animation仍是OpenGL?你要作一些文本相关操做应该用Core Text仍是什么,就是看这里。
学习现代的程序开发,语言和框架并重。咱们Tiny4Cocoa叫作这个名字的缘由就是,iOS/Mac开发者的表明每每就是这个Cocoa框架,就是这个SDK。大多数你所须要的功能都躺在框架里面,你知道框架的结构,你才知道怎么去寻找相关的技术资料。
阅读这个文档的目的和检测标准是,遇到具体问题,知道应该去看哪方面的文档。
再下来,建议阅读的是《iOS Human Interface Guidelines》,Mac/iOS平台虽然也是百花齐放各种程序、App都有,可是整体看来,大多数优秀App的UI看起来都和整个系统很协调。这和Windows以及不少其余平台彻底不一样。这是为何呢?
很大程度就归功于《Human Interface Guidelines》文化,所谓Human Interface Guidelines就是用户界面的规范,在苹果它还专门有一个缩写叫作HIG,是天条同样的东西。全部的App都推荐遵循HIG,遵循了HIG,你作的东西用户看起来就会以为和整个系统很协调。即便是你要作一些创新的设计,你势必会打破HIG的限制,可是你这个时候仍旧应该遵循HIG的精神。
此外,你阅读HIG的很重要一点是了解整个UI结构和UE行为的逻辑机理,这样才能在你设计界面的时候有所依据。
阅读这个文档的目的和检测标准是,看到任何一个App,你能够知道它的任何一个UI是系统控件,仍是自定义控件,它的层次关系等等。
《Learning Objective-C: A Primer》是很是初级和简单的入门,适合先阅读。《Programming with Objective-C》超微复杂一点点,适合后阅读。
通常人建议先学习语言,我反之建议先作了一个App,而后再学习语言。缘由有几个,首先现代开发工具,每每不是用来开发控制台程序的,上来就会有框架,光懂语言不会使用IDE,甚至可能会更麻烦。再其次就是,其实现代语言发展到了面向对象之后,库每每比语言更复杂,更重要,或者说更多的时候,咱们是在学习库,而不是语言,语言只是库的一个载体。
好比,Delegate和Block等等都和Cocoa的UI异步机制关系紧密,光看代码,这些语言元素很是难以学习,也彻底不知道其意义在哪里。
阅读这个文档的目的和检测标准是,看得懂基本的Objective-C代码,方便后面的学习和阅读各类示例代码。
《iOS App Programming Guide》基本上介绍的就是开发一个App的完整流程,包括App的生命周期、休眠、激活等等,里面介绍的细节颇多。正式开发第一个上线的App以前必看。或者开发了一个App,临到提交前必看才文档。
阅读这个文档的目的和检测标准是,了解所有流程和不少细节问题。
《View Programming Guide for iOS》和《View Controller Programming Guide for iOS》很是重要。View是整个图形界面里面最重要的概念。全部的图形、界面绘制都基于View。你看到的一切复杂的用户界面,就是各类不一样的View的组合堆叠。
View Controller是View和某种逻辑在一块儿的组合,本质上这种组合不是必须的,可是是大大下降编程复杂度的一种设计。不少人不懂什么是View什么是View Controller,这样写起代码来就很痛苦。
阅读这个文档的目的和检测标准是,深入理解什么是View,什么是View Controller,理解什么状况用View,什么状况用View Controller。
UITableView是最重要的一个控件,是最经常使用的UI界面元素。在UICollectionView出现以前,大量的内容列表展现的自定义控件都是基于UITableView,好比不少书架、图片Grid其实都是UITableView作的。
因此《Table View Programming Guide for iOS》很是重要,必定要好好阅读。
阅读这个文档的目的和检测标准是,深入理解UITableView/UITableViewController的理论和使用方法。
我推荐的必读文档就这么多,仔细看的话,最多也就是今天就看完了。学习一个东西,若是有一点点耐心,有正确的方法其实不难,不是说脑子非要很聪明,大多数人均可以作到一个星期就学会iOS开发,其实就是读完这些文档,大多数人就会了。
就像我强调了无数次,阅读英文文档不难,我本身从当年看英文文档很是吃力,必须查词典开始,认真的看英文文档,不会就查词典,一个多月过去,读英文文档就彻底不须要查词典了。
咱们公司主程 @sycx 老师,也说他原来英语也很很差,甚至如今英语仍旧很烂,可是看英文文档彻底没有问题,也就是几个星期的认真学习之后就突破了。
其实学习iOS也如此。固然我不是说你看懂这10组文档就不再用看别的了。而是说,若是你看懂了这10组文档,你就从初学者,或者是虽然会写一些程序,可是对iOS其实还不懂的状态,变成了一个入门者。
我不但愿这个文章能够一句一句的帮你学会iOS是什么,这个文章的目的是帮你快速入门。一旦你入门了,你再遇到问题该看什么,你就不须要我讲了,你本身就知道了。一旦入门了,你就会发现,Xcode里面别的文档讲的内容虽然不一样,可是结构你已经很清楚了,你学习起来很方便。
阅读本文的目的和检测标准是,遇到问题,知道看什么文档,想提高本身技术的时候,知道按照什么脉络本身组织阅读。