# ios开发
移动设备的开发,ios比较规范,设备的尺寸和性能都比较直接。因此想要开发移动设备,首推还是ios。
### Objective-C
OC是开发ios的必备基础。但只要你有过C/C++,以及一些面向对象的基础,学习起来没有那么难。只是语法和新特性上需要花些时间去了解。
### 在线教程:
- [官方文档:Programming With Objective-C](https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html)
- [stanford CS 139P](http://web.stanford.edu/class/cs193p/cgi-bin/drupal/)
- [Try Objective-C](http://tryobjectivec.codeschool.com/)
- [Cocoa:Learn Objective-c](http://cocoadevcentral.com/)
- [Learn Objective-C](http://code.tutsplus.com/series/learn-objective-c--mobile-22891)
### 书籍:
- [Objective-C编程](http://book.douban.com/subject/19962787/)
- [Programming in Objective-C, 4th Edition](http://it-ebooks.info/book/1201/)
- [Objective-C基础教程](http://book.douban.com/subject/24284008/)
### Reference:
- [Foundation Framework Reference](https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/ObjC_classic/_index.html#//apple_ref/doc/uid/20001091)
- [Introduction to String Programming Guide for Cocoa](https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Strings/introStrings.html#//apple_ref/doc/uid/10000035-SW1): Objective-C字符串的使用。
看苹果的文档不要从参考(Reference)开始看,从指南(Guide)开始看。一般你看到一个具体类的时候,如果有相关的指南都会有链接直接跳过去的。
当对OC有了了解之后,请直接找一个iOS项目开始吧!实践检验真理!
### 入门ios开发
### 书籍
- [马上着手开发 iOS 应用程序 (Start Developing iOS Apps Today)](https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOSCh/index.html): 官方的Guide。
- [iOS7初学者入门](https://github.com/eseedo/kidscoding): 作者王寒,国内一位iOS游戏开发者,自己总结的,感觉不错,基础入门。
- [iOS Programming](http://book.douban.com/subject/24538384/)
- [ios开发从新手到App Store上架](http://www.cocoachina.com/special/fornew.html)
### 在线教程
- [斯坦福大学公开课:iOS 7应用开发(网易公开课)](http://study.163.com/plan/planMain.htm?id=1533019#/planMain)
- [standford: developing ios 7 apps](http://online.stanford.edu/course/developing-ios7-apps-fall-2013)
- [http://www.raywenderlich.com/](http://www.raywenderlich.com/): 很多step by step的教程,适合掌握一定知识之后跟着教程做着玩。
- [code4app代码库](http://code4app.com/)
### 论坛
- [v2ex](http://v2ex.com)
- [Cocoa China BBS](http://www.cocoachina.com/bbs/index.php?m=bbs)
- 介紹
- 程序员基础知识
- 字符编码
- 技术名词
- 语义化版本
- 命名规范
- 书写文档
- 开源协议
- 目录结构
- 正则表达式
- 平凡之路
- 数据结构与算法
- 堆和栈
- 浮点数类型
- XML和JSON
- 算法学习之路
- 排序算法
- 代码架构
- 设计模式
- 常用的Javascript设计模式
- 面向对象编程
- 继承
- 多态
- 封装
- 面向接口编程
- 代码评审
- 六种量化你代码的方式
- 程序员必备的代码审查(Code Review)清单
- 服务器部署
- AWS简介
- 网络知识
- HTTPS, SPDY和 HTTP/2性能的简单对比
- HTTP状态码
- 懂点设计
- 佳作赏析
- 无缝平铺
- Sketch学习
- 设计与实现的平衡
- 写点东西
- 使用gitbook
- 合格的PM
- 一个好的产品经理
- 产品经理的技能
- 团队合作
- 关于招聘
- 培训新人
- 领导能力
- 获取知识
- MOOC
- Podcasts
- 英语学习
- 设计学习
- 前端学习
- iOS学习
- 游戏开发
- 关注健康
- 过劳检测
- 关于睡眠
- 提升效率
- 学会阅读
- 学会提问
- 善用搜索
- 学会写作
- 时间管理
- 知识管理
- 文件管理
- 密码管理
- 制作视频
- 制作PPT
- 论音乐对效率的影响
- 程序员效率指南
- SOHO
- 创业资源
- Hacker
- 保护隐私
- 关于工作
- 找工作前需要思考的问题
- 原则与技巧
- 关于简历
- 其他方面
- 硬件相关
- 常用软件
- Windows
- 硬件配置
- 系统安装
- 常用软件
- Mac
- 通用设置
- 权限问题
- alias设置
- 常用软件
- 开发环境
- 快捷键设置
- 常用终端命令
- dotfiles
- Android
- 常用软件
- 如何登录美国区GooglePlay
- 开发工具
- git
- EditorConfig
- node
- shadowsocks
- ST3--Windows篇
- ST3--Mac篇
- gulp
- 字体的选择
- Emacs
- WebStorm
- tmux
- Sketch
- Sketch中文学习资料
- Trello
- 使用Trello管理项目的经验
- git进阶
- 15分钟学会使用Git和远程代码库
- GitHub秘籍
- JetBrains
- IDE设置
- 附录
- 计算机科学与技术
- 网站
- 书籍
- 工具