zoukankan      html  css  js  c++  java
  • 设计模式02(结构性设计模式)

    结构型模式的模式有7种

    1.外观模式

    为了封装一些方法类,统一对外提供一个外观类,这个应该是使用最多的一种设计模式

    2.装饰模式

    2.1装饰模式,提供一个装饰类,配件类重写装饰类,装饰模式有点和建造者模式类似。

    2.2两者的区别在于,建造者是一个接口,在组装的时候是按照流程组装

    装饰模式是一堆配件,可以自由组装

    3.适配器模式

    3.1适配器模式一般在后期维护的时候会使用,比如:想复用存在的类,但是该类的接口和现在不一致

    3.2或者在使用第三方开发组间的时候,组件和现在软件的接口不一致,我们又不想改动我们的接口

    适配器模式有一个适配类,适配类继承 目标类。并且重写目标的方法

    4.组合模式

    4.1如果对象间存在树形结构,表示“部分-整体”的关系,这个时候使用组合模式会比较简单,

    其中有一个组合类,里面添加 Add,Remove,等等Operation,将部分组合到整体。

    5.桥接模式

    5.1有些变化很快的类,并不能直接按照继承关系,这个时候可以使用桥接模式,

    将抽象画和实体化先分离,使两者可以独立变化,减少派生类

    桥接模式和装饰模式有点像,两者主要区别:

    5.2桥接模式中所说的分离,其实是指将结构与实现分离(当结构和实现有可能发生变化时)
    或属性与基于属性的行为进行分离(提取分类);而装饰者只是对基于属性的行为进行封闭成独立的类。

    5.3桥接中的行为是横向的行为,行为彼此之间无关联;而装饰者模式中的行为具有可叠加性,
    其表现出来的结果是一个整体,一个各个行为组合后的一个结果。

    6.代理模式

    7.享元模式

  • 相关阅读:
    CruiseControl.NET 三言两语
    在MFC程序中增加控制台
    VS2005 编译Release版本出现清单文件的错误
    内存泄露问题
    软件设计原则
    boost::shared_ptr 分析与实现
    corelDraw 的CDR格式解析
    13. 量词操作符—【LINQ标准查询操作符】
    SQL SERVER执行查询的顺序
    CSLA命令对象的简单封装
  • 原文地址:https://www.cnblogs.com/sera/p/4243389.html
Copyright © 2011-2022 走看看