MVC模式【行为模式第十三篇】

本文深入解析MVC(模型-视图-控制器)模式的核心概念及其组成部分:模型端负责执行任务而不涉及用户界面逻辑;多个视图端展示同一数据的不同表现形式,并能自动更新;多个控制器端处理用户输入并更新模型状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MVC模式:就是模型-视图-控制器模式
一、架构模式
1、模型端
在MVC模型里,模型便是执行某些任务的代码,而这部分代码并没有任何逻辑决定它对用户端的表示方法。
模型端只有纯粹的功能性接口,也就是一系列的公开方法。通过这些公开方法,便可以取得模型端的所有功能。
在这些公开方法中,有些是取值方法,让系统其他部分可以得到模型端的内部状态参数,其他的改值方法则允许
外部修改模型端的内部状态。
但是一般来说,模型端必须有方法登记视图,以便在模型端的内部状态发生变化时,可以通知视图端。
在java语言里,一个模型端可以继承java.util.Observerable类。此父类可以提供登记和通知视图所需的接口。

2、多个视图端
在MVC模式里面,一个模型端可以有几个视图端,而实际上复数的视图端是使用MVC的原始动机。
使用MVC模式可以允许多余一个的视图端存在,并且可以在需要的时候动态地登记上所需的视图。
在Excel表格中,一个饼图、一个棒图和一个表格均是同组数据的不同视图端,当用户通过任何一个视图修改数据时,
所有的视图都会按照新数据更新自己。
在java语言的java.awt库和javax.swing库里,所有的视窗构件均可以用来建造视图端。但是一个视图如果能够自动
得到更新,便需要实现java.util.Observer接口,这样便使得MVC模式符合观察者模式的定义。
在视图端里,视图可以嵌套,这意味着在视图端里均会有合成模式。

3、多个控制器端
MVC模式的视图端是与MVCF模式的控制器结合使用的。当用户端与相应的视图发生交互时,用户可以通过视窗更新模型的状态,
而这种更新是通过控制器端进行的。控制器端通过调用模型端的改值方法更改其状态值。与此同时,控制器端会通知所有的登记
了的视图刷新显示给用户。这意味着在视图端对象和控制器端对象之间会有观察者模式的应用。
一个控制器端对象在回应视图端请求时,会采用策略模式的方式决定如何回应。

如果想深入了解java模式,必须详细研读以上文章。必有所得啊。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值