对于iOS初学者的知识体系
2014-12-30 23:37
323 查看
开发环境
Mac
Mac mini、Mac book、iMac、黑苹果、OS X虚拟机都行,但真要好好搞iOS开发那就最好不要黑苹果和虚拟机,这样会直接影响你对iOS开发的兴趣。同样,如果你用的是一台MacBook,这样会大大增加你对iOS的开发兴趣(MacBook最好的程序员电脑)。PS:如何优雅的使用Mac
Xcode
到苹果开发者中心下载 并安装。目前可以直接从Xcode 6开始入手了。
这里告诉你如何简单的使用Xcode
到此为止你已经能够安静开发出一个跑在iOS模拟器上的“Hello world”
开发者账号
非必须,如果你想将自己的程序跑在iPhone上的话,它就必不可少了,当然,如果你不是独立应用开发者的话,一般你所在的企业应该都有,让Agent或者Admin邀请你加入就可以了。这里告诉你怎么理解开发者账号
开发语言
对于任意一门新的技术来说,首先我认为学习其语言肯定是必须的也是首要的,对于iOS开发也不例外。就目前而言,Objective-C、C语言、Swift这三种语言都应该要有所了解,当然重点还是Objective-C。Objective-C 重中之重,必修必精。
学习地址
C语言 初学需了解,进阶必修。
Swift 未来之星,迟早要精。
学习地址/中文版
iOS SDK
iOS的SDK学习可能是初学者需要耗时最多的一个知识。因为其中有大量的库需要我们来学习掌握。其中最基本的几个为:Foundation.framework
在你学习使用iOS的过程中,你会碰到大量的"NS"前缀的类库,这些类库基本上属于Foundation.framework,它是iOS开发的核心库,其中包括:常用数据结构(NSArray/NSDictionary/NSString 等)、网络(NSURL../NSHTTP..)、多线程(NSThread/NSNSOperation)等。UIKit.framework
库使用"UI"为前缀的类库被包含在这个framework中,这些大部分是系统的UI层面的控件。如UIViewController、UIView、UIButton、UILabel等。使用这些控件才能构建出一个完整的APP。QuartzCore.framework
iOS中绚丽而平滑的动画效果,是吸引人的一大利器,如果你想做出这样的效果,那你就得了解这个库了。iOS的核心动画的API都被包含在这个framework中,学会使用它才能让你的APP更加亮眼。当然,iOS的SDK中还有很多的framework,它们各自负责着自己的一部分,对于初学者来说,能将以上几个framework的API了解清楚,就已经能做出一个完整的属于自己的APP了。
如何学习这些framework呢?
1.主动学习,最佳入口当然是最原始的。
img
在Xcode的导航栏张找到对应的framework展开Header就可以看到对应的各类的头文件,点击进去就可以看到各个类的公共方法,并且有比较详细的注释。
2.被动学习,在开发过程中或者学习过程中,看到某些方法,不知道其具体的意思和用法,则可以在Xcode中通过 ⌘ + 鼠标单击当前方法就可以跳转到定义的头文件中去查看使用方法,或者通过
iOS Developer Library 搜索查询。
网络
网络这一块不仅仅指学会使用SDK中的网络API调用,而是指要去理解网络编程。你需要知道HTTP协议
消息结构、
GET/POST方法、
常见的状态码的意思、
Request/Response。
你还需要知道与服务器通信使用的数据格式如:json、xml。
数据库
数据库你需要知道基本的SQL语句 select/update/insert/delete的操作;需要知道怎么连接表查询:外连接、内连接、自连接等;
需要知道实体数据一对一、一对多、多对多关系如何设计数据库表。
GitHub
iOS有着很浓厚的开源精神,在GitHub上有许多优秀的开源项目,在真正的开发过程中,某些著名的开源库大家也都广泛的使用着。如:AFNetworking
SDWebImage
MJRefresh
EGOTableViewPullRefresh
JDStatusBarNotification
在开源社区还有着大量优秀的代码,我们不仅仅是可以直接使用这些代码从而提高我们的开发效率,而且还可以学习优秀的iOS开发者的代码风格以及实现思路。
最后的推荐
官方正宗,一起武功的起源objc中国
matt 大神博客
猫神大神博客
唐巧博客
相关文章推荐
- iOS开发知识与能力体系 思维导图
- IOS开发之-知识体系
- iOS研发知识与能力体系
- iOS开发知识与能力体系 思维导图
- iOS开发知识与能力体系 思维导图
- iOS开发知识体系
- web前端-HTML知识体系(初学者)
- iOS开发知识与能力体系 思维导图
- iOS知识体系
- web前端-JavaScript知识体系(初学者)
- iOS开发知识与能力体系思维导图
- web前端-css知识体系(初学者)
- iOS开发知识与能力体系 思维导图
- iOS开发知识与能力体系 思维导图
- iOS开发知识与能力体系 思维导图
- [转载]IT知识体系结构图
- [转载]IT知识体系结构图
- 游戏程序员所需的知识体系
- 权限学习--BlueDavy之技术Blog漫谈权限系统之结尾篇(开源产品、个人观点、知识体系)
- 谨献给为了知识执着的嵌入式初学者