/analyze

深入解析 iOS 开源项目

Primary LanguageObjective-C

Analyze

Banner designed by Levine

为什么要建这个仓库

世人都说阅读开源框架的源代码对于功力有显著的提升,所以我也尝试阅读开源框架的源代码,并对其内容进行详细地分析和理解。在这里将自己阅读开源框架源代码的心得记录下来,希望能对各位开发者有所帮助。我会不断更新这个仓库中的文章,如果想要关注可以点 star

目录

Latest:

Project Version Article
Architecture 谈谈 MVX 中的 Model
谈谈 MVX 中的 View
谈谈 MVX 中的 Controller
浅谈 MVC、MVP 和 MVVM 架构模式
ReactiveObjC 2.1.2 『状态』驱动的世界:ReactiveCocoa
Pull-Driven 的数据流 RACSequence
『可变』的热信号 RACSubject
优雅的 RACCommand
用于多播的 RACMulticastConnection
RAC 中的双向数据绑定 RACChannel
理解 RACScheduler 的实现
从代理到 RACSignal
ObjC 从 NSObject 的初始化了解 isa
深入解析 ObjC 中方法的结构
从源代码看 ObjC 中消息的发送
你真的了解 load 方法么?
上古时代 Objective-C 中哈希表的实现
自动释放池的前世今生
黑箱中的 retain 和 release
关联对象 AssociatedObject 完全解析
懒惰的 initialize 方法
对象是如何初始化的(iOS)
KVOController 1.2.0 如何优雅地使用 KVO
AsyncDisplayKit 1.9.81 提升 iOS 界面的渲染性能
从 Auto Layout 的布局算法谈性能
预加载与智能预加载(iOS)
CocoaPods 1.1.0 CocoaPods 都做了什么?
谈谈 DSL 以及 DSL 的应用(以 CocoaPods 为例)
OHHTTPStubs 5.1.0 iOS 开发中使用 NSURLProtocol 拦截 HTTP 请求
如何进行 HTTP Mock(iOS)
ProtocolKit 如何在 Objective-C 中实现协议扩展
FBRetainCycleDetector 0.1.2 如何在 iOS 中解决循环引用的问题
检测 NSObject 对象持有的强指针
如何实现 iOS 中的 Associated Object
iOS 中的 block 是如何持有对象的
fishhook 0.2 动态修改 C 语言函数的实现
libextobjc 如何在 Objective-C 的环境下实现 defer
IQKeyboardManager 4.0.3 『零行代码』解决键盘遮挡问题(iOS)
DKNightVersion 2.3.0 成熟的夜间模式解决方案
AFNetworking 3.0.4 AFNetworking 概述(一)
AFNetworking 的核心 AFURLSessionManager(二)
处理请求和响应 AFURLSerialization(三)
AFNetworkReachabilityManager 监控网络状态(四)
验证 HTTPS 请求的证书(五)
BlocksKit 2.2.5 神奇的 BlocksKit(一)遍历、KVO 和分类
神奇的 BlocksKit(二)动态代理的实现
Alamofire iOS 源代码分析 --- Alamofire
SDWebImage iOS 源代码分析 --- SDWebImage
MBProgressHUD iOS 源代码分析 --- MBProgressHUD
Masonry iOS 源代码分析 --- Masonry
Redis 3.2.5 Redis 和 I/O 多路复用
Redis 中的事件循环
Redis 是如何处理命令的(客户端)

勘误

  • 如果在文章中发现了问题,欢迎提交 PR 或者 issue

转载

知识共享许可协议
作品Draveness 创作,采用知识共享署名 4.0 国际许可协议进行许可。