知识卡片

MVC模式的解耦价值

专业/工作 · 638

内容

iOS 应用把界面拆成三层:Model 只封装要展示的数据,View 只负责渲染独立控件, ViewController 居中衔接——一边从 Model 取数据组装给 View,一边把 View 上产生的用户 交互事件转化为对 Model 的更新。这种拆分的价值在于把”变化的原因”隔离开:纯粹的视觉调整 只需要改 View,不用碰数据结构或交互逻辑;交互逻辑的调整只需要改 ViewController,不需要 关心具体渲染细节或数据来源。发散:MVC 的实际约束力取决于开发者是否克制——如果开发者图 省事把数据获取、业务逻辑、视图渲染全堆进 ViewController,MVC 就会退化成事实上的”View Controller 巨石”,这也是后来 MVVM、MVP 等模式试图进一步拆分 ViewController 职责的 直接动机。

参考来源

《Swift 4从零到精通iOS开发》第15章《视图控制器与高级UI视图控件》