zoukankan      html  css  js  c++  java
  • 00.00 设计模式总介

    设计模式——总介

    分类

    GoF总结出来23种设计模式,大体上可以分为3大类,分别从对象的创建、对象的结构及对象的行为这3个方面来总结代码编写经验。

    第一大类:创建型模式

           在程序设计中,如果将对象的创建和使用都放在客户程序中一起执行,首先会使得客户的资源效率占用很大;客户程序代码增大,又使得客户程序的维护费用加大。所以很多时候有必要把对象的创建与使用分离开来,创建型模式就是为了解决这类问题,正所谓“分而治之”,大家都省心。这样做也可以满足一些特殊的需求。

           01.00      简单工厂模式(Simple Factory)

           01.01      工厂方法模式(Factory Method)

           01.02      抽象工厂模式(Abstract Factory)

           01.03      创建者模式(Builder)

           01.04      原型模式(Prototype)

           01.05      单例模式(Singleton)

    第二大类:结构型模式

           优秀的系统,必然有良好的整体设计,系统设计包括静态设计与动态设计,结构型模式就是为了系统整体或者子系统静态关系方面的高内聚,松耦合;而行为型模式则是针对动态方面的。

           02.01      外观模式(Facade)

           02.02      适配器模式(Adapter)

           02.03      代理模式(Proxy)

           02.04      装饰模式(Decorator)

           02.05      桥模式(Bridge)

           02.06      组合模式(Composite)

           02.07      享元模式(Flyweight)

    第三大类:行为型模式

           03.01      模版方法模式(Template Method)

           03.02      观察者模式(Observer)

           03.03      状态模式(State)

           03.04      策略模式(Strategy)

           03.05      职责链模式(Chain of Responsibility)

           03.06      命令模式(Command)

           03.07      访问者模式(Visitor)

           03.08      调停者模式(Mediator)

           03.09      备忘录模式(Memento)

           03.10      迭代器模式(Iterator)

           03.11      解释器模式(Interpreter)

    学习设计模式的资源

    (1)       设计模式开山之作:GoF的《设计模式》。

    (2)       板里桥人的系列文章:http://www.jdon.com/designpatterns/index.htm

    (3)       林信良的系列文章:http://caterpillar.onlyfun.net/Gossip/DesignPattern/DesignPattern.htm

    (4)       Alexander(亚历山大)的《建筑的永恒之道》。

    (5)       埃克尔的《Java编程思想》。

    (6)       郭志学的《易学——设计模式》。

    (7)       程杰的《大话设计模式》。

  • 相关阅读:
    [ZOJ 4062][2018ICPC青岛站][Plants vs. Zombies]
    [Wannafly挑战赛28][B msc和mcc][预处理+枚举]
    [codeforces Mail.Ru Cup 2018 Round 1 D][ xor 操作]
    [codeforces round#475 div2 ][C Alternating Sum ]
    [zoj4045][思维+dfs]
    [zoj4046][树状数组求逆序(强化版)]
    费马大定理以及求解a^2+b^2=c^2的奇偶数列法则
    【HDOJ3567】【预处理bfs+映射+康拓展开hash】
    POJ1279 Art Gallery 多边形的核
    第八周 Leetcode 44. Wildcard Matching 水题 (HARD)
  • 原文地址:https://www.cnblogs.com/sagahu/p/2710020.html
Copyright © 2011-2022 走看看