`
king_tt
  • 浏览: 2222049 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

【设计模式】复合模式

 
阅读更多

OO基础

抽象

封装

多态

继承


OO原则

封装变化

多用组合,少用继承

针对接口编程,不针对实现编程

为交互对象的松耦合设计而努力

类应该对扩展开放,对修改关闭

依赖抽象,不要依赖具体类

只和朋友交谈

别找我,我会找你

类应该只有一个改变的理由


OO模式

复合模式——复合模式结合两个或两个以上的模式,组成一个解决方案,解决一再发生的一般性问题。


1. MVC是复合模式,结合了观察者模式、策略模式和组合模式。

2. 模型使用观察者模式,以便观察者更新,同时保持两者之间解耦。

3. 控制器是视图的策略,视图可以使用不同的控制器实现,得到不同的行为。

4. 视图使用组合模式实现用户界面,用户界面通常组合了嵌套的组件,像面板、框架和按钮。

5. 这些模式携手合作,把MVC模型的三层解耦,这样可以保持设计干净又有弹性。

6. 适配器模式用来将新的模型适配成已有的视图和控制器。

7. Model2是MVC在Web上的应用。

8. 在Model2中,控制器实现成Servlet,而JSP/HTML实现视图。

分享到:
评论

相关推荐

    深入浅出设计模式之复合模式

    根据提供的信息,我们可以了解到本文主要关注的是《Head First 设计模式》一书中关于“复合模式”的相关内容。虽然未提供具体章节的内容,但基于标题、描述和标签,我们可以深入探讨复合模式的基本概念、应用场景...

    CompositePattern:复合设计模式示例

    这种设计模式属于结构模式,因为该模式创建了一组对象的树形结构。 此模式创建一个包含其自己的对象组的类。 此类提供了修改其相同对象组的方法。 我们通过以下示例演示复合模式的使用,在该示例中我们将显示组织的...

    python设计模式第2版.pdf

    设计模式是构建大型软件系统zui强大的方法之一,优化软件架构和设计...全书囊括单例设计模式、工厂模式、门面模式、代理模式、观察者模式、命令模式、模板方法模式、复合模式、状态设计模式以及反模式等多种设计模式。

    C++ 设计模式(复合)

    vs2013工程的设计模式,根据《head first设计模式》改写的一个多模式协作的例子。结合着 http://download.csdn.net/detail/ustb_atrx/9434958 一起看比较好。

    java模式,设计模式,多种设计模式

    ### Java设计模式详解 #### 一、引言 自从J2EE(Java 2 Enterprise Edition)的出现,Java的企业级应用程序开发得到了极大的简化。然而,随着J2EE在各行各业中的广泛应用,开发人员逐渐意识到需要一种更为系统化的...

    java设计模式-复合模式

    设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段...

    Head.First设计模式_PDF

    第12章介绍如何将两个以上的设计模式结合起来成为新的设计模式(例如著名的MVC模式),作者称其为复合设计模式(这是作者自创的名称,并非四人组的标准名词),第13章则很快地浏览尚未介绍的设计模式,包括Bridge、...

    浅析23种软件设计模式

    浅析23种软件设计模式 软件设计模式是软件开发中的一种解决方案,旨在解决软件设计中的各种问题。下面我们将对23种常见的软件设计模式进行浅析。 1. 工厂模式:工厂模式的主要思想是将客户类和工厂类分开,客户类...

    C#设计模式.PDF

    根据提供的文档概览,我们可以对每个章节所涉及的设计模式进行详细的阐述和解释。下面将针对文档中提及的设计模式逐一展开,以便更好地理解这些模式的概念、结构、应用场景以及优缺点。 ### 1. 面向对象程序设计...

    head first 设计模式

    第12章介绍如何将两个以上的设计模式结合起来成为新的设计模式(例如著名的MVC模式),作者称其为复合设计模式(这是作者自创的名称,并非四人组的标准名词),第13章介绍如何进一步学习设计模式,如何发觉新的设计模式...

    HeadFirst设计模式(中文版)

    第12章介绍如何将两个以上的设计模式结合起来成为新的设计模式(例如著名的MVC模式),作者称其为复合设计模式(这是作者自创的名称,并非四人组的标准名词),第13章介绍如何进一步学习设计模式,如何发觉新的设计模式...

    大优惠Head First 设计模式

    第12章介绍如何将两个以上的设计模式结合起来成为新的设计模式(例如著名的MVC模式),作者称其为复合设计模式(这是作者自创的名称,并非四人组的标准名词),第13章介绍如何进一步学习设计模式,如何发觉新的设计模式...

    Java设计模式刘伟书本中模拟考试答案

    在《Java设计模式》这本书的模拟试题及其参考答案中,涉及了多条设计模式的知识点,以及它们的应用场景和实现方法。现在将这些知识点详细地解释如下: 1. 开闭原则(Open-Closed Principle, OCP): 开闭原则是面向...

    java23种设计模式

    java23种设计模式,每一种模式都有详细的讲解,很全面,如果你想深入了解一下java23种设计模式,这会非常适合你的哦!上传乃为百度云连接,失效请留言。 内容: 001策略模式! N. B8 ~' D! f9 j+ g0 I 002观察者模式 ...

    Head First 设计模式 JAVA源码

    第12章介绍如何将两个以上的设计模式结合起来成为新的设计模式(例如著名的MVC模式),作者称其为复合设计模式(这是作者自创的名称,并非四人组的标准名词),第13章介绍如何进一步学习设计模式,如何发觉新的设计模式...

    Head First 设计模式(中文版)

    第12章介绍如何将两个以上的设计模式结合起来成为新的设计模式(例如著名的MVC模式),作者称其为复合设计模式(这是作者自创的名称,并非四人组的标准名词),第13章介绍如何进一步学习设计模式,如何发觉新的设计模式...

    HeadFirst 设计模式java源代码

    第12章介绍如何将两个以上的设计模式结合起来成为新的设计模式(例如著名的MVC模式),作者称其为复合设计模式(这是作者自创的名称,并非四人组的标准名词),第13章介绍如何进一步学习设计模式,如何发觉新的设计模式...

Global site tag (gtag.js) - Google Analytics