系列文章目录
单一职责原则
接口隔离原则
依赖倒转原则
文章目录
- 系列文章目录
- 前言
- 一、单一职责原则
- 1.单一职责原则注意事项和细节
- 二、接口隔离原则
- 1.接口隔离原则基本介绍(Interface Segregation Principle)
- 2.应传统方法的问题和使用接口隔离原则改进
- 三、依赖倒转原则
- 1.依赖倒转原则基本介绍(Dependence Inversion Principle)
- 2.依赖倒转原则的注意事项和细节
- 3.依赖关系传递的三种方式
- 总结
前言
柚子之前想做Java设计模式这个系列蛮久了,现在正式开启~
提示:以下是本篇文章正文内容,下面案例可供参考
一、单一职责原则
1.单一职责原则注意事项和细节
(1)降低类的复杂度,一个类只负责一项职责。
(2)提高类的可读性,可维护性
(3)降低变更引起的风险
(4)通常情况下,我们应当遵守单一职责原则,只有逻辑足够简单,才可以在代码级违反单一职责原则;
只有类中方法数量足够少,可以在方法级别保持单一职责原则
二、接口隔离原则
1.接口隔离原则基本介绍(Interface Segregation Principle)
(1)客户端不应该依赖它不需要的接口,即一个类对另一个类的依赖应该建立在最小的接口上
(2)如下图所示:
(3)类A通过接口Interface1依赖类B,类C通过接口Interface1依赖类D,如果接口Interface1对于类A和类C来说不是最小接口,那么类B和类D必须去实现他们不需要的方法。
(4)按接口隔离原则应当这样处理:将接口Interface1拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。
2.应传统方法的问题和使用接口隔离原则改进
(1)类A通过接口Interface1依赖类B,类C通过接口Interface1依赖类D,如果接口Interface1对于类A和类C来说不是最小接口,那么类B和类D必须去实现他们不需要的方法。
(2)将接口Interface1拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。
(3)接口Interface1中出现的方法,根据实际情况拆分为三个接口
三、依赖倒转原则
1.依赖倒转原则基本介绍(Dependence Inversion Principle)
(1)高层模块不应该依赖底层模块,二者都应该依赖其抽象
(2)抽象不应该依赖细节,细节应该依赖抽象
(3)依赖倒转(倒置)的中心思想是面向接口编程
(4)依赖倒转原则是基于这样的设计理念:相当于细节的多变性,抽象的东西要稳定的多。以抽象为基础搭建的架构比以细节为基础的架构要稳定的多。在Java中,抽象指的是接口或抽象类,细节就是具体的实现类。
(5)使用接口或抽象类的目的是制定好规范,而不涉及任何具体的操作,把展现细节的任务交给他们的实现类去完成。
2.依赖倒转原则的注意事项和细节
(1)低层模块尽量都要有抽象类或接口,或者两者都有,程序稳定性更好。
(2)变量的声明类型尽量是抽象类或接口,这样我们的变量引用和实际对象间,就存在一个缓冲层,利于程序扩展和优化。
(3)继承时遵循里氏替换原则
3.依赖关系传递的三种方式
(1)接口传递
(2)构造方法传递
(3)setter方式传递
总结
单一职责,保持最小化,减小耦合;接口隔离,保证接口各司其职,减小耦合;依赖倒转,面向接口编程。
╭◜◝ ͡ ◜◝╮
( ˃̶͈◡˂ ̶͈ )感觉有用的话,欢迎点赞评论呀!
╰◟◞ ͜ ◟◞╯