• 架构中的7个设计原则


    7条原则:单一职责原则、开闭原则、里式替换原则、依赖注入原则、接口分离原则、迪米特原则、优先使用组合而不是继承原则。

    单一职责原则SRP

    系统中的每一个对象都应该只有一个单独的职责,而所有对象所关注的就是自身职责的完成。

    高内聚,低耦合。每个类应该只有一个职责,对外只能提供一种功能。

    里式替换原则LSP

    在任何父类出现的地方都可以用它的子类来替代。

    同一个继承体系中的对象应该有共同的行为特征。关注于怎样良好地使用继承。

    依赖注入原则DIP

    要依赖于抽象,不要依赖于具体的实现。

    在应用程序中,所有的类如果使用或依赖于其他的类,则都应该依赖于这些其他类的抽象类,而不是这些其他类的具体实现类,这样才能保证系统的可复用性和可维护性,这就要求开发人员在编程时针对接口编程而不针对实现编程。

    依赖注入原则有如下三点说明:

    高层模块不应该依赖低层模块,两者都应该依赖于抽象(抽象类或接口)

    抽象(抽象类或接口)不应该依赖于细节(具体实现类)

    细节(具体实现类)应该依赖抽象

    依赖注入原则的本质就是通过抽象使各个类或模块的实现彼此独立,不相互影响,实现模块间的松耦合。

    依赖注入的三种实现方式

    1、通过构造函数传递依赖对象(在构造函数中的需要传递的参数是抽象类或接口的方式实现)

    2、通过setter方法传递依赖对象(设置的setXXX方法中的参数为抽象类或接口,来实现传递依赖对象)

    3、接口声明实现依赖对象

    接口分离原则ISP

    不应该强迫客户程序依赖它们不需要使用的方法。

    一个接口不需要提供太多的行为,一个接口应该只提供一种对外的功能,不应该把所有的操作都封装到一个接口中

    迪米特原则LOD

    一个对象应当对其它对象尽可能少地了解,降低各个对象之间的耦合,提供系统的可维护性。在模块之间,应该只通过接口来通信,而不理会模块的内部工作原理,它可以使各个模块耦合程度降低,促进软件的复用。

    开闭原则OCP

    一个对象对扩展开发,对修改关闭。

    对类的改动是通过增加代码进行的,而不是改动现有的代码。

  • 相关阅读:
    css引入方式
    HTML标签
    动态导入模块impoerlib
    pymysql连接数据库
    创建数据库表之引擎
    IO多路复用互动聊天,select函数监听
    欧拉筛法求素数个数
    与三角形相关的问题 WITH 有向面积
    时间复杂度的计算
    折半查找
  • 原文地址:https://www.cnblogs.com/xsl1995/p/10184994.html
Copyright © 2020-2023  润新知