MVC是Model-View-Controller的简称,即模型-视图-控制器。
MVC是一种设计模式,它强制性地将应用程序的输入、处理、输出流程按照模型、视图、控制器的方式进行分类,并被分成3层:
模型层、视图层、控制层。
1.视图
-
- 代表用户交互界面。
- 视图向用户显示相关的数据,并能接收用户输入的数据,但是它并不进行任何实际的业务处理。
- 视图可以向模型查询业务状态,但不能改变模型。
- 视图还能接收模型发出的数据更新事件,从而对用户界面进行同步更新。
2.模型
-
- 模型是业务流程/状态的处理以及业务规则的制定。
- 业务流程的处理过程对其他层来说是黑箱操作,模型接收视图请求的数据并返回最终的处理结果。
- 一个模型能为多个视图提供数据。由于同一个模型可以被多个视图重用,所以提高了可重用性。
- 业务模型的设计是MVC最主要的核心。
3.控制器
-
- 控制器可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。
- 控制层不做任何数据处理。
- 比如:用户单击一个链接,控制层接收请求后,并不处理业务信息,而只将用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。
- 一个模型可能对应多个视图,一个视图也可能对应多个模型。
MVC的优点
-
- 多个视图能共享一个模型。
- 在MVC设计模式中,模型响应用户请求并返回响应数据,视图负责格式化数据并将它们呈现给用户,业务逻辑和表示层分离,同一个模型可以被不同的视图重用,大大提高了代码的可重用性。
- 模型是自包含的,与控制器和视图保持相对独立,所以可以方便地改变应用程序的数据层和业务规则。
- 由于MVC的3个模块相对独立,改变其中一个均不会影响其他俩个,所以依据这种设计思想能构造良好的松耦合的构件。
MVC处理过程
-
- 首先,控制器接收用户的请求,并决定应该调用哪个模型来进行处理。
- 然后,模型根据用户请求进行相应地业务逻辑处理并返回数据。
- 最后,控制器调用相应地视图来格式化模型返回的数据,并通过视图呈现给用户。
时间: 2024-10-16 07:34:47