![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 71
bingbingYang_88
这个作者很懒,什么都没留下…
展开
-
java观察者模式例子
是一种常用的设计模式,它定义了一种一对多的关系,让多个观察者对象同时监听某一个主题对象,当主题对象状态发生变化时,它的所有观察者都会收到通知并且自动更新。在观察者模式中,主题对象通常被称为“被观察者”(Observable)或 “主体” (Subject),而观察者对象通常被称为“观察者”(Observer)或 “订阅者”(Subscriber)。主题对象维护一个观察者列表,当它的状态发生变化时,会遍历这个列表并通知所有的观察者。原创 2023-06-07 15:44:22 · 777 阅读 · 0 评论 -
装饰者模式学习心得
装饰者模式定义装饰者模式(Decorator Pattern)是指在不改变原有对象的基础之上,将功能附加到对象上,提供了比继承更有弹性的替代方案(扩展原有对象的功能),属于结构型模式。装饰者模式在我们生活中应用也比较多比如煎饼加鸡蛋加香肠。装饰者在代码程序中适用于以下场景:1,用于扩展一个类的功能或给一个类添加附加职责。2,动态的给一个对象添加功能,这些功能可以再动态的撤销。下面我们以一个煎饼的例子创建一个建煎饼的抽象 Battercake 类package com.evan.spring.d原创 2021-07-12 18:01:00 · 306 阅读 · 2 评论 -
策略模式学习心得
这里写自定义目录标题策略模式定义策略模式的应用场景下面用策略模式实现选择支付的业务场景Response类类图创建Payment抽象类,定义支付规范和支付逻辑,代码如下:分别创建具体的支付方式,支付宝AliPay类:京东支付微信支付创建支付策略策略类:创建订单Order类:测试代码:策略模式定义策略模式(Strategy Pattern)是指定义了算法家族、分别封装起来,让它们之间可以相互替换,此模式让算法的变化不会影响到使用算法的用户。策略模式的应用场景1,假如系统中很多类,而它们的区别仅仅在于它们原创 2021-07-12 15:47:18 · 287 阅读 · 0 评论 -
委派模式心得
委派模式的定义及应用场景委派模式不属于GOF23种设计模式中,委派模式(Delegate Pattern)的基本作用就是负责任务的调用和分配任务,跟代理模式很像,可以看做是一种特殊情况下的静态代理的全权代理,但是代理模式注重过程,委派模式注重结果。委派模式在spring中应用非常多,大家常用的DispatchServlet其实就是用到了委派模式,现实生活中也常有委派的场景发生,eg:老板(Boss)给项目经理(Leader)下达任务,项目经理会根据实际情况给每个员工派发工作任务,待员工把工作任务完成之后,原创 2021-07-12 11:13:55 · 61 阅读 · 0 评论 -
设计模式之-原型模式理解
原型模式理解官方定义:用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型相同或者相似的新对象。在这里,原型实例指定了要创建的对象的种类。用这种方式创建对象非常高效,根本无须知道对象创建的细节。自己的理解:复制粘贴功能我们都用过,我们可以把一个文件从一个地方复制到另外一个地方,复制完成之后这个文件和之前的文件也没有差别,这就是原型模式的思想;上面这张图我们都很熟悉,ctrl+c,ctrl+v,我们需要一个文件,这个文件一定要有可以被克隆的功能,那么我们创建这个文件之后,就可以通过它克隆原创 2020-07-13 14:55:36 · 293 阅读 · 0 评论 -
弄清楚观察者模式后,订单回调再也不会写那么low了
观察者模式当一个对象发生改变时候,自动通知其他对象作出相关动作。当一个事件发生时候,自动触发依赖这个事件的其他事件。这就是观察者模式要做的事情。举例:当一个开通会员的订单支付完成之后(第三方支付回调过来了),需要更改订单的支付状态、给用户开通会员、如果有分销的逻辑还要触发分润逻辑、给用户开通其他会员附属权益。伪代码如下:public void orderBack(){ //更改订单状态 updateOrderState(); //发放资源权限原创 2020-05-14 17:46:01 · 679 阅读 · 0 评论 -
外观模式-发送各类邮件
什么是外观模式外观模式(Facade Pattern)门面模式,隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向 现有的系统添加一个接口,来隐藏系统的复杂性。这种模式设计到一个单一的类,改类提供了客户端请求的简化方法和对现有系统类方法的委托调用。外观模式的例子用户注册完之后,需要调用阿里短信接口,邮件接口,微信推送接口。packag...原创 2020-05-03 09:51:55 · 521 阅读 · 0 评论 -
适配器模式--香港代购苹果(电子商品)
最近重构项目,发现设计模式的好好搞一搞了,不然举步维艰呀。这次就简单谈谈适配器模式。待在深圳的小伙伴都偶偶会跑香港购物,尤其是男同胞们,喜欢买电子产品,像苹果手机,Ipad呀。买回来发现是不是GG啦 ,因为充电器适配不了。出现这种情况呢,是不是上淘宝买个适配器转换一下就可以啦。在代码中,我们也可以使用这个方式。什么是适配器在设计模式中,适配器模式(英语:adapter pattern)有时候...原创 2020-04-30 18:02:24 · 272 阅读 · 0 评论 -
SpringAop底层原理 Java动态代理思想
java动态代理实现与原理详细分析关于Java中的动态代理,我们首先需要了解的是一种常用的设计模式–代理模式,而对于代理,根据创建代理类的时间点,又可以分为静态代理和动态代理。代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托...原创 2020-04-29 14:30:56 · 287 阅读 · 0 评论 -
模板方法--之办理银行卡
1什么是模板方法定义一个操作中的算法骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的重复代码全部在父类里面,不同业务的,抽取给子类进行实现。抽取过程—抽象方法。2.结构说明AbstractClass:抽象类。用来定义算法骨架和原语操作,在这个类里面,还可以提供算法中通用的实现ConcreteClass:具体实现类。用来实现算法骨架中的...原创 2020-04-27 20:46:53 · 594 阅读 · 0 评论 -
建造者模式(Builder Pattern)--一线城市拥有自己的梦寐以求Hourse
背景当一个类的内部数据过于复杂的时候(通常是负责持有数据的类,比如Config、VO、PO、Entity…),要创建的话可能就需要了解这个类的内部结构,要构建的话可能就需要了解这个类的内部结构。1.介绍1.1什么是建造者模式创建者模式又叫建造者模式,是将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。创建者模式隐藏了复杂对象的创建过程,它把复杂对象的创建过程加以抽...原创 2020-04-27 20:24:28 · 229 阅读 · 0 评论 -
简单工厂,工厂方法,抽象工厂思想-手机时代的变迁
背景:话说改革开放的时候,互联网未普及的时候,中国境内的手机都是去华强北进货,然后分散到中国各地商场,随着科技的发张,后来发展成各个专卖店,最后发展成各个流水线生产手机。这一系列的变化特别像我们工厂模式的进阶,下面带你一起来探讨工厂模式之简单工厂,工厂方法,抽象工厂设计简单工厂 : 用来生产同一等级结构中的任意产品。(对于增加新的产品,无能为力)工厂方法 :用来生产同一等级结构中的固定产度...原创 2020-04-25 14:55:57 · 302 阅读 · 0 评论 -
单例模式仅仅只有懒汉和饿汉两种吗?这你就错了 看完这篇文章让你走在大多数人前头
设计模式分类创建型:共5种工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式结构型:共7种适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组合模式,享元模式行为型:共11种策略模式,模板方法模式,观察者模式,迭代子模式,责任链模式,命令模式,备忘录模式,状态模式,访问者模式,中介者模式,解释器模式单例模式保证一个类只有一个实例,并且提供一个访问该全局访问点...原创 2020-04-20 17:33:33 · 162 阅读 · 0 评论 -
手写单例和工厂模式代码
设计模式分类:创建型模式:5种,工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式结构型模式:7种,适配器模式,装饰者模式,代理模式,外观模式,桥接模式,组合模式,享元模式行为型模式:11种,策略模式,模板方法模式,观察者模式,迭代子模式,责任链模式,命令模式,备忘录模式,状态模式,访问者模式,中介者模式,解释器模式设计模式的六大原则:...原创 2019-09-20 10:28:30 · 537 阅读 · 0 评论