MVC中的5种设计模式

一、类的模型MVC - 模型/视图/控制器 三元组 , 这适用于应用程序的分层开发。

Model模型 - 应用对象。代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器;

View视图 - 它在屏幕上的显示。代表模型包含的数据的可视化;

Controller - 用户界面对用户输入的响应方式。 控制器 控制数据流向模型对象,并在数据变化时更新视图(作用于模型和视图上)。

二、包含的设计模式 - 5种

(1)Observer 观察者模式

例如:如图,一个模型,对应三个视图。模型带有一些数值,视图分别有不同的呈现方式,来显示这些数据。

当模型数据发生改变,它就会通知视图,而视图就会与模型通信以访问这些数据并渲染。

反映了视图与模型的分离。还解决了:对象分离,使一个对象的改变能引起另一些对象的改变,而这个对象(模型)还并不需要知道那些被影响的对象(几种视图)的细节。

(2)Composite 组合模式

视图可以嵌套。一个视图可由多个构建组成。

将一些对象划为一组,并将该组对象当做一个对象来使用。

该模式允许你创建一个类的层次结构,它的子类定义了原子对象,而其他类定义了组合对象。因此这些组合对象是原子对象组合而成的更为复杂的对象。

(3)Strategy 策略模式

MVC允许在不改变的视图外观的情况下,改变视图对用户输入的响应方式。

View使用Controller子类的实例来实现一个特定的响应策略。要实现不同的响应策略就需要不同的Controller实例来替换(甚至在运行时刻改变响应方式)。

View-Controller关系是Strategy模式的一个例子。

(4)指定视图缺省控制器 - Factory Method 工厂方法模式;

(5)增加视图滚动 - Decorator 装饰器模式;

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务