六大设计原则

六大设计原则

1. 单一职责原则SRP(Single Responsibility Principle)

这里写图片描述

定义:应该有且仅有一个原因引起类的变更
RBAC: Role-Based Access Control基于角色的访问控制
建议:对于单一职责,接口一定要做到单一职责,类的设计尽量做到只有一个原因引起变化
优点:
①类的复杂性降低
②可读性提高
③可维护性提高
④变更引起的风险降低
2. 里氏替换原则LSP(Liskov Substitution Principle)
定义:只要父类能出现的地方子类就可以出现,而且替换为子类也不会产生任何错误和异常
①子类必须完全实现父类的方法

这里写图片描述
注意:在类中调用其他类时务必传入父类或者接口,如不能使用父类或接口,则说明类的设计已经违背了LSP原则

②子类可以有自己的个性
③覆盖或者实现父类的方法时输入参数可以被放大
④覆写或实现父类的方法时输出结果可能被缩小
3. 依赖倒置原则LSP(Liskov Substitution Principle)

①模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过
接口或抽象类产生的
②接口或抽象类不依赖于实现类
③实现类依赖接口或抽象类。

优点:采用依赖倒置原则可以减少类间的耦合性,提高系统的稳定性,降低并行开发引起的风险,提高代码的可读性和可维护性。

这里写图片描述

4. 迪米特原则LoD(Law of Demeter)最少知识原则(Least Knowledge Principle LKP)
定义:一个类应该对自己需要耦合或调用的类知道的最少
核心观念:类间解耦,弱耦合,
①只和朋友交流(调用另外一个类的时候尽量别通过第三个类来调用)
②朋友间也是有距离的(能自己处理的业务逻辑放在自己的方法中,尽量别暴露出去)
③是自己的就是自己的(一个方法如果放在本类中既不增加类间关系,也不对本类产生负面影响,那就放在本类中)
④谨慎使用Serializable
5. 接口隔离原则
定义:建立单一接口,同时接口尽量细化
①接口尽量要小
②接口要高内聚
③定制服务
④接口设计是有限度的
6. 开闭原则
定义:对扩展开放,对修改关闭
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值