iOS知识体系
2021-07-01 10:26:50 2 举报
AI智能生成
iOS知识体系
作者其他创作
大纲/内容
应用开发模块
GUI相关
UIKit
Core Animation
Core Image
Core Graphics
OpenGL ES
数据解析相关
json解析
YYModel
JsonModel
Mantle
网络请求相关
AFNetworking
便捷三方库选择
动画相关
facebook的pop库
JazzHands
lottie
加载等待动画:MBProgressHUD和SVProgressHUD
刷新库:MJRefresh
自动布局相关
Masnory
Cartography
SnapKit
AutoLayout
文本处理相关
YYText
DTCoreText
响应式编程
ReactiveCocoa
ReactiveX
RxSwift
RxKotlin
RxJava
Log库:CocoaLumberjack
组件化库:Beehive
驱动开发
ATDD: Acceptance Test Driven Development(验收测试驱动开发)
TDD: Test-driven development (测试驱动开发)
BDD:Behavior-Driven Development (行为驱动开发)
编码规范
原生与前端
JavaScriptCore
布局区别
原生布局
前端布局
渲染区别
原生渲染
Flutter 渲染
React Native 渲染
跨端方案
Flutter
React Native
H5
Weex
动态化方案分析
原生动态布局
flexbox文件下发
WaxPatch动态化
JSPatch动态化
OCS
基础模块
开发阶段
启动流程
界面布局
架构设计
封装
数据流转
组件化
调试测试阶段
提速调试
代码编译优化
静态分析
质量测试
人工检测
自动检测
发布阶段
埋点
代码埋点
大数据埋点/无痕埋点
可视化埋点
App体积优化
无效资源
无效静态库
无效SDK
上线阶段
监控
崩溃监控
卡顿监控
性能监控
日志收集
多线程问题
电量问题
体验反馈
原理模块
系统内核XNU
内存优化
应用瘦身
内存分布讲解
ARC
内存管理
引用计数
ARC规则
ARC实现
TaggedPointer & isa
散列表存储原理
引用计数源码分析
自动释放池
应用内存泄漏检测 & 分析
Runtime
Runtime是什么?为什么需要Runtime
Runtime常用API应用
Method Swizzling的坑与应用
方法的本质,sel是什么?IMP是什么?两者之间的关系又是什么?
Runtime实例变量与类结构
objc_msgForward函数是做什么的,直接调用它将会发生什么?
Runtime是如何实现weak的,为什么可以自动置nil
Block
Block内存关系
Block经典问题循环引用&解决
Block底层分析
Block实质
Block截获自动变量值
Block的存储域
Block截获对象
__block说明符
__block变量存储域
__block变量和对象
Block底层Hook
AOP: Aspect Oriented Programming 面向切面编程。
Method Swizzling
libffi
多线程
多线程原理
线程的生命周期
线程与runloop的关系
iOS八大锁的对比
GCD
队列与函数
dispatch_barrier_async/sync栅栏函数应用及底层
dispatch_group调度组
dispatch_source
单例底层原理
Dispatch Semaphore信号量
KVC&KVO
KVC流程
KVC自定义及异常处理
KVC进阶用法
KVO初探
KVO底层原理
KVO内部流程
KVO自定义验证原理
KVO延伸函数编程思想&自动销毁
iOS底层探索
对象
alloc & init探索
汇编分析 & 编译器优化
透过源码分析被优化的部分
配置LLDB调试系统源码
allocWithZone剖析
_class_createInstanceFromZone源码分析
系统字节对齐算法解析
isa、superclass探索原理
Instance、class、meta
属性
属性加载原理
property_list_t & ivar_list_t对比分析
成员变量、实例变量、属性的对比
宏结构预编译
方法
方法底层探索
SEL方法编号编译加载
IMP函数实现
方法签名
objc_msgSend消息流程 & Hook
IMP汇编流程查看
_class_resolveMethod动态方法解析
消息转发机制
汇编反汇编分析消息机制
协议
协议的关联属性
方法覆盖method_list原理
协议的加载原理
类
class本质 & 继承链
objc_class结构
class_rw_t & class_ro_t分析
class加载原理
realizeClass、methodizeClass源码分析
static_init分析
gdb_objc_realized_classes & remapped_class_map & future_named_class_map
分类
分类编译加载
分类方法覆盖性问题
关联属性编译存储
object_getClass底层实现
load方法加载原理
initialize加载原理
优化
界面优化
视图加载
帧率与丢帧
卡顿原理
卡顿检测 & 优化
ASDK分析
离屏渲染
架构优化
架构模式
MVC架构
MVVM架构
MVP架构
Adapter设计解重
Context设计解耦合
响应链事件传递
启动优化
应用首次启动
热启动
冷启动
升级后启动
0 条评论
下一页