设计模式介绍

概念:

设计模式是一套被反复使用的、多数人知晓、经过分类编目的优秀代码设计经验的总结。特定环境下特定问题的处理方法。

1)重用设计和代码 重用设计比重用代码更有意义,自动带来代码重用

2)提高扩展性 大量使用面向接口编程,预留扩展插槽,新的功能或特性很容易加入到系统中来

3)提高灵活性 通过组合提高灵活性,可允许代码修改平稳发生,对一处修改不会波及到其他模块

4) 提高开发效率 正确使用设计模式,可以节省大量的时间

1.单一原则(Single Responsibility Principle):一个类或者一个方法只负责一项职责,尽量做到类的只有一个行为原因引起变化;

a、业务对象(BO business object)、业务逻辑(BL business logic)拆分;

2.里氏替换原则(LSP liskov substitution principle):子类可以扩展父类的功能,但不能改变原有父类的功能;(本质其实就是c++的多态)

(目的:增强程序的健壮性)实际项目中,每个子类对应不同的业务含义,使父类作为参数,传递不同的子类完成不同的业务逻辑。

3.依赖倒置原则(dependence inversion principle):面向接口编程;(通过接口作为参数实现应用场景)

抽象就是接口或者抽象类,细节就是实现类

含义:

上层模块不应该依赖下层模块,两者应依赖其抽象;

抽象不应该依赖细节,细节应该依赖抽象;

通俗点就是说变量或者传参数,尽量使用抽象类,或者接口;

【接口负责定义public属性和方法,并且申明与其他对象依赖关系,抽象类负责公共构造部分的实现,实现类准确的实现业务逻辑】

4.接口隔离(interface segregation principle):建立单一接口;(扩展为类也是一种接口,一切皆接口)

定义:

a.客户端不应该依赖它不需要的接口;

b.类之间依赖关系应该建立在最小的接口上;

简单理解:复杂的接口,根据业务拆分成多个简单接口;(对于有些业务的拆分多看看适配器的应用)

【接口的设计粒度越小,系统越灵活,但是灵活的同时结构复杂性提高,开发难度也会变大,维护性降低】

5.迪米特原则(law of demeter LOD):最少知道原则,尽量降低类与类之间的耦合;

一个对象应该对其他对象有最少的了解

6.开闭原则(open closed principle):用抽象构建架构,用实现扩展原则;(总纲)

(solid稳定的 记忆首字母)

相关推荐
csdn2015_几秒前
java 把对象转化为json字符串
java·前端·json
想带你从多云到转晴1 分钟前
03、数据结构与算法--单向链表
java·数据结构·算法
无籽西瓜a4 分钟前
【西瓜带你学设计模式 | 第七期 - 适配器模式】适配器模式 —— 类适配器与对象适配器实现、优缺点与适用场景
java·后端·设计模式·软件工程·适配器模式
Oliver_LaVine9 分钟前
idea启动后端项目-控制台中文乱码处理
java·ide
Flittly10 分钟前
【SpringAIAlibaba新手村系列】(6)PromptTemplate 提示词模板与变量替换
java·spring boot·agent
yaaakaaang18 分钟前
3.springboot,用eclipse轻松创建~
java·spring boot·eclipse
计算机学姐20 分钟前
基于SpringBoot的新能源充电桩管理系统
java·vue.js·spring boot·后端·mysql·spring·java-ee
木井巳22 分钟前
【笔试强训】Day1
java·算法
风萧萧199922 分钟前
Milvus Java 快速入门
java·开发语言·milvus
leiming623 分钟前
巧用 FreeRTOS 任务通知作“邮箱”:NeoPixel 灯环控制实战
java·前端·算法