
[Swift 中级 #4] 掌握 Swift 关联类型(associatedtype)
关联类型(associatedtype)是协议中预留的类型空位。本文整理著名 generic constraint 错误的原因、SE-0309 和 SE-0346 如何解除限制,以及 primary associated types 的用法。
阅读文章ARCHIVE · 10
从基础概念到实践决策,循序浏览。

关联类型(associatedtype)是协议中预留的类型空位。本文整理著名 generic constraint 错误的原因、SE-0309 和 SE-0346 如何解除限制,以及 primary associated types 的用法。
阅读文章
方法交换是一种在运行时互换连接选择器与 IMP 的映射表的技术。本文整理了惯用的完整实现、_cmd 说谎这一副作用,以及可以使用到什么程度的边界。
阅读文章
Mediator 在中心协调复杂的对象关系,Observer 将状态变化一对多地通知出去,Facade 则用简单入口封装复杂内部实现。本文通过 Swift 示例比较三种模式的差异和选择标准。
阅读文章
DI、IoC、DIP 是处于不同层次的概念。DIP 是决定依赖什么的原则,IoC 关注谁掌握控制权,DI 则是注入依赖的技术。本文结合示例和面试回答,完整梳理三者的区别。
阅读文章
ReactorKit 是让 UIKit 与 RxSwift 组合采用单向数据流作为事实标准的框架。本文总结 View 和 Reactor 两种角色、需要 Mutation 中间阶段的原因,以及它与 TCA 的区别。
阅读文章