模型-视图-控制器(Model-View-Controller, MVC)属于架构设计模式(Architectural Design Pattern),具体来说,它是一种分离关注点(Separation of Concerns)的模式,用于组织应用程序的代码结构。
MVC 的核心思想
-
模型(Model):
- 负责处理应用程序的数据和业务逻辑。
- 直接与数据库或其他数据源交互,并对数据进行处理。
- 通常独立于用户界面和控制器。
-
视图(View):
- 负责呈现数据,即用户界面部分。
- 不包含任何业务逻辑,只专注于如何展示模型的数据。
- 当模型更新时,视图会动态更新显示内容。
-
控制器(Controller):
- 负责处理用户输入(如点击、表单提交等)。
- 根据用户的操作更新模型,或者改变视图的状态。
- 起到连接模型和视图的桥梁作用。
设计模式类别
MVC 的设计模式特点:
- 架构模式: 提供整体系统的代码组织结构。
- 分层模式: 分离了业务逻辑、用户界面和用户输入,提高代码的可维护性和可扩展性。
- 解耦: 将关注点分离,降低了各个模块之间的耦合度。
这种模式常用于开发复杂的用户界面应用程序,比如 Web 应用程序和桌面软件。现代框架如 Django、Ruby on Rails 等就采用了 MVC 的变种。