我对在示例上下文中使用 MVC 表示怀疑,如下所示:
考虑一个小绘图应用程序的示例。
现在说例如,有一个文本框,用户可以在其中输入选定形状的角度,预期结果应该是,每个选定的形状都应该按照文本框中指定的角度旋转。
假设我有一个形状对象,它是一个名为 ShapeView 的视图给定的视图有它自己的数据,比如它的位置、当前旋转角度、笔触颜色、填充颜色等......所以我有一个形状模型作为 ShapeModel
所以现在我有了控制器,它可以处理这个文本框和多个形状视图。文本框值的更改使控制器可以采取必要的步骤来旋转形状。
问题:
那么问题来了,控制器是否应该直接访问shapeview的shapeModel并调用rotate方法呢?或者控制器应该调用 shapeView 的旋转方法,内部调用 shapeModel 的旋转方法?
简而言之,任何外部实体都应该直接访问视图的模型吗?还是应该只通过 View ?直接访问模型是个好主意吗?如果我访问有任何问题或疑虑。?