前言
苹果官方推荐的 APP 架构是 MVC 架构,后面所有的 MVP、MVVM 和 VIPER 架构都是基于 ViewController 的。
都试图将“视图控制器”拆分成更多的层级
MVC思想:视图不依赖于具体的数据类型,而是依赖于遵守特定协议的数据源,M 和V 是不存在依赖关系。
-
比如UIKit 中的UItableview一样,什么样的数据M,UItableview都可以展示,只要M遵守实现了UITableViewDataSource协议。
-
本文的例子:
M遵守的数据源协议: DKHomeDropdownViewDataSource
V:DKHomeDropdownView.h 具体看本文的附<