Skip to content

Commit

Permalink
Update iOS resources
Browse files Browse the repository at this point in the history
  • Loading branch information
Aufree committed Jan 5, 2015
1 parent df12304 commit 4df87e7
Showing 1 changed file with 94 additions and 28 deletions.
122 changes: 94 additions & 28 deletions iOS-Resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,50 +17,38 @@
- [征战Objective-C](http://www.imooc.com/learn/218) (视频还未完结, 讲了一些 C 和 Object-C 的基本语法, 适合零基础的人观看)

##[书籍](#books)

- [Objective-C Programming](http://www.amazon.com/dp/032194206X/ref=cm_sw_r_tw_dp_fWrPub0BGRHJ3) (内容不多, 却都是精华, 有了一点 C 语言基础可以快速阅读此书, 大概一天时间就可以看完, 看完后对 iOS 开发能够有个基本的印象)

- [iOS Programming](http://book.douban.com/subject/24538384/) (iOS 又一本极佳的入门书籍, 具体评价可见豆瓣下方该书籍的评论)

- [Cocoa Design Patterns](http://book.douban.com/subject/3688896/) (适合打算深入了解 Cocoa 的人看)

- [Learn Objective-C](http://cocoadevcentral.com/d/learn_objectivec/) (短小精练, 适合有编程基础的人在半小时内对 Object-C 有个一定了解)

- [Programming with Objective-C](https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html) (看完 Learn Obj-C 可以接着看这个官方对 Object-C 更为深入的介绍)

- [iPhone Programming](http://book.douban.com/subject/5314055/) (这本书在 Quora 上被评为 iOS 入门最佳书籍)

- [Objective-C 基础教程](http://www.amazon.cn/dp/B00COG40Y0/ref=cm_sw_r_qz_2_dp_l2OPub0N45R0Q) (该书作者 Scott Knaster 是 Mac 开发界的传奇人物, 目前在 Google 出过多数书籍都广受许多程序员好评, 此书适合从初级跳到中级的 iOS 开发者阅读)

- [iOS 开发进阶](http://www.amazon.cn/dp/B00R43XG9S/ref=cm_sw_r_qz_pi_T2A_jdp_fCPPub0VBF67T) (该书作者唐巧是国内 iOS 开发界的名人, 曾参与多个知名软件的开发, 目前该书尚在预售中, 书本内容由浅入深, 将读者一步一步引入到 iOS 中去, 同样适合初级跳到中级的 iOS 开发者阅读)

- [Programming in Objective-C](http://www.amazon.com/Programming-Objective-C-Edition-Developers-Library/dp/0321967607) (这本书在亚马逊上面深受欢迎, 有关 Object-C 的东西讲得非常详细)

- [iOS 测试指南](http://www.amazon.cn/dp/B00JPVNFKM/ref=cm_sw_r_qz_4_dp_tdPPub14X59PV) (该书作者是豆瓣的员工, 书中写的多数内容都是作者在平时的工作实践当中提炼出来的测试经验, 重点讲述了各个测试阶段的具体实践方法, 并且通过持续集成串联了各个测试阶段的活动。)

- [Objective-C编程之道](http://book.douban.com/subject/6920082/) (解析 iOS 的开山之作, 详细介绍了 MVC 在 Cocoa Touch 上的运作过程, 该书适用于 iOS 中级开发者阅读)
- [Objective-C高级编程](http://www.amazon.cn/dp/B00DE60G3S/ref=cm_sw_r_qz_2_dp_hdPPub11MFE6G) (本书主要介绍 iOS 与 OS X 多线程和内存管理, 深入破析了苹果官方公布的源代码, 告诉你一些苹果公司官方文档中不会出现的知识, 适合中级以上 iOS 开发人员阅读)
- [Effective Objective C 2.0](http://www.amazon.cn/dp/B00IDSGY06/ref=cm_sw_r_qz_2_dp_A2OPub0CH96YH)(书里写了编写高质量iOS与OS X代码的52个有效方法, 适合 iOS 开发的进阶使用)
- [Tutorials](http://www.raywenderlich.com/tutorials) (大把的 Object-C, Swift, iOS 教程, 且全部免费, raywenderlich 真是业界良心, 赞!)
- [Swift Fundamentals](http://www.amazon.com/dp/0990402053/ref=cm_sw_r_tw_dp_louPub127Q1YP) (估计将来这本书会成为 Swift 的经典入门书籍, 它的 Stars 数说明了一切)
- [The Swift Programming Language 中文版](http://numbbbbb.gitbooks.io/-the-swift-programming-language-/content/) (Swift 编程语言中文版)

##[文档](#documents)
- [iOS Developer Library](https://developer.apple.com/library/ios/navigation/) (iOS 开发必看, 有此文档足矣, 内容非常之详细)
- [Objective-C高级编程](http://www.amazon.cn/dp/B00DE60G3S/ref=cm_sw_r_qz_2_dp_hdPPub11MFE6G) (本书主要介绍 iOS 与 OS X 多线程和内存管理, 深入破析了苹果官方公布的源代码, 告诉你一些苹果公司官方文档中不会出现的知识, 适合中级以上 iOS 开发人员阅读)

##[指南](#guides)
- [Get started with your iOS developer pragram](https://developer.apple.com/programs/ios/gettingstarted/)
- [App Programming Guide for iOS](https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/iPhoneAppProgrammingGuide.pdf)
- [Start Developing iOS Apps Today](https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOS/)
- [teamtreehouse](http://blog.teamtreehouse.com/the-beginners-guide-to-objective-c-language-and-variables)
- [A map for iOS development](http://www.appdeveloperatlas.com/)
- [Effective Objective C 2.0](http://www.amazon.cn/dp/B00IDSGY06/ref=cm_sw_r_qz_2_dp_A2OPub0CH96YH)(书里写了编写高质量iOS与OS X代码的52个有效方法, 适合 iOS 开发的进阶使用)

##[Awesome 系列](#awesome-series)
- [Awesome iOS](https://github.com/matteocrippa/awesome-swift)
- [Awesome-Swift(1)](https://github.com/matteocrippa/awesome-swift)
- [Awesome-Swift(2)](https://github.com/Wolg/awesome-swift)
- [Tutorials](http://www.raywenderlich.com/tutorials) (大把的 Object-C, Swift, iOS 教程, 且全部免费, raywenderlich 真是业界良心, 赞!)

##[知乎](#zhihu)
- [如何才能系统的学习 iOS 开发,理解一些规则和深层次的机制原理?](http://www.zhihu.com/question/20016551)
- [没有 C 和 Objective-C 基础如何快速学习 iOS 开发?](http://www.zhihu.com/question/19627420)
- [iOS 开发怎么入门?](http://www.zhihu.com/question/20264108)
- [iOS 开发入门需要学习哪些知识,从一无所知到精通需要多长时间?](http://www.zhihu.com/question/20130048)
- [12 岁如何入门 iOS 编程?](http://www.zhihu.com/question/20919784)
- [GitHub 上都有哪些值得关注学习的 iOS 开源项目?](http://www.zhihu.com/question/22914651)
- [笨猫快乐学编程](http://zhuanlan.zhihu.com/kidscoding)
- [Swift Fundamentals](http://www.amazon.com/dp/0990402053/ref=cm_sw_r_tw_dp_louPub127Q1YP) (估计将来这本书会成为 Swift 的经典入门书籍, 它的 Stars 数说明了一切)

##[Quora](#quora)
- [What are the best resources to learn iOS development?](http://www.quora.com/What-are-the-best-resources-to-learn-iOS-development)
- [What are the best new resources for learning iOS development in 2014?](https://www.quora.com/What-are-the-best-new-resources-for-learning-iOS-development-in-2014)
- [The Swift Programming Language 中文版](http://numbbbbb.gitbooks.io/-the-swift-programming-language-/content/) (Swift 编程语言中文版)

##[文章](#articles)
- [如何从 0 开始学 iOS 开发](http://readful.com/post/101914515826/0-ios)
Expand Down Expand Up @@ -115,54 +103,132 @@
- [更多](https://github.com/tangqiaoboy/iOSBlogCN)

##[GitHub Top100](#open-sources)

1. [AFNetworking](https://github.com/AFNetworking/AFNetworking) (作者是 NSHipster 的博主, 毕业于卡内基·梅隆大学, 开源许多有用的项目, 这个便是其中之一, AFNetworking 采用 NSURLConnection + NSOperation, 主要方便与服务端 API 进行数据交换, 操作简单, 功能强大, 现在许多人都用它取代 ASIHTTPRequest)

2. [GPUImage](https://github.com/BradLarson/GPUImage) (一款强大的图片滤镜工具, 支持自定义滤镜, 可用来实时处理图片和视频流, 作者是 SonoPlot 公司的 CTO, 在很小的时候便开始接触编程, 他在 [SO](http://stackoverflow.com/users/19679/brad-larson) 上面的回答也有很多值得阅读, GPUImage 这个项目从 2012 年开始, 使用 OpenGL 图形程序接口编写, 性能非常好, 现在很多 iOS 程序员都用它来实现 iOS 的模糊效果)

3. [three20](https://github.com/facebookarchive/three20) (由 Facebook iOS 客户端衍生出的一款 iPhone 框架, 内置许多丰富的功能, 有丰富的界面, 对底层的操作便捷, 为开发者省下了很多时间, 但现在已经停止了更新, 一个 [PR](https://github.com/facebookarchive/three20/pull/832?utm_source=iOS+Dev+Weekly&utm_campaign=46a7deb647-iOS_Dev_Weekly_Issue_100&utm_medium=email&utm_term=0_7bda94b7ca-46a7deb647-299428269) 把代码删得干干净净, 不要好奇去点开 Files changed, 我点开后该页面直接卡死, three20 当中的一位作者创建了 [Nimbus](https://github.com/jverkoey/nimbus), 算是 three20 的一个替代品)

4. [RestKit](https://github.com/RestKit/RestKit) (主要用于 iOS 上网络通信, 允许与 RESTful Web 服务交互, 常用于处理 API, 解析 JSON, 映射响应对象等操作, 简单易用, 方便你把所有精力都放在对数据的操作上)

5. [SDWebImage](https://github.com/rs/SDWebImage) (作者 Olivier Poitrey 是 Dailymotion 的 CTO, 拥有多个不错的开源项目, 此项目常用于对从 Web 端接受到的图片进行缓存, 是 UIImageView 的扩展, 应用起来比较简单)

6. [ReactiveCocoa](https://github.com/ReactiveCocoa/ReactiveCocoa) (由 GitHub 工程师们开发的一个应用于 iOS 和 OS X 开发的函数响应式编程新框架, Matt 称其为 "An open source project that exemplifies this brave new era for Objective-C", 也有人说它是 Cocoa 的未来, 具体可看唐巧写的这篇[文章](http://blog.devtang.com/blog/2014/02/11/reactivecocoa-introduction/))

7. [MBProgressHUD](https://github.com/jdg/MBProgressHUD) (作者 Matej Bukovinski 是一位全栈工程师, UI/UX 设计师, 此项目是一款提示框第三方库, 帮助开发者快速应用到项目中)

8. [MagicalRecord](https://github.com/magicalpanda/MagicalRecord) (作者是 Coursera 的 iOS 工程师, 该项目创作灵感来自于 Ruby on Rails 的 Active Record, 主要为方便操作 CoreData 而生, 帮助清除 CoreData 引用的代码, 协助方便 CoreData 的工作)

9. [FMDB](https://github.com/ccgus/fmdb)

10. [ASIHTTPRequest](https://github.com/pokeb/asi-http-request) (一个轻量级的 iOS 网络通信类库, 基于 CFNetwork 框架开发, 但现在已经停止更新, 多数开发者改用 AFNetworking 替代)

11. [Mantle](https://github.com/Mantle/Mantle) (作者是 GitHub 的员工, 文档写的很清楚: Mantle makes it easy to write a simple model layer for your Cocoa or Cocoa Touch application, 主要用来将 JSON 数据模型化为 Object-C 对象, 唱吧在前段时间也改用 Mantle 了.)

12. [FlatUIKit](https://github.com/Grouper/FlatUIKit) (收集了很多扁平化 UI 的 iOS 组件, 方便使用)

13. [Facebook SDK for iOS](https://github.com/facebook/facebook-ios-sdk) (Facebook 官方的 iOS SDK, 方便开发者集成 Facebook 的一些功能到自己的 iOS APP 里面)

14. [JSONKit](https://github.com/johnezang/JSONKit) (主要用于解析 JSON, 适用于 iOS6 以下环境, 自从 iOS5 开始 Apple 官方给出了 NSJSONSerialization API, 自此大家都用官方的了)

15. [Slate](https://github.com/jigish/slate) (一款窗口管理应用程序, 但在两年前就已经停止更新了)

16. [Nimbus](https://github.com/jverkoey/nimbus) (作者 Jeff 曾为 Facebook, Google 做过不少好东西, 也是 three20 的成员之一, three20 停更后, 他创造出这个框架来代替 three20, 文档齐全)

17. [FastImageCache](https://github.com/path/FastImageCache) (Path 公司出品的 iOS 库, 作者 Mallory Paine 是苹果前员工, 此类库适用于在滚动时快速显示图像, 高速持久是其最大的特点)

18. [SVProgressHUD](https://github.com/TransitApp/SVProgressHUD) (又一款轻量级的 iOS 第三方控件, 用于显示任务加载时的动画, 非常轻便, 容易使用)

19. [Shimmer](https://github.com/facebook/Shimmer) (Facebook 推出的一款具有闪烁效果的第三方控件, 供它旗下一款名为 Paper 的应用使用, 安装使用整个过程都十分简单)

20. [CocoaLumberjack](https://github.com/CocoaLumberjack/CocoaLumberjack) (这是 Mac 和 iOS 的一款强大的日志框架, 配置简单, 多线程, 提供更高级的 log 功能, 可用于代替默认的 NSLog 语句)

21. [ViewDeck](https://github.com/Inferis/ViewDeck) (一款开源的 iOS 活动面板组件, 还原 Path 2.0 的侧滑效果, 作者因为时间关系在两年前停止对其更新)

22. [Alcatraz](https://github.com/supermarin/Alcatraz) (Alcatraz 是一款管理Xcode插件、模版以及颜色配置的工具, 可以集成到 Xcode 的图形界面中, 安装删除都是几条命令的事, 很方便, 支持自己开发插件并上传)

23. [OpenEmu](https://github.com/OpenEmu/OpenEmu) (超强的游戏模拟器, 做游戏开发必备, 官网做得也很不错)

24. [AsyncDisplayKit](https://github.com/facebook/AsyncDisplayKit) (Facebook 开源的一款 iOS UI 框架, Paper 用的就是该框架, 另外框架还用到了 Facebook 早期开源 Pop 动画引擎)

25. [Xctool](https://github.com/facebook/xctool) (是 Facebook 开源的一个命令行工具,用来替代苹果的 XcodeBuild 工具, 极大的方便了 iOS 的构建和测试, 输出错误信息也比较友好, 受到许多 iOS 开发者的称赞, 经常与其搭配使用的还有 OCUnit, [Travis CI](https://travis-ci.org), [OCLint](http://oclint.org/)等测试工具)

26. [iCarousel](https://github.com/nicklockwood/iCarousel) (作者是英国 Charcoal Design 公司的创始人, 开源领域的贡献颇为卓著, 这个项目就是其中之一, 这是一款可以在 iOS 上实现旋转木马视图切换效果的第三方控件, 并提供多种切换效果)

27. [FLEX](https://github.com/Flipboard/FLEX) (这是 Flipboard 官方发布的一组专门用于 iOS 开发的应用内调试工具, 开发者无需将其连接到 LLDB/Xcode 或其他远程调试服务器,支持直接在 App 中运行)

28. [Cocos2D Swift](https://github.com/cocos2d/cocos2d-swift) (这是 Swift 语言版本的 Cocos2D 游戏开发引擎, 核心开发者是 Ricardo Quesada, 已经为该项目贡献了 100W 行左右代码, GitHub 上更新较为频繁)

29. [TapkuLibrary](https://github.com/devinross/tapkulibrary) (作者是 Devin Ross, 这是在 iOS 上一款功能强大的 UI 效果类库, 可以实现多种酷炫的效果, 目前仍在更新中)

30. [Masonry](https://github.com/Masonry/Masonry) (一个轻量级的布局框架, 同时支持 iOS 和 Mac OS X, 语法优雅, 帮助开发者快速适配不同分辨率的 iOS 设备)

31. [AwesomeMenu](https://github.com/levey/AwesomeMenu) (作者是一位中国人, 该项目主要是使用 CoreAnimation 还原了 Path menu 的动画效果)

32. [PonyDebugger](https://github.com/square/PonyDebugger) (由 Square 公司推出的一款优秀的 iOS 应用网络调试工具, 用户可以实时看到应用程序的网络请求, 也可以对 iOS 应用程序的核心数据栈进行远程调试)

33. [NewsBlur](https://github.com/samuelclay/NewsBlur) (作者独自一个人 Samuel Clay 做出来的一款名为 NewsBlur 的新闻阅读器, 很多人都称其为 Google Reader 的替代品, 这是它的源码)

34. [JVFloatLabeledTextField](https://github.com/jverdi/JVFloatLabeledTextField) (作者是 Thumb Labs 的联合创始人, JVFloatLabeledTextField 是 UITextField 的子类, 主要实现输入框标签浮动效果, 创作灵感来自 Dribbble, 已出现多个移植版本)

35. [Json Framework](https://github.com/stig/json-framework) (用于解析 JSON 数据的一个框架, 但是在 iOS5 以上版本大多数人都选择使用 NSJSONSerialization 来解析 JSON, 该项目现在在 GitHub 上也几乎没怎么更新了)

36. [The Physical Web](https://github.com/google/physical-web) (由 Chrome 团队主导的一个项目, 意在用 URL 连接世界, 方便用户接受数据, 目前尚处在实验阶段)

37. [Reachability](https://github.com/tonymillion/Reachability) (Reachablity 是用于检测 iOS 设备网络环境的库)

38. [RESideMenu](https://github.com/romaonthego/RESideMenu) (作者 Roman Efimov 是雅虎的 iOS 工程师, 这个项目实现了 iOS 上的菜单侧滑效果, 创意来源于 dribbble, 该项目支持 iOS8)

39. [CocoaAsyncSocket](https://github.com/robbiehanson/CocoaAsyncSocket) (一个功能强大、简单易用的异步 socket 通讯类库, 支持 TCP 和 UDP 协议, 可用于 Mac 和 iOS 设备上, 作者 Robbie Hanson 是 Deusty 的首席软件工程师)

40. [ECSlidingViewController](https://github.com/ECSlidingViewController/ECSlidingViewController) (一个视图控制器容器, 将子视图处理成两层, 通过滑动来处理层的切换, 创作灵感来自 Facebook 和 Path的 APP, 作者是 Cleveland 的员工)

41. [SWTableViewCell](https://github.com/CEWendel/SWTableViewCell) (UITableViewCell 的子类, 实现了左右滑动显示信息视图并调出按钮)

42. [TTTAttributedLabel](https://github.com/TTTAttributedLabel/TTTAttributedLabel) (UILabel 的替代品, 使 iOS 上的 Label 功能更加丰富, 可支持链接植入等功能)

43. [Canvas](https://github.com/CanvasPod/Canvas) (无需编码实现牛逼的动画效果的库, 连设计师都可以快速上手)

44. [SocketRocket](https://github.com/square/SocketRocket) (Square 公司开源的一个 WebSocket 客户端, 稳定并且易用, 做实时应用常会用到, 受广大开发者喜爱)

45. [Tweaks](https://github.com/facebook/Tweaks) (Facebook 开源的一款工具, 旨在帮助 iOS 开发者更快的迭代应用, 方便用户动态的调整参数, 是的, Paper 这个项目也用到了)

46. [JSQMessagesViewController](https://github.com/jessesquires/JSQMessagesViewController) (优雅的 iOS 消息类库, 常用于聊天应用中, 可定制性高)

47. [PNChart](https://github.com/kevinzhow/PNChart) (作者周楷雯是 90 后, 秒视的创始人, 该项目是一个带动画效果的图表控件, 简约易用, 受到不少开发者喜爱)

48. [VVDocumenter-Xcode](https://github.com/onevcat/VVDocumenter-Xcode) (作者是王巍国内著名的 iOS 开发者, 人称喵神, 目前在日本 LINE 公司工作, 该项目帮助开发者轻松的生成注释文档, 节省了不少工作量, 赞)

49. [Appirater](https://github.com/arashpayan/appirater) (一款用于提醒用户给你的 APP 打分的工具)

50. [BlocksKit](https://github.com/zwaldowski/BlocksKit) (一个开源的与 Cocoa 紧密集合的基础性框架)


##[文档](#documents)
- [iOS Developer Library](https://developer.apple.com/library/ios/navigation/) (iOS 开发必看, 有此文档足矣, 内容非常之详细)

##[指南](#guides)
- [Get started with your iOS developer pragram](https://developer.apple.com/programs/ios/gettingstarted/)
- [App Programming Guide for iOS](https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/iPhoneAppProgrammingGuide.pdf)
- [Start Developing iOS Apps Today](https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOS/)
- [teamtreehouse](http://blog.teamtreehouse.com/the-beginners-guide-to-objective-c-language-and-variables)
- [A map for iOS development](http://www.appdeveloperatlas.com/)

##[Awesome 系列](#awesome-series)
- [Awesome iOS](https://github.com/matteocrippa/awesome-swift)
- [Awesome-Swift(1)](https://github.com/matteocrippa/awesome-swift)
- [Awesome-Swift(2)](https://github.com/Wolg/awesome-swift)

##[知乎](#zhihu)
- [如何才能系统的学习 iOS 开发,理解一些规则和深层次的机制原理?](http://www.zhihu.com/question/20016551)
- [没有 C 和 Objective-C 基础如何快速学习 iOS 开发?](http://www.zhihu.com/question/19627420)
- [iOS 开发怎么入门?](http://www.zhihu.com/question/20264108)
- [iOS 开发入门需要学习哪些知识,从一无所知到精通需要多长时间?](http://www.zhihu.com/question/20130048)
- [12 岁如何入门 iOS 编程?](http://www.zhihu.com/question/20919784)
- [GitHub 上都有哪些值得关注学习的 iOS 开源项目?](http://www.zhihu.com/question/22914651)
- [笨猫快乐学编程](http://zhuanlan.zhihu.com/kidscoding)

##[Quora](#quora)
- [What are the best resources to learn iOS development?](http://www.quora.com/What-are-the-best-resources-to-learn-iOS-development)
- [What are the best new resources for learning iOS development in 2014?](https://www.quora.com/What-are-the-best-new-resources-for-learning-iOS-development-in-2014)

0 comments on commit 4df87e7

Please sign in to comment.