随笔分类 -  Design Patterns

摘要:1.工厂模式在 JDK-Calendar 应用的源码分析 1) JDK 中的 Calendar 类中, 就使用了简单工厂模式 package demo.factory.JDKSRC; import java.util.Calendar; public class CalenderDemo { pub 阅读全文
posted @ 2020-12-27 19:07 小辣椒樱桃
摘要:紧着着简单工程模式,本篇介绍工厂方法模式。 1.需求 看一个新的需求 披萨项目新的需求: 客户在点披萨时, 可以点不同口味的披萨, 比如 北京的奶酪 pizza、 北京的胡椒 pizza 或 者是伦敦的奶酪 pizza、 伦敦的胡椒 pizza。 思路 1: 使用简单工厂模式, 创建不同的简单工厂类 阅读全文
posted @ 2020-12-27 18:27 小辣椒樱桃
摘要:装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。 我们通过下面的实例来演示装饰器模式的 阅读全文
posted @ 2020-07-22 08:50 小辣椒樱桃
摘要:适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。 这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入 阅读全文
posted @ 2020-07-22 08:32 小辣椒樱桃
摘要:当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知依赖它的对象。观察者模式属于行为型模式。 一、介绍 意图:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 主要解决:一个对象 阅读全文
posted @ 2020-07-22 08:01 小辣椒樱桃
摘要:在代理模式(Proxy Pattern)中,一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。 在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口。 一、介绍 意图:为其他对象提供一种代理以控制对这个对象的访问。 主要解决:在直接访问对象时带来的问题,比如说:要访问的对象在远 阅读全文
posted @ 2020-07-22 07:47 小辣椒樱桃
摘要:在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。 一、介绍 意图:定义一系列的算 阅读全文
posted @ 2020-05-06 19:37 小辣椒樱桃
摘要:命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。 一、介绍 意图:将一个请求封装成一个对象,从而使您可以用不同的请求对客户进行参数化。 阅读全文
posted @ 2020-05-06 19:29 小辣椒樱桃
摘要:抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂都能按照工厂模 阅读全文
posted @ 2020-05-05 22:02 小辣椒樱桃
摘要:工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 一、介绍 意图:定义一个创建对象的接口,让其子 阅读全文
posted @ 2020-05-05 21:40 小辣椒樱桃
摘要:http://c.biancheng.net/view/1338.html https://www.runoob.com/design-pattern/singleton-pattern.html 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式 阅读全文
posted @ 2020-05-05 21:26 小辣椒樱桃
摘要:设计模式有两种分类方法,即根据模式的目的来分和根据模式的作用的范围来分。 1. 根据目的来分 1.1.根据模式是用来完成什么工作来划分,这种方式可分为创建型模式、结构型模式和行为型模式 3 种。 创建型模式:用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。GoF 中提供了单例、原 阅读全文
posted @ 2020-05-05 16:57 小辣椒樱桃
摘要:一、软件设计模式的产生背景 “设计模式”这个术语最初并不是出现在软件设计中,而是被用于建筑领域的设计中。1977 年,美国著名建筑大师、加利福尼亚大学伯克利分校环境结构中心主任克里斯托夫·亚历山大(Christopher Alexander)在他的著作《建筑模式语言:城镇、建筑、构造(A Patte 阅读全文
posted @ 2020-05-05 16:54 小辣椒樱桃