MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。而QT中没有Controller说法,而是使用了Delegate委托,因此应称为MVD模式。主要目的是将界面与数据进行隔离,解除耦合性。
框架:
VIEW:视图。表示用户界面,负责展示数据。其所需要的数据可以从model中间接取出,不接触数据源。
MODEL:模型。负责管理数据,提供接口,是唯一和数据集打交道的组件。一个Model可以映射到多个View,这样可以以不同方式查看同一份数据。如果底层数据源的存储改变了,我们只需要处理Model就可以了。
DELEGATE:代理。负责VIEW和MODEL的交互,协调Model和View之间的数据。如可以自定义数据条目item的绘制、显示与编辑方式。
例如,Data可以代表一个数据库,而模型可以提供一些增加条目、删除条目、改变条目、获取某一信息的接口,代理负责应当如何展示这些条目。