设计模式
文章平均质量分 70
^_^白心火龙果
这个作者很懒,什么都没留下…
展开
-
设计模式:责任链模式
文章目录一、需求二、责任链模式1.基本介绍2.代码 一、需求 学校OA系统的采购审批项目:需求是 采购员采购教学器材 如果金额小于等于5000,由教学主任审批 如果金额小于等于10000,由院长审批 如果金额小于等于30000,由副校长审批 如果金额超过30000以上,有校长审批 请设计程序完成采购审批项目。 一般采用传统的方案: 传统方案解决OA系统审批问题分析 1)传统方式是:接收到一个采购请求后,根据采购金额来调用对应的Approver (审批人)完成审批。 2)传统方式的问题分析:客户端这里原创 2022-02-10 23:34:09 · 282 阅读 · 0 评论 -
设计模式:观察者模式
文章目录一、案例二、代码1.工作原理2.代码3.观察者模式在Jdk应用的源码分析 一、案例 天气预报项目需求,具体要求如下: 气象站可以将每天测量到的温度,湿度,气压等等以公告的形式发布出去(比如发布到自己的网站或第三方)。 需要设计开放型API,便于其他第三方也能接入气象站获取数据。 提供温度、气压和湿度的接口 测量数据更新时,要能实时的通知给第三方 存在的问题: 其他第三方接入气象站获取数据的问题 无法在运行时动态的添加第三方 违反了ocp原则 二、代码 1.工作原理 ➢观察者模式类似订牛原创 2022-02-10 22:37:16 · 171 阅读 · 0 评论 -
设计模式:装饰者模式
文章目录一、案例1.方案12.方案2二、装饰者模式1.定义2.方案(1)简图(2)代码(3)说明 一、案例 星巴克咖啡订单项目(咖啡馆) : 咖啡种类/单品咖啡: Espresso(意大利浓咖啡)、ShortBlack、 LongBlack(美式咖啡)、Decaf(无因咖啡) 调料: Milk、 Soy(豆浆)、Chocolate 要求在扩展新的咖啡种类时,具有良好的扩展性、改动方便、维护方便 使用00的来计算不同种类咖啡的费用:客户可以点单品咖啡,也可以单品咖啡+调料组合。 1.方案1 解决星巴克咖原创 2022-02-10 20:56:02 · 375 阅读 · 0 评论 -
设计模式:代理模式
文章目录前言一、静态代理1.图解2.代码步骤(1)接口(2)真实角色(3)代理角色(4)客户端访问代理角色3.角色分析4.好处与坏处二、动态代理1.JDK动态代理2.通用代码3.好处总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可供参考 一、静态代理 1.图解 深度理解 2.代码步骤 (1)接口 public interface Re原创 2022-02-08 16:52:15 · 469 阅读 · 0 评论 -
设计模式:工厂模式
文章目录前言一、简单工厂模式二、工厂方法模式三、抽象工厂模式1.概述2.代码3.优缺点总结 前言 工厂模式最重要的思想:实现创建者和调用者的分离。 OOP七大原则: 开闭原则:一个软件的实体应当对扩展开放,对修改关闭 依赖倒置原则:要针对接口编程,不要针对实现编程 迪米特法则:只与你直接的朋友通信,而避免和陌生人通信 一、简单工厂模式 代码如下(示例): public interface Car { void name(); } public class WuLing implement原创 2022-01-19 15:27:29 · 401 阅读 · 0 评论 -
设计模式:单例模式
原创 2022-01-10 10:22:21 · 262 阅读 · 0 评论