胖Model和瘦Model
MVC
M应该做的事
给ViewController提供数据
给ViewController存储数据提供接口
提供经过抽象的业务基本组件,供Controller调度
C应该做的事
管理View Container的生命周期
负责生成所有的View实例,并放入View Container
监听来自View与业务有关的事件,通过与Model的合作,来完成对应事件的业务。
V应该做的事
界面元素表达,响应与业务无关的事件,并因此引发动画效果,点击反馈等。
什么是胖Model 和瘦Model?
胖Model就是在model 中进行一些处理,让VC只是用很少的代码逻辑处理即可完成的一种模式。
瘦Model就是在model中不进行任何处理,让VC全部操作
我们在MVC中经常使用的thin model。
DDD
在DDD中,瘦Model类似DTO,胖Model则包含持久层CRUD操作。