draveness

Analyze

Draven's Blog
By draveness

ios article swift objective-c sourcecode analyze

Analyze



Banner designed by Levine

为什么要建这个仓库

欢迎使用 RSS 订阅我的博客 点击订阅


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


微信公众号


勘误

转载

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