关键帧:让曲线编辑、预览与导出逐帧一致

亲手调整贝塞尔曲线,逐帧观察动画数值,再理解时钟、采样、切割与版本化数据如何共同保证关键帧一致性。

渲染架构设计动画
约 10 分钟

滤镜是一张查找表

从滤镜下载走进逐帧渲染:理解视频管线、帧缓冲、3D LUT,以及为什么草稿应保存特效标识符而不是文件路径。

Swift渲染架构设计
约 5 分钟

草稿不是一个文件,而是一张标识符关系图

用检查点、内容寻址素材和版本化文档设计云草稿,让崩溃恢复、跨设备续编、冲突与配额都有明确语义。

Swift架构设计持久化
约 6 分钟

一份代码、两个地区:五层隔离的设计

从 Workspace、依赖与 Subspec,到能力注入、配置和单个协议方法,为不同形状的地区差异选择合适的边界。

Swift架构设计依赖注入
约 5 分钟

跨团队协作,也像跨进程通信

从两个 App 的同步发布 SDK 出发,比较传文件与传标识符,理解小协议、共享事实来源、版本协商和异步回调的价值。

SwiftPhotoKit架构设计
约 5 分钟

WWDC 2019 一年后:把 Property Wrapper 用到生产里

用一个类型安全的属性包装器集中地区品牌差异,让业务代码不再反复判断当前 Target,同时明确数值、行为与模块边界。

Swift架构设计
约 4 分钟

为协同 Web 编辑器设计原生桥接协议

在 iOS SDK、WebKit 编辑器与实时协同引擎之间,建立类型明确、异步可控、能够恢复的协议边界。

SwiftWebKit架构设计
约 8 分钟

文档 SDK 为什么选择 Swinject

把依赖组装留在系统边界,让 Host、账号和文档会话分别拥有自己的生命周期,离线与测试也成为可明确组合的运行环境。

Swift依赖注入架构设计
约 7 分钟

为什么我们从 IGListKit 回到 UICollectionView

iOS 13 的 Diffable Data Source 与 Compositional Layout 改变了抽象边界:如何保留列表模块化,同时减少不再需要的适配层。

SwiftUIKit架构设计
约 7 分钟

用 ReSwift 收拢复杂文档列表的数据流

让筛选、元数据更新、缓存与网络共享一份权威状态,通过 Action、Reducer 和 Middleware 拒绝过期结果,明确状态归属。

Swift状态管理架构设计
约 5 分钟

一个页面、两个 Table View、三种加载任务

从 Banner 与内容列表的滚动交接出发,明确手势归属、惯性交接和刷新、运营位、分页之间的优先级。

SwiftUIKit
约 6 分钟

用 Swift OptionSet 建模可组合的文档权限

将读取、编辑和链接分享拆成能力集合,再统一处理文件夹继承、显式限制与账号策略,避免角色组合不断膨胀。

Swift架构设计
约 4 分钟

实现一个 LRU 缓存

用双向链表维护访问顺序,用哈希表定位节点,理解 LRU 淘汰策略及其 C++ 实现。

算法
约 3 分钟

沿着一次 GET 请求读懂 AFNetworking 3.x

以 AFNetworking 3.2.1 为例,追踪请求序列化、Task 与代理的协作,并区分回调队列、连接数与业务并发限制。

Objective-C网络架构设计
约 3 分钟

Objective-C 的 Category 与 Class Extension

Category 在运行时扩展行为,Class Extension 参与类本身的编译。理解两者的生命周期、存储能力和使用边界。

Objective-C运行时
约 4 分钟

从零实现 UITableView 的 Cell 复用

从一千行数据和一个小小的可视窗口出发,用 Swift 重建复用池,理解异步图片错位与状态残留的根源。

SwiftUIKit
约 5 分钟

理解 Objective-C Runtime:从消息发送到消息转发

从 isa、类与元类出发,串起 SEL、IMP、方法缓存和消息转发,理解 Objective-C 语法背后的运行机制。

Objective-C运行时
约 5 分钟