Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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
Model view controller 什么';它是MVC模式中的控制器,为什么它会存在?_Model View Controller - Fatal编程技术网

Model view controller 什么';它是MVC模式中的控制器,为什么它会存在?

Model view controller 什么';它是MVC模式中的控制器,为什么它会存在?,model-view-controller,Model View Controller,在使用Unity时,我意识到分离模型和视图将使代码更具可读性和直观性。构建整个模型,我所要做的就是创建一些UI并将其绑定到模型 但我仍然不明白什么是“控制器”,为什么它会存在。当我直接将视图绑定到模型,而不是通过控制器绑定时,我想我并没有遇到问题 所以问题是,如果我们可以直接将视图绑定到模型,为什么我们需要控制器?在模型和视图之间使用控制器有什么好处?在最高级别,控制器是视图(显示UI/UX)和模型(创建和管理数据库及其表)之间的链接。 诚然,在不使用任何控制器的情况下编写代码是可能的,但是您的

在使用Unity时,我意识到分离模型和视图将使代码更具可读性和直观性。构建整个模型,我所要做的就是创建一些UI并将其绑定到模型

但我仍然不明白什么是“控制器”,为什么它会存在。当我直接将视图绑定到模型,而不是通过控制器绑定时,我想我并没有遇到问题


所以问题是,如果我们可以直接将视图绑定到模型,为什么我们需要控制器?在模型和视图之间使用控制器有什么好处?

在最高级别,控制器是视图(显示UI/UX)和模型(创建和管理数据库及其表)之间的链接。 诚然,在不使用任何控制器的情况下编写代码是可能的,但是您的视图将很快变得非常混乱,并且每个文件都将充满逻辑,这些逻辑可以更好地存储在其他地方

因此,控制器(以及模型和一些其他位置,如帮助器)是整理所有后端代码的最佳位置,这样您只需将单个字段或对象发送到视图以进行显示。 一个例子有点痛苦,因为它的本质是控制器,当事情变得越来越复杂时,你可以在这里整理你的代码,但这是一篇让你走上正轨的好文章!嗯


我没有多年的经验,但据我所知,控制器为视图和模型提供了一座桥梁。当视图包含漂亮的部分,模型包含有用的部分时,控制器执行函数调用,将值从数据库传递到视图或将输入传递到模型。这提供了一种避免大量注入的方法,比如类a调用类B,调用类C,等等

您可以将规则业务放在控制器或视图中,但这不是MVC体系结构所期望的。软件编程中(对我来说)第一件重要的事情是可读性,即MVC提供的可读性


如果您有兴趣,可以搜索其他架构,如MVVM,然后进行比较。

您在使用Unity时说。你是说Unity3D作为一个应用程序吗?因为Unity内部的MVC实现与常规web应用程序内部的工作方式不同。