zoukankan      html  css  js  c++  java
  • 常用的设计模式整理

    一概述

    1.1设计模式

    设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。有种说法是“懂了设计模式,你就懂了面向对象分析和设计(OOA/D)的精要

    1.2为什么要使用设计模式

    使程序呈现高内聚,低耦合的良好特性,使程序的复用性,可扩展性以及稳定性都有大大提高。有效节省开发成本,提高软件维护效率。

    二讨论几个具体的设计模式

    2.1创造模式

    工厂模式

    提供一个创建类的统一接口.

    目的: 每次创建类时, 只需要调用这个接口就可以了, 不用每次都需要写一次创建代码

    单例模式

    单例模式是工厂模式的一个特例。保证在内存中一个类只有一个实例存在, 并且提供一个访问该实例的全局访问点.

    目的: 例如一个系统中可能存在多个打印任务, 但是只能一个正在工作的打印任务在内存中.

    建造者模式

     将工厂模式稍加变化可以得到建造模式

    2.2模板模式和策略模式

    模板模式

    定义一个操作中的算法骨架(使用继承), 而将一些步骤延迟到子类中

    策略模式

    策略模式定义一系列的算法(使用委托),把它们一个个封装起来,并且使它们可以相互替换

    2.3简化问题的模式

    门面模式

    把一组复杂的接口隐藏在一个简单且特定的接口后面

     

    中介者模式

    把对象之间的引用关系包装在一个特定的容器里面

     

    2.4拓展功能的模式

    访问者模式

    把现有类结构上的对象“分配”到一个名为访问者的类中,在访问者的相应方法中配置对象、改变对象或扩展功能

    装饰模式

    把现有类结构上的对象“注入”一个装饰类中,在装饰类中扩展它的功能

  • 相关阅读:
    Netty 超时机制及心跳程序实现
    ZJUTACM
    寻找素数对
    HDU 1021 Fibonacci Again
    HDU 1019 Least Common Multiple
    HDU 1017 A Mathematical Curiosity
    HDU 1014 Uniform Generator
    HDU 1013 Digital Roots
    HDU 1008 Elevator
    Educational Codeforces Round 2 B. Queries about less or equal elements
  • 原文地址:https://www.cnblogs.com/hzcjd/p/13166964.html
Copyright © 2011-2022 走看看