`
java苹果+番茄
  • 浏览: 65724 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

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

阅读更多
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模式,必须详细研读以上文章。必有所得啊。
分享到:
评论
12 楼 liangcaijiu 2010-03-05  
对设计模式认识很浅,但在项目能上的很少,这可能大型用得多吧
11 楼 andsofish 2010-02-26  
切勿为了模式而模式,手中无剑心中有剑乃王道也
10 楼 zhangygood 2010-02-25  
在做项目的时候,二十三中设计模式中真正会去的很少。
9 楼 lynopl111404010622 2010-02-23  
我很认真的谢谢你。。。看了好几天了,呵呵。。
8 楼 java苹果+番茄 2009-10-27  
谢谢前辈指导,呵呵
7 楼 wocsok 2009-10-27  
楼主可能不太经常看源代码吧  看看JAVA源代码 所有的模式就都见全了  模式相当有用 建议深入研究  因为只要你写大于一个类的时候 就很有可能用到模式了 现在弄BS可能平时你们接触的模式少  但是要要做到真正的研究JAVA 就需要去研读源代码 这样你才能改一些东西 写一些更适合自己软件的东西  其实你看看SPRING源代码就好了  当然了你得把23种比较经典的源代码都熟悉了否则你指定看的一知半解的  呵呵  加油   程序员都是这么一点一点过来的
6 楼 whaosoft 2009-10-26  
这么多的设计模式,项目中用到的却不是太多,只是那几个
5 楼 java苹果+番茄 2009-10-25  
前面兄弟讲的很正确,但是真正用于项目中的很少,而且我敢说就算是用了有很多程序员也未必能说出个所以然来。但是也不能死盯着设计模式,硬要使用它,只能用到有需要它之处啊,本想每个模式写个好点的例子,但这段时间项目太忙,所有如果有人感兴趣,可写点让大家分享一下,本人在此谢过。
4 楼 xinyu126 2009-10-25  
设计模式是看似简单。用时神奇的东西!!!支持!
3 楼 java苹果+番茄 2009-10-24  
strongant 写道
有点扯淡了。。

上面兄弟,如果不懂请不要妄加评论,谢谢。
2 楼 strongant 2009-10-24  
有点扯淡了。。
1 楼 strongant 2009-10-24  
难道,这就是mvc?

相关推荐

    java设计模式

    第13章 原型模式 13.1 个性化电子账单 13.2 原型模式的定义 13.3 原型模式的应用 13.3.1 原型模式的优点 13.3.2 原型模式的使用场景 13.4 原型模式的注意事项 13.4.1 构造函数不会被执行 13.4.2 浅拷贝和深拷贝 ...

    ActionScript 3.0设计模式扫描版_方红琴译

    第Ⅰ部分 无常的变化 ...第13章 对称代理模式 同步游戏和结果 对称代理模式 对称代理模式使用的主要00P概念 游戏玩家接口 游戏裁判员 在互联网上共享的信息 游戏玩家一代理类 支撑类和文档文件 小结...

    设计模式可复用面向对象软件的基础.zip

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

    设计模式--C++

    第 5 章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链)—对象行为型模式 147 5.2 COMMAND(命令)—对象行为型模式 154 5.3 INTERPRETER(解释器)—类行为型模式 162 5.4 ITERATOR(迭代器)—对象行为型...

    《设计模式》中文版(23个设计模式的介绍与运用)

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

    设计模式(.PDF)

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

    GOLF设计模式(C++语言版)

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象...

    Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides23种设计模式

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

    《国外写的,翻译版本》设计模式

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

    设计模式 GOF 23

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

    设计模式:可复用面向对象软件的基础--详细书签版

    第5章 行为模式 147 5.1 chain of responsibil ity(职责链) —对象行为型模式 147 5.2 command(命令)—对象行为型 模式 154 5.3 interpreter(解释器)—类行为型 模式 162 5.4 iterator(迭代器)—对象...

    设计模式文档

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

    ASP.NET设计模式-杨明军译(源码)

    1.3.5 基本模式、行为模式和结构模式 1.4 其他有名的设计实践 1.4.1 测试驱动设计 1.4.2 领域驱动设计 1.4.3 行为驱动设计 1.5 小结 第2章 剖析模式的模式 2.1 如何阅读设计模式 2.1.1 GoF模式模板 2.1.2...

    设计模式part1

    录 序言 前言 读者指南 第1章 引言 1 1.1 什么是设计模式 2 1.2 Smalltalk MVC中的设计模式 3 1.3 描述设计模式 4 1.4 设计模式的编目 5 1.5 组织编目 7 1.6 设计模式怎样解决设计...

    设计模式part2

    录 序言 前言 读者指南 第1章 引言 1 1.1 什么是设计模式 2 1.2 Smalltalk MVC中的设计模式 3 1.3 描述设计模式 4 1.4 设计模式的编目 5 1.5 组织编目 7 1.6 设计模式怎样解决设计...

    设计模式 design pattern

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

    JAVA经典设计模式大全

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象...

    设计模式___

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

    设计模式(Design.Patterns.CHN)

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

    软件设计师必读的书-设计模式

    第5章 行为模式 147 5.1 CHAIN OF RESPONSIBIL ITY(职责链) —对象行为型模式 147 5.2 COMMAND(命令)—对象行为型 模式 154 5.3 INTERPRETER(解释器)—类行为型 模式 162 5.4 ITERATOR(迭代器)—对象行为型 ...

Global site tag (gtag.js) - Google Analytics