设计模式:
命令模式:ReactiveCocoa 的RACCommand实现MVVM
策略模式:Swift 中的map,将具体算法让暴露给外部实现
架构模式:
MVC:
MVVM:通过与View的一一对应,使用如ReactiveCocoa框架实现数据的双向绑定(简化手动同步逻辑)
MVP: 通过将View与Model协调交互的逻辑放到Presenter里面,可以达到跨Controller逻辑复用,另外如果Presenter依赖的是某个View的协议还可以达到View的灵活替换,以及更容易的单元测试(不用测Controller)。