系列博客结构与核心内容
本系列博客将系统梳理 Objective - C 底层核心知识体系,涵盖语言特性、运行机制到工程实践的全维度探索。以下是内容框架:
一、语言本质与对象系统
- 易忘图
- 动态语言特性与消息传递机制
- Objective - C 与 C/C++ 的关联与差异
- OC 对象的本质
- isa 指针与类结构
- 对象内存布局与对齐规则
- Category 与 Extension
- 分类加载机制与方法覆盖原理
- 扩展(Extension)与分类的本质区别
二、高级特性解析
- KVO 与 KVC
- KVO 的实现原理与 isa - swizzling
- KVC 的底层查找逻辑与异常处理
- Block 的深度探索
- Block 的三种类型与内存管理
- 闭包捕获变量的底层实现机制
三、Runtime 核心机制
- Runtime(一)
- 类与元类的关系图谱
- 方法调用的消息转发流程
- Runtime(二)
- 动态方法解析与消息转发
- 关联对象的实现原理
- Runtime 应用实践
- 方法交换(Method Swizzling)
- 字典转模型的底层实现
四、运行时与多线程
- Runloop 底层原理
- Runloop 与线程的绑定关系
- Runloop 的五种模式与状态切换
- Runloop 应用场景
- 性能监控与卡顿优化
- 常驻线程的实现方案
- 多线程技术栈
- GCD 核心概念与队列管理
- 线程锁的实现与选择策略
- 常见多线程模式(如生产者 - 消费者)
五、内存与性能优化
- 内存管理机制
- 引用计数与 Side Tables
- AutoreleasePool 的底层实现
- Tagged Pointer 的内存优化策略
- 性能优化方案
- 卡顿监测与 FPS 优化
- 启动优化与瘦身方案
- 网络与渲染性能优化实践
六、架构设计与开发统计
- 架构设计模式
- MVC/MVVM/MVP/VIPER 对比与实践
- 组件化与模块化设计方案
- 开发统计方案
- 崩溃分析(Bugly 原理与符号表上传)
- 用户行为统计(友盟埋点与操作步骤分析)