文章标题

“高内聚、低耦合”是所有优秀软件的共同特征。

  • 单一职责原则
    类的职责要单一,不能将太多的职责放在一个类中。
    Single Responsibility Principle,SRP
    定义:所有的对象都应该有单一的职责,它提供的所有的服务也都仅围绕着这个职责。换句话说就是:一个类而言,应该仅有一个引起它变化的原因,永远不要让一个类存在多个改变的理由。

  • 开闭原则
    软件实体对扩展是开放的,但对修改是关闭的,即在不修改一个软件实体的基础上去扩展其功能。
    开闭原则(Open-Close Principle,简称OCP)是指一个软件实体(类、模块、方法等)应该对扩展开放,对修改关闭。
    遵循开闭原则设计出来的模块具有两个基本特征:

    • 对于扩展是开放的(Open for extension):模块的行为可以扩展,当应用的需求改变时,可以对模块进行扩展,以满足新的需求。
    • 对于更改是封闭的(Closed for modification):对模块行为扩展时,不必改动模块的源代码或二进制代码
  • 里氏替换原则
    在软件系统中,一个可以接受基类对象的地方必然可以接受一个子类对象。

    • 里氏替换原则(The Liskov Substitution Principle,LSP)的定义:在一个软件系统中,子类应该能够完全替换任何父类能够出现的地方,并且经过替换后,不会让调用父类的客户程序从行为上有任何改变。
  • 依赖倒转原则

    • 要针对抽象层编程,而不要针对具体类编程。
    • 依赖倒转原则(Dependency Inversion Principle,简称DIP)是指将两个模块之间的依赖关系倒置为依赖抽象类或接口。具体有两层含义:
    • 高层模块不应该依赖于低层模块,二者都应该依赖于抽象;
      抽象不应该依赖于细节,细节应该依赖于抽象。
  • 接口隔离原则

使用多个专门的接口来取代一个统一的接口。

  • 组合/聚合复用原则

在系统中应该尽量多使用组合和聚合关联关系,尽量少使用甚至不使用继承关系。

  • 迪米特法则

一个软件实体对其他实体的引用越少越好,或者说如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用,而是通过引入一个第三者发生间接交互。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值