知识查询
开发文档查阅
业界动态
暂时空缺,这里可以添加很多资源链接
工具使用
Xcode
- facebook/chisel
- 断点调试
- LLDB
Instruments
CocoaPods
使用 FLEX UI 调试
命令行工具
- XcodeBuild
- xcrun 工具集
- xctool
Objective-C
基本句法(C 语言)
- const/static 等关键字
- 正确定义一个字符串常量
命名规范
Cocoa Core Competencies
https://developer.apple.com/library/content/documentation/General/Conceptual/DevPedia-CocoaCore/
- Class cluster
- ……
Category
内存管理
- 引用计数与 ARC
- 内存管理关键字
- 循环引用分析
- AutoReleasePool
@property
- Objective-C 和 C 的区别
- 覆写 getter/setter
- @synthesize/@dynamic
block
- 抽象意义
- Strong-Weak Dance
- _block
- 简单实现原理
KVC/KVO
对象模型/消息机制
- self 与 super
- Unrecognized Selector 错误
runtime
- Method Swizzing / Class Swizzing
- 动态创建实例
- runtime.h / NSObjeCRuntime.h 中的函数
Cocoa 基础
UIKit
UIApplicaiton
AppDelegate 管理的应用生命周期
UIViewContoller
- UIViewContoller 的生命周期
- UITableViewController/UICollectionViewController
- UINavigationController
- 页面跳转 (push/present)
- 如何防止臃肿的 UIViewController
UIView
- UIControl 以及其相关子嘞
- UIScrollView 以及其相关的子类
- UIWebView / WKWebView
Foundation
基础的数据结构和字面量语法
多线程
NSOperation
与 GCD 对比
线程同步设施
- 各种锁
- @synchronized
网络相关
- NSURLConnection
- NSURLSession
- NSURLProtocol
- 序列化与反序列化,缓存
GCD
串行/并行队列,队列与线程
- dispatch_queue
- dispatch_async
- dispatch_once
- sync,group,barrier 等
- semaphore
其他
UIEvent,触摸事件
1 | - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event; |
手势事件
CG与CF类库
简单动效实现
runloop
数据
序列化与反序列化 NSCoder/NSCoding
UserDefault
SQLite
Core Date
常用的第三方库
AFNetwork
Masonry
Mantle
libextobjc
ReactiveCocoa
……
Cocoa 常见的设计模式
委托模式
target-action
广播模式
观察者模式
Responder Chain
单例
架构
MVC
路由跳转
其他
Crash 分析
安全常识
性能调优
FRP 思维以及 RAC 库的使用
JavaScript
基本语法
JavascriptCore/JSBridge 与 Native 的交互
JSPatch