zoukankan      html  css  js  c++  java
  • 设计模式概述

    参考连接:http://www.cnblogs.com/lhws/archive/2012/03/10/2389189.html

    设计模式原则:

    一.单一职责:一个类只负责一项职责

    二.里氏替换原则:

    定义1如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型。

    定义2所有引用基类的地方必须能透明地使用其子类的对象。

    通俗的来讲就是:子类可以扩展父类的功能,但不能改变父类原有的功能。

    三.依赖倒置原则:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。

    四.接口隔离原则:接口隔离原则的含义是:建立单一接口,不要建立庞大臃肿的接口,尽量细化接口,接口中的方法尽量少。也就是说,我们要为各个类建立专用的接口,而不要试图去建立一个很庞大的接口供所有依赖它的类去调用。

    五.迪米特法则:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。于被依赖的类来说,无论逻辑多么复杂,都尽量地的将逻辑封装在类的内部,对外除了提供的public方法,不对外泄漏任何信息,一个类对自己依赖的类知道的越少越好。也就是说,对于被依赖的类来说,无论逻辑多么复杂,都尽量地的将逻辑封装在类的内部,对外除了提供的public方法,不对外泄漏任何信息。

    六.开闭环原则:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。

    告诉我们用抽象构建框架,用实现扩展细节的注意事项而已:单一职责原则告诉我们实现类要职责单一;里氏替换原则告诉我们不要破坏继承体系;依赖倒置原则告诉我们要面向接口编程;接口隔离原则告诉我们在设计接口的时候要精简单一;迪米特法则告诉我们要降低耦合。而开闭原则是总纲,他告诉我们要对扩展开放,对修改关闭。

     

    分类:(按照目的分类)

    范围目的

    创建型模式

    结构型模式

    行为型模式

    类模式

    工厂方法模式

    (类)适配器模式

    解释器模式

    模板方法模式

    对象模式

    抽象工厂模式

    建造者模式

    原型模式

    单例模式

    (对象)适配器模式

    桥接模式

    组合模式

    装饰模式

    外观模式

    享元模式

    代理模式

    职责链模式

    命令模式

    迭代器模式

    中介者模式

    备忘录模式

    观察者模式

    状态模式

    策略模式

    访问者模式

  • 相关阅读:
    js精度溢出解决方案
    Maven的Archetype简介
    maven仓库--私服(Nexus的配置使用)
    maven snapshot和release版本的区别
    jar包版本介绍(beta,alpha,release),软件的版本介绍
    最全的maven的pom.xml文件详解
    私服仓库 nexus 环境搭建(win10)
    EL表达式不解析
    Hibernate框架 主配置文件(Hibernate.cfg.xml)基本
    出现 The processing instruction target matching "[xX][mM][lL]" is not allowed错误
  • 原文地址:https://www.cnblogs.com/wjw334/p/3571989.html
Copyright © 2011-2022 走看看