Design Patterns
文章平均质量分 79
Dason_yu
从此以后,我遇见了青山,遇见了白雾。
展开
-
设计模式之设计原则及分类
单一原则(Single Responsibility Principle)一个类只负责一项职责,尽量做到类的只有一个行为原因引起变化。比如Mybatis 中的 UserDao;OrderDao 等:只负责对某一个表的增删改查;比如Spring中的配置类、请求类、缓存类 等 :只负责某一个具体(配置、请求、缓存)的功能;接口隔离(interface segregation principl...原创 2019-08-21 22:30:41 · 215 阅读 · 0 评论 -
设计模式-行为型之访问者(Visitor)模式
设计模式 访问者模式原创 2019-09-23 18:40:11 · 226 阅读 · 0 评论 -
设计模式-行为型之迭代器(Iterator)模式
设计模式 遍历模式原创 2019-09-22 17:16:52 · 203 阅读 · 0 评论 -
设计模式-行为型之观察者(observer)模式
设计模式 观察者模式原创 2019-09-21 18:15:37 · 229 阅读 · 0 评论 -
设计模式-行为型之责任链(responsibility)模式
设计模式 责任链模式原创 2019-09-21 17:19:46 · 250 阅读 · 0 评论 -
设计模式-行为型之策略(strategy)模式
设计模式 策略模式原创 2019-09-19 00:19:39 · 194 阅读 · 0 评论 -
设计模式-结构型之享元(flyweight)模式
设计模式 享元模式原创 2019-09-18 21:18:48 · 177 阅读 · 0 评论 -
设计模式-结构型之桥接(bridge)模式
设计模式 桥接模式原创 2019-09-16 23:32:23 · 194 阅读 · 0 评论 -
设计模式-结构型之外观(facade)模式
设计模式 外观模式原创 2019-09-15 23:29:36 · 149 阅读 · 0 评论 -
设计模式-结构型之代理(proxy)模式
定义使用场景UML图代码实现总结原创 2019-09-15 21:29:21 · 174 阅读 · 0 评论 -
设计模式-结构型之适配器(adapter)模式
定义填补现有程序和所需程序的差异,填补不同接口(API)之间的缝隙。两种实现方式:– 类适配器:使用继承实现。– 对象适配器:使用聚合实现。使用场景版本升级和兼容性;不改变现有代码的情况下适配新的接口(功能要相同)。– 举例:比如我们生活中的电子产品的充电器,将220V的家用电适配成符合电子产品所需的电压。UML图代码实现使用聚合实现(继承就不写了)//目标:...原创 2019-09-09 22:09:23 · 159 阅读 · 0 评论 -
设计模式-结构型之装饰器(decorator)模式
定义原创 2019-09-09 00:45:09 · 163 阅读 · 0 评论 -
设计模式-结构型之组合(composite)模式
定义使容器和内容具有一致性。使用场景在容器中可以放入小容器,也可以放入内容。– 这句话比较抽象,我们举一个例子,比如我们电脑中的文件目录系统,一个文件夹中既可以放入文件夹(容器)也可以放入文件(内容)。这就形成了一种递归结构。– 比如中国的省、市、县的地域划分,国家下有省份,也有直辖市,一个省内有市,也有直辖县,市内有县城。UML图角色树叶(leaf):表示内容的角色,由...原创 2019-09-08 16:12:43 · 168 阅读 · 0 评论 -
设计模式-创建型之原型模式
简介通过一个实例复制一个一模一样的实例。使用场景当我们需要生成一个实例的过程很复杂时,很难根据类来生成实例。我们可以通过复制来生成一个实例。有时候我们想让生成实例的框架不依赖与具体的类,可以用原型模式。对象种类繁多,无法将他们整合到一个类的时候。实现方式1-- 实现Cloneable 接口java为我们提供一个接口Cloneable,只需要我们实现该接口,并重写Object...原创 2019-09-07 19:52:07 · 125 阅读 · 0 评论 -
设计模式-创建型之建造者模式
建造者模式作用– 用于组装具有复杂结构的实例;– 将制造细节与创建分离开来(复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示);UML图对比工厂(模板)方法:– Builder只是将算法、建造流程的定义放在了一个叫指挥者中,责任需要改变,只需新增Director。– 模板方法,责任全放在了父类里,如果责任需要改变,则必须要修改父类中的责任方法了,这样就修改了原来...原创 2019-08-31 22:49:18 · 155 阅读 · 0 评论 -
设计模式-创建型之工厂模式
前言工厂模式– 我们通常是通过 new 来进行创建对象,这样导致程序的耦合性很高,而工厂模式就是用于代替直接 new 的一种模式。三种工厂模式– 简单工厂模式:用工厂类代替 new ,降低类之间的耦合度;– 工厂方法模式:将具体的处理交给子类;用于生产某一类产品;– 抽象工厂模式:用于生产一系列产品;简单工厂(静态工厂)现在有一需求(举例),需要生产一些java开发工具,如I...原创 2019-08-26 23:54:25 · 198 阅读 · 0 评论 -
设计模式-创建型之单例模式
前言什么是单例– 在应用的整个生命周期周期中只有一个实例对象。应用场景及好处– 对于一些频繁创建的对象、或者创建对象耗时过多,对象占用内存大,而且频繁使用的对象、工具类等,我们可以使用单例模式,这样能够节省资源以及提升系统性能。单例之恶汉模式静态常量方式package com.dason.singleton.evilman.typeone;public class Evi...原创 2019-08-23 00:27:31 · 207 阅读 · 1 评论 -
设计模式-行为型之状态(state)模式
设计模式 状态模式原创 2019-09-23 23:05:50 · 218 阅读 · 0 评论