#Swift
关于Swift的 12 篇文章
滤镜是一张查找表
从滤镜下载走进逐帧渲染:理解视频管线、帧缓冲、3D LUT,以及为什么草稿应保存特效标识符而不是文件路径。
草稿不是一个文件,而是一张标识符关系图
用检查点、内容寻址素材和版本化文档设计云草稿,让崩溃恢复、跨设备续编、冲突与配额都有明确语义。
一份代码、两个地区:五层隔离的设计
从 Workspace、依赖与 Subspec,到能力注入、配置和单个协议方法,为不同形状的地区差异选择合适的边界。
跨团队协作,也像跨进程通信
从两个 App 的同步发布 SDK 出发,比较传文件与传标识符,理解小协议、共享事实来源、版本协商和异步回调的价值。
WWDC 2019 一年后:把 Property Wrapper 用到生产里
用一个类型安全的属性包装器集中地区品牌差异,让业务代码不再反复判断当前 Target,同时明确数值、行为与模块边界。
为协同 Web 编辑器设计原生桥接协议
在 iOS SDK、WebKit 编辑器与实时协同引擎之间,建立类型明确、异步可控、能够恢复的协议边界。
文档 SDK 为什么选择 Swinject
把依赖组装留在系统边界,让 Host、账号和文档会话分别拥有自己的生命周期,离线与测试也成为可明确组合的运行环境。
为什么我们从 IGListKit 回到 UICollectionView
iOS 13 的 Diffable Data Source 与 Compositional Layout 改变了抽象边界:如何保留列表模块化,同时减少不再需要的适配层。
用 ReSwift 收拢复杂文档列表的数据流
让筛选、元数据更新、缓存与网络共享一份权威状态,通过 Action、Reducer 和 Middleware 拒绝过期结果,明确状态归属。
一个页面、两个 Table View、三种加载任务
从 Banner 与内容列表的滚动交接出发,明确手势归属、惯性交接和刷新、运营位、分页之间的优先级。
用 Swift OptionSet 建模可组合的文档权限
将读取、编辑和链接分享拆成能力集合,再统一处理文件夹继承、显式限制与账号策略,避免角色组合不断膨胀。
从零实现 UITableView 的 Cell 复用
从一千行数据和一个小小的可视窗口出发,用 Swift 重建复用池,理解异步图片错位与状态残留的根源。