signed

QiShunwang

“诚信为本、客户至上”

java设计原则 @上源码

2021/5/14 23:18:58   来源:

设计原则规范了开发人员如何去设计代码与实现代码,从而提高代码的规范性、可读性、扩展性、可维护性;java 7大设计原则如下

 

1.单一职责原则

一个类就只负责一个功能领域中的一个职责,单一原则是高内聚低耦合的指导方针,只有按照职责划分后才会降低代码的复杂性,提高可读性、可维护性,降低变更带来的风险

-----------------------------------------------------------------------------------------------------------------

2.里氏替换原则

使用父类的地方可以用子类替换

-----------------------------------------------------------------------------------------------------------------

3.依赖倒置原则

使用子类的地方可以用父类完成引用

-----------------------------------------------------------------------------------------------------------------

4.接口隔离原则

    接口尽量细化,接口中的方法尽量少,与单一的原则相似,但是划分理念不用。单一原则要求接口职责的单一性,注重的是职责,是业务逻辑上的划分;而接口隔离原则要求的是接口中方法尽量少。(一个接口的指责可能包含多个方法,需要提供给多个模块访问,各个模块对接口方法访问的权限需求不同,如果不做接口隔离就无法准确做到权限控制,同时造成接口臃肿的情况;上述情况我们应该进行接口隔离细化,在对外提供访问是可以通过组合聚合的方式完成调控)

-----------------------------------------------------------------------------------------------------------------

5.迪米特法则

    又名:“最少知识原则”,接口对外暴露的越少,访问者需要了解的就越少,调用起来需要组织整理的信息就越少,出错的几率就越少(来个生活场景:批发商与零售商的例子,很久之前零售商向开发商进货,只需提供给开发商商品和数量,批发商自己根据商品和数量选择供应厂商,开发商活多了一点点但是大家合作越快;后来有一天批发商想偷懒要求零售商提供供应商信息,大部分正规的零售商还好知道一些供应厂商信息与供应厂商的供应能力,他们下的当可以正常成交。但是一些小的零售商对供应厂商的信息了解甚微,提工的供应厂商不是倒闭了就是没有相应的供应能力导致大家和单据需要反复确认,想偷懒的批发商没有偷盗懒反而边的更忙了天天处理懒单   兄弟 对号入座 有相似经历的点个赞哈  一个无参接口的美妙不是你想知道就能知道)

-----------------------------------------------------------------------------------------------------------------

6.开闭原则     

    对扩展开发,对修改关闭 ;在已经线上运行的系统开发,避免修改目前正常运行的代码(BUG除外),若果有些需要扩展升级,通过添加新类或者新的代码实现,已有代码需要做到少改动甚至零改动(liangd)。

-----------------------------------------------------------------------------------------------------------------

7.组合复用原则

   尽量使用组合、聚合的方式实现代码复用

 

@浅见 @如有疏漏请帮忙补充完善 @开发一家人  0000008   待完善 大家一起努力总结 加油