MVC(Model-View-Controller)是一种软件设计模式,它将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器(Controller)。这种模式旨在提高代码的可维护性和可扩展性。
模型(Model)
模型是应用程序数据的核心部分。它负责处理应用程序的数据逻辑,包括数据的获取、存储和更新。模型通常包含业务逻辑和数据访问逻辑。
模型特点
- 数据存储和处理:模型负责数据的存储和处理。
- 业务逻辑:模型包含业务逻辑,例如数据验证和转换。
- 数据访问:模型负责与数据存储层(如数据库)进行交互。
视图(View)
视图负责显示数据给用户。它通常由 HTML、CSS 和 JavaScript 组成。视图从模型获取数据,并使用这些数据来渲染用户界面。
视图特点
- 数据展示:视图负责将模型中的数据展示给用户。
- 用户交互:视图处理用户的输入,并将这些输入传递给控制器。
- 响应式设计:视图应该能够适应不同的设备和屏幕尺寸。
控制器(Controller)
控制器负责处理用户的输入,并根据用户的输入来更新模型和视图。它是应用程序的“大脑”,负责协调模型和视图之间的交互。
控制器特点
- 用户输入:控制器接收用户的输入,例如表单提交。
- 模型更新:控制器根据用户的输入更新模型。
- 视图更新:控制器根据模型的变化更新视图。
示例
以下是一个简单的 MVC 示例:
<!-- 视图 -->
<form action="/submit" method="post">
<input type="text" name="username" />
<input type="submit" value="提交" />
</form>
<!-- 控制器 -->
if (request.method == 'POST'):
username = request.form['username']
model.save(username)
view.show_success_message()
<!-- 模型 -->
class Model:
def save(self, username):
# 保存用户名到数据库
pass
def get_username(self):
# 从数据库获取用户名
return "John Doe"
