六大设计原则

作者:翁松秀


六大设计原则

单一职责原则

单一职责原则也就是SRP(Single Responsibility Principle):There should never be more than one reason for a class to change.大致意思就是改变类的因素应该有且仅有一个,也就是说类的职责应该要划分清楚,每一个类有明确并且单一的职责。

里氏替换原则

里氏替换原则也就是LSP(Liskov Substitution Principle):Functions that use pointers or references to base classes must bu able to use objects of derived classes without knowing it.中文翻译过来就是所有引用基类的地方必须能够透明的使用其子类的对象,也就是说父类能出现的地方,就可以替换成子类,并且不会产生错误或者异常。
向上转型:定义是子类,但声明或者使用是父类。
向下转型:定义是父类,但声明或者使用是子类。
注:向下转型不安全。

依赖倒置原则

依赖倒置原则也就是DIP(Dependence Inversion Principle):High level modules should not depend upon low level modules. Both should depend upon abstractions. Abstractions should not depend upon details. Details should depend upon abstractions.
主要包括三层含义:

  1. 高层模块不应该依赖于低层模块,两者都应该依赖于抽象。
  2. 抽象不应该依赖于细节。
  3. 细节应该依赖于抽象。

所谓的细节就是实现类。高层模块、低层模块和实现类应该都依赖于抽象,通过抽象把高层模块和低层模块之间的依赖转移到抽象中,实现并行开发和独立测试。
依赖倒置原则的核心就是面向接口编程

接口隔离原则

接口隔离原则也就是ISP(Interface Segregation Principle):The dependency of one class to another one should depend on the smallest possible interface.类之间的依赖应该建立在最小的接口上,也就是依赖所需要的接口,不需要的剔除掉。
单一职责原则注重的是职责,是业务逻辑上的划分,而接口隔离原则要求接口的方法尽可能纯。

迪米特法则

迪米特法则也就是LoD(Law of Demeter):Only talk to your immediate friends. 只和你的直接类交流,所谓的直接类就是出现在一个类中的成员变量或者方法参数中的类。迪米特法则要求一个类应该对其他类有最少的了解,做到类间解耦,做到高内聚低耦合

开闭原则

开闭原则也就是OCP(Open Closed Principle):Software entities like classes,modules and functions should bu open for extension but closed for modifications. 软件实体如模块、类和方法应该对扩展开放,对修改关闭。尽可能的通过扩展来实现业务逻辑的变化,而不是通过修改。提高代码的扩展性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

翁松秀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值