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

    活字印刷:可维护(只改一个字),可复用(下次可再用),可扩展(另加刻字),灵活性好(横竖都行),说到底是为了做维护方便,让业务逻辑与界面逻辑分开,耦合度下降四大发明其它三种都是科技进步,唯有活字印刷是思想的成功,面向对象的设计。

    可利用的OO手段:封装,继承,多态。

           正如《设计模式》的作者GoF对访问者模式的描述:大多数情况下,你并需要使用访问者模式,但是当你一旦需要使用它时,那你就是真的需要它了。当然这只是针对真正的大牛而言。在现实情况下(至少是我所处的环境当中),很多人往往沉迷于设计模式,他们使用一种设计模式时,从来不去认真考虑所使用的模式是否适合这种场景,而往往只是想展示一下自己对面向对象设计的驾驭能力。编程时有这种心理,往往会发生滥用设计模式的情况。所以,在学习设计模式时,一定要理解模式的适用性。必须做到使用一种模式是因为了解它的优点,不使用一种模式是因为了解它的弊端;而不是使用一种模式是因为不了解它的弊端,不使用一种模式是因为不了解它的优点。

    23种设计模式:

    一、创建型模式

        单件模式(Single Pattern)
        抽象工厂模式(Abstract Factory)
        建造者模式(Builder Pattern)
        工厂方法(Factory Method)
        原型模式(Protype Pattern)


    二、结构型模式
        适配器模式(Adapter Pattern)
        桥接模式(Bridge Pattern)
        装饰模式(Decorator Pattern)
        组合模式(Composite Pattern)
        外观模式(Façade Pattern)
        享元模式(Flyweight Pattern)
        代理模式(Proxy Pattern) 

    三、行为型模式
        模版方法模式(Template Method)
        命令模式(Command Pattern)
        迭代器模式(Iterator Pattern)
        观察者模式(Oberver Pattern)
        中介者模式(Mediator Pattern)
        备忘录模式(Memento Pattern)
        解释器模式(Interpreter Pattern)
        状态模式(State Pattern)
        策略模式(Strategy Pattern)
        职责链模式(Chain of Responsibility)
        访问者模式(Visitor Pattern)

  • 相关阅读:
    IOS Block-Block块的使用与理解
    IOS 多线程03-GCD
    IOS 多线程01-线程基础知识
    JavaScript高级-定义函数(类)方法
    互联网技术笔试总通不过?leetcode刷对了么
    Redis 内存满了怎么办? Redis的内存淘汰策略
    SpringBoot项目优化和Jvm调优
    中台的末路
    Java 应用中的日志
    Spring Boot 支持https
  • 原文地址:https://www.cnblogs.com/findumars/p/3269027.html
Copyright © 2011-2022 走看看