├── README.md ├── articles.md └── objective-c.png /README.md: -------------------------------------------------------------------------------- 1 | `Objective C`/`iOS`学习 2 | ================================ 3 | 4 | ![Objective C](objective-c.png "Objective C") 5 | 6 | 书籍 7 | ---------------------- 8 | 9 | ### `Objective C`语言 10 | 11 | #### 入门 12 | 13 | - ***Programming in Objective-C (6th Edition)*** 14 | 这本优先从`Objective C`入门。本人是先看这本。 15 | - ***Objective-C Programming: The Big Nerd Ranch Guide (2nd Edition)*** 16 | 这本先讲`C`,再过渡到`Objective C`。 17 | 18 | 学习一样的新事物,理解新事物的方式、风格和理念是非常重要的。 19 | 20 | > 大家应该看过`C`程序员写的`Java`代码,或是`Java`程序员写的`C`代码。 21 | > 这样的代码,风格上一眼就能看出来。 22 | > 如果说风格是不重要的,这样与圈子不一致的风格反映对圈子理解得不深入,是可以推断出代码可信任度不高的。 23 | > 因为,圈子里强调的风格(尤其是一致的部分)实际上是这个圈子里的老手反复思考权衡传播的结果! 24 | 25 | 个人推荐无论是否有`C`的基础都从第一本书开始看。 26 | 如果觉得`C`的基础不够,可以以第二本作为辅助,`Objective C`主题的书能适度深度地讲解`C`。 27 | 28 | #### 深入 29 | 30 | - ***Pro Multithreading and Memory Management for iOS and OS X: with ARC, Grand Central Dispatch, and Blocks*** 31 | - ***Effective Objective-C 2.0: 52 Specific Ways to Improve Your iOS and OS X Programs*** 32 | 33 | `Objective C`是`C`的超级,即以`C`基础;并且`Objective C`的运行时构建在`C`上,用`C`实现。所以熟练使用`C`是标配。 34 | 35 | 这里列几本`C`的经典: 36 | 37 | - `K&R`的 ***C程序设计语言*** 38 | - ***C专家编程*** 39 | - ***C陷阱与缺陷*** 40 | PS:这本书很薄170页,定价30,一页的定价感觉远超这本书所在年份的平均~ 41 | - ***C和指针*** 42 | 43 | PS: 44 | 45 | - ***The C Preprocessor*** 46 | `C`的预处理器文档。实际上,平时只就会简单用用。 47 | 如一套代码可以分不同环境编译会用到`#ifdef`之类,可以了解一下,有备无患。 48 | 49 | #### 书籍豆列 50 | 51 | 更多内容书籍参见我整理的豆列: 52 | 53 | - [`Objective C`/`Xcode`](http://www.douban.com/doulist/37581469/) 54 | - [`C`](http://www.douban.com/doulist/1767907/) 55 | 56 | ### `Xcode` 57 | 58 | `Xcode`不仅仅是个苹果官方提供的强大`IDE`,同时包含了强大的整套工具(各种性能分析器、构建命令行等等),这些对于整个软件开发过程非常有用和重要。 59 | 60 | #### 书籍豆列 61 | 62 | 更多内容书籍参见我整理的豆列: 63 | 64 | - [`Objective C`/`Xcode`](http://www.douban.com/doulist/37581469/) 65 | 66 | ### `iOS` 67 | 68 | #### 入门 69 | 70 | - ***iOS Programming: The Big Nerd Ranch Guide (4th Edition)*** 71 | - ***The Core iOS Developer's Cookbook (5th Edition)*** 72 | - ***iOS 7 Programming Cookbook*** 73 | 74 | #### 深入 75 | 76 | - ***iOS Components and Frameworks: Understanding the Advanced Features of the iOS SDK*** 77 | - ***iOS Hacker's Handbook*** 78 | - ***iOS Core Animation: Advanced Techniques*** 79 | 80 | 另外,`iOS`开发是界面,有必要看些用户交互: 81 | 82 | - ***移动应用界面设计*** 83 | - ***简约至上*** 84 | 85 | #### 书籍豆列 86 | 87 | 更多内容书籍参见我整理的豆列: 88 | 89 | - [`iOS`](http://www.douban.com/doulist/37373330/) 90 | 91 | ### 设计 92 | 93 | - ***Cocoa Design Patterns*** 94 | 95 | 设计往往是独立于语言的,可以过一下以了解`Objective C`下的风格。 96 | 97 | ### 工程实践 98 | 99 | - ***Test-Driven iOS Development*** 100 | 101 | 写`UT`是软件工程实践的 **标配** ! 102 | 用完即扔的脚本不在上面说的范围中,你懂得~ 103 | 104 | ### PS 105 | 106 | 新鲜或热门的书可以在`Amazon`上搜索了解: 107 | 108 | - [`Objective C`](http://www.amazon.com/s/ref=nb_sb_noss?url=node%3D5&field-keywords=objective+c) 109 | - [`C`](http://www.amazon.com/s/ref=nb_sb_noss?url=node%3D5&field-keywords=C) 110 | - [`iOS`](http://www.amazon.com/s/ref=nb_sb_noss?url=node%3D5&field-keywords=iOS) 111 | 112 | 代码 113 | ---------------------- 114 | 115 | Read the fucking source code! 读靠谱的代码,学习模仿是获取精髓的好方法! 116 | # 这里列的会更关注`SDK`/库/框架类的代码。 117 | 118 | - `AWS`的移动服务`iOS` `SDK`: https://github.com/aws/aws-sdk-ios/ 119 | `AWS`移动服务介绍:http://aws.amazon.com/cn/mobile/ 120 | 121 | 工具 122 | ---------------------- 123 | 124 | ### `iOS`库开发 125 | 126 | - [Creating a Static Library in iOS Tutorial](http://www.raywenderlich.com/41377/creating-a-static-library-in-ios-tutorial) 127 | -------------------------------------------------------------------------------- /articles.md: -------------------------------------------------------------------------------- 1 | # iOS Study 2 | 3 | ## 多线程 4 | 5 | - [`iOS`多线程编程指南](https://www.dreamingwish.com/article/ios-multi-threaded-programming-guide-directory.html) 6 | - [线程安全类的设计](http://ios.jobbole.com/53059/) 7 | - [关于`iOS`/`OS X`线程安全的基础知识](http://ios.jobbole.com/83699/) 8 | - [`Objective-C`并发编程:`API`和挑战](http://ios.jobbole.com/52647/) 9 | - [`iOS`多线程开发-线程安全](http://www.jianshu.com/p/e7e44dfb1d2b) 10 | - [`iOS`线程安全问题](http://blog.csdn.net/songchunmin_/article/details/51093756) 11 | - [`iOS7`的多任务处理](http://ios.jobbole.com/51660/) 12 | 13 | ## 集合/存储 14 | 15 | - [`objc`系列译文(7.1):Foundation集合类](http://ios.jobbole.com/66189/) 16 | - [谈谈用`SQLite`和`FMDB`而不用`Core Data`](http://ios.jobbole.com/81943/) 17 | 18 | ## 工具/服务 19 | 20 | - [objc系列译文(6.4):深入理解 CocoaPods](http://ios.jobbole.com/53365/) 21 | - [`objc`系列译文(6.2):编译器](http://ios.jobbole.com/66023/) 22 | - [为`iOS`项目搭建`Travis CI`服务器](http://ios.jobbole.com/52116/) 23 | -------------------------------------------------------------------------------- /objective-c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oldratlee/ios-study-materials/756254947d545939e0997cd0def43877d27c7091/objective-c.png --------------------------------------------------------------------------------