Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Class 在MVC中,视图的标准职责是什么?_Class_Oop_Model View Controller - Fatal编程技术网

Class 在MVC中,视图的标准职责是什么?

Class 在MVC中,视图的标准职责是什么?,class,oop,model-view-controller,Class,Oop,Model View Controller,在MVC中,视图的标准职责是什么?通过研究互联网上的书籍、示例和图表,我发现了模型、视图和控制器类之间完全不同的交互方法 在这些情况下,视图类不能直接访问模型 但是,在本例中,视图应该表示来自模型的数据,并与模型类进行交互。并且没有与控制器的交互 在其他示例中,视图类与模型类和控制器类都有交互: 因此,我有点困惑,究竟哪一种是标准方法还是最佳实践 谢谢你的回复 米多里科卡 软件工程师,作者 我认为,最后两个图完全违背了MVC逻辑。表示层应该与业务逻辑隔离。若需要从视图层上的业务逻辑中获

在MVC中,视图的标准职责是什么?通过研究互联网上的书籍、示例和图表,我发现了模型、视图和控制器类之间完全不同的交互方法

在这些情况下,视图类不能直接访问模型

但是,在本例中,视图应该表示来自模型的数据,并与模型类进行交互。并且没有与控制器的交互

在其他示例中,视图类与模型类和控制器类都有交互:

因此,我有点困惑,究竟哪一种是标准方法还是最佳实践

谢谢你的回复

米多里科卡 软件工程师,作者

我认为,最后两个图完全违背了MVC逻辑。表示层应该与业务逻辑隔离。若需要从视图层上的业务逻辑中获取任何信息,则必须将它们传递到表示层,并在控制器中包含响应上下文。另外,如果您需要在请求中处理模型端的任何信息,您必须在控制器端解决这个问题:)

重要的是,视图不能处理来自模型的数据。它可以直接从模型中读取,也可以通过控制器调用间接读取。但是要改变模型,它必须要求合作伙伴这样做。

你从哪里得到这些图片?你的来源是什么?我建议遵循大公司的做法,Microsoft()就是一个很好的例子。重要的是,视图不能操纵模型中的数据。它可以直接从模型中读取,也可以通过控制器调用间接读取。但要改变模型,它必须要求合作者这样做。@UweAllner您应该将您的评论作为答案发布