zoukankan      html  css  js  c++  java
  • 【札记】设计的五个原则

    1、 单一职责原则

    核心思想:一个类,最好只做一件事,只有一个引起它变化的原因。

    参考Facade模式或者Proxy模式

    2、 开放封闭原则

    核心思想:软件实体应该是可扩展,而不可修改的。也就是说,对扩展是开发的,而对修改是封闭的。

    对扩展开放,意味着有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况。

    对修改封闭,意味着一旦设计完成,就可以独立完成其工作,而不要对类进行任何修改。

    参考Template Method模式或Strategy模式。

    3、 依赖倒置原则

    核心思想:依赖于抽象

    具体而言,依赖倒置体现在:

    高层模块不应该依赖于底层模块,二者都应该依赖于抽象

    抽象不应该依赖于具体,具体应该依赖于抽象

    当两个模块之间存在紧耦合的关系时,最好的办法就是分离接口和实现:在依赖之间定义一个抽象的接口,使得高层模块调用接口的方法,而低层模块实现接口的定义,以此来有效控制耦合的关系,达到依赖于抽象的设计目标

    4、 接口隔离原则

    核心思想:使用多个小的专门的接口,而不要使用一个大的总接口

    具体而言,接口隔离体现在:

    接口应该是内聚的,应该避免出现“胖”接口

    一个类对另一个类的依赖应该建立在最小的接口上,不要强迫依赖不用的方法,这是一种接口的污染

    5、 Liskov替换原则

    核心思想:子类必须能够替换其基类

    这一思想体现为对继承机制的约束规范,只有子类能够替换其基类,才能保证系统在运行期内识别子类,这是保证继承复用的基础。在父类和子类的具体实现中,必须严格把握继承层次中的关系和特征,将基类替换为子类,程序的行为不会发生任何变化。

  • 相关阅读:
    springboot配置redis缓存
    【spark】local模式运行
    mybatis从入门到精通(二) 增删查改
    学习设计模式
    学习设计模式
    mybatis从入门到精通(一) 入门
    学习NIO 之 使用方法
    学习 NIO 之 零拷贝
    Java并发
    学习设计模式
  • 原文地址:https://www.cnblogs.com/xingluzhe/p/4724273.html
Copyright © 2011-2022 走看看