- 编程语言
- 操作系统
//判断文件夹是否存在,不存在则创建
if [ -d "${WORKSPACE}/builds" ]; then rm -rf ${WORKSPACE}/builds; fi;
- 开发基础
- [UI 控件](http://code4app.com/forum.php)
- [Storyboard & Xib](http://www.jianshu.com/p/943ef5463aef)
- [Core Data](https://www.objccn.io/issue-4-1/) & [Sqlite](http://www.jianshu.com/p/d7ec0acf646a)
- [Core Graphics](http://www.jianshu.com/p/491b50cb19cb)
- [Animation](http://www.jianshu.com/p/50424dc1b15a)
- [Block](http://www.jianshu.com/p/ce238bd58d5b) & [GCD](http://www.jianshu.com/p/ae786a4cf3b1)
- [Block 小测验](http://blog.parse.com/learn/engineering/objective-c-blocks-quiz/)
- [Test Case 编写](http://www.jianshu.com/p/009844a0b9ed)
- [Framework](http://www.jianshu.com/p/ef3d5b7e7006)
- [Autolayout](http://www.jianshu.com/p/d7a4790090f1)
- [手势识别](http://www.jianshu.com/p/5353333385b3),[重力感应](https://onevcat.com/2013/06/uikit-dynamics-started/)
- 开发进阶
- 引用计数
- [内存管理中对引用采取自动计数](http://blog.csdn.net/jofranks/article/details/21244625)
Apple用Hash表来管理引用计数(区别于内存块头部管理引用计数)
- [ARC入门和使用](https://onevcat.com/2012/06/arc-hand-by-hand/)
- [[OC对象和CF对象之间的桥接(bridge)](http://www.cnblogs.com/zzltjnh/p/3885012.html)](http://www.cnblogs.com/zzltjnh/p/3885012.html)
- Runtime
- [iOS~runtime理解](http://www.jianshu.com/p/927c8384855a)
字典转模型获取属性列表、方法调用拦截、关联对象、方法交换
- [Runtime源码](http://opensource.apple.com/tarballs/objc4/)
- Runloop
- [深入理解RunLoop](http://www.cocoachina.com/ios/20150601/11970.html)
- [Objective-C之run loop详解](http://blog.csdn.net/ztp800201/article/details/9240913)
事件来源:输入源、定时源
模式只会在特定事件影响监听的源
- [初识 Run Loop](http://www.tuicool.com/articles/aiEfIbi)
模式:Default、Tracking、Common
- [iOS RunLoop](http://www.jianshu.com/p/613916eea37f)
AFN、TableViewCell延迟加载图片、Crash回光返照、异步测试
- [Crash捕获与拦截](http://www.sharejs.com/codes/objectc/5882)
- [Runloop源码](https://opensource.apple.com/source/CF/CF-476.14/CFRunLoop.c) [源码分析](http://www.jianshu.com/p/fefe2ba87c68)
- [《RunLoop》by 孙源@sunnyxx](http://v.youku.com/v_show/id_XODgxODkzODI0.html)
- [对象模型](http://blog.devtang.com/2013/10/15/objective-c-object-model/)
- [Hybrid](https://onevcat.com/2015/03/cross-platform/)
- [沙盒机制](http://www.jianshu.com/p/1903bcab60e4)
- [AVFoundation](http://www.jianshu.com/p/cc79c45b4ccf)
- [Core Text](http://www.jianshu.com/p/dacb99506bb9)
- [逆向与安全](http://www.jianshu.com/p/57d9cab745a0)
- [class dump](https://github.com/0xced/class-dump/tree/swift-binaries)
- [IDA Pro](https://www.hex-rays.com/products/ida/)
- [Hopper](https://www.hopperapp.com/)
- [iOS Class Guard](http://elijahdou.github.io/blog/2015/07/08/ios-class-guard.html)
```
一个用于OC类、协议、属性和方法名混淆的命令行工具
- 设计模式
- 函数式编程
- 开发工具
添加设备/发送push通知/生成Passbook/验证购买凭证/打包IPA
- [xctool](https://github.com/facebook/xctool)
```
纯命令行工具,可进行编译和单元测试,将测试结果集成到 Jenkins,实现自动化持续集成
- [fastlane](https://fastlane.tools/)
- 持续集成
- 开源项目
- 包管理
- CocoaPods
-
Carthage
Carthage不支持直接修改库的源文件
- Swift Package Manager
- App打包上传与审核
- 第三方服务
- 崩溃收集
- 数据统计
- 应用分发
网友评论