设计模式
lvhy踩坑之路
这个作者很懒,什么都没留下…
展开
-
8_基于模版方法+策略模式设计联合登陆框架
策略模式#1.工厂模式: 通过map返回父类:2.策略模式: 通过strategy_id 是暴露给外界 隐藏beanid原创 2020-05-30 21:48:24 · 276 阅读 · 0 评论 -
4_装饰模式设计多级缓存
多线程会有线程安全问题:换map装饰不能改变原有代码。代码实战一装饰模式:代码实战二原创 2020-05-29 18:13:48 · 206 阅读 · 0 评论 -
5_基于观察者模式设计异步多渠道群发框架
1、观察者概念:一个对象发生改变,可以通知给其他所有对象2、观察者应用场景1、zk临时节点监听当zk临时节点发生改变,会通知给所有客户端2、分布式配置中心nacos config 刷新配置3、多渠道群发addOrder();//1、向数据库插入订单数据//2、发送短信代码//3、发送邮件代码sendMsg();sendEmail()sendWechat();短信 邮件3、流程图4、代码实战(一)1、观察者抽象类2、短信通知、邮件通知3、注册观察者 普通原创 2020-05-23 22:07:15 · 184 阅读 · 0 评论 -
设计模式 各自侧重点
1.策略模式解决多重if判断问题2.责任链模式:客户端发出一个请求,链上的对象都有机会来处理这一请求,而客户端不需要知道谁是具体的处理对象3.工厂模式是为了解耦:把对象的创建和使用的过程分开。4;模版方法相同行为 定义在 抽象类(先定义骨架)不同行为 让子类实现...原创 2019-07-24 09:27:55 · 96 阅读 · 0 评论 -
d8.2 设计模式之 状态模式
1.什么是状态模式状态模式允许一个对象在其内部状态改变的时候改变其行为。这个对象看上去就像是改变了它的类一样。2.状态模式与策略模式区别1、状态模式重点在各状态之间的切换从而做不同的事情,而策略模式更侧重于根据具体情况选择策略,并不涉及切换。2、状态模式不同状态下做的事情不同,而策略模式做的都是同一件事,例如聚合支付平台,有支付宝、微信支付、银联支付,虽然策略不同,但最终做的事情都是支付,...原创 2019-06-03 19:34:26 · 130 阅读 · 0 评论 -
d6JDK动态代理模式
1. 手写JDK动态代理模式 原理思路1.使用java语言组装$Proxy0.java 源代码 获取实现的接口。 使用java的反射技术获取该接口下的所有的方法。*.java 编译 成 .class文件2.将$Proxy0.java* 代理类的源代码编译成 $Proxy0.class文件javaCompiler类似于 命令行输入javac编译3.使用classloader技...原创 2019-06-14 19:40:10 · 149 阅读 · 0 评论 -
d8.1设计模式之外观模式
1.什么是外观模式外观模式(Facade),他隐藏了系统的复杂性,并向客户端提供了一个可以访问系统的接口。这种类型的设计模式属于结构性模式。为子系统中的一组接口提供了一个统一的访问接口,这个接口使得子系统更容易被访问或者使用。2.外观模式(门面) 包装模式实例1:// 用户下单成功后,有那些操作?// 1.增加支付回调接口日志// 2.修改订单数据库状态为已经成功// 3.调用积...原创 2019-06-03 14:38:54 · 174 阅读 · 0 评论 -
d9设计模式——适配器模式
1.什么是适配器模式定义:将一个系统的接口转换成另外一种形式,从而使原来不能直接调用的接口变得可以调用。适配器模式角色划分2.适配器模式涉及3个角色:源(Adaptee):需要被适配的对象或类型, 旧版本或者苹果手机插口适配器(Adapter):连接目标和源的中间对象,相当于插头转换器,新版本与老版本能够实现兼容目标(Target):期待得到的目标, 新版本或者圆子头耳机适配器模式包...原创 2019-06-03 14:04:36 · 189 阅读 · 0 评论 -
d7观察者模式通知消息服务
1.什么是观察者模式在对象之间定义了一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象会收到通知并自动更新。其实就是发布订阅模式,发布者发布信息,订阅者获取信息,订阅了就能收到信息,没订阅就收不到信息。2.观察者模式应用场景Zookeeper事件通知节点、消息订阅通知、安卓开发事件注册分布式配置中心3. 观察者模式原理类图4. 代码实例1public interfac...原创 2019-06-13 15:30:42 · 212 阅读 · 0 评论 -
d3工厂模式
1. 目的为了解耦:把对象的创建和使用的过程分开就是Class A 想调用Class B,那么只是调用B的方法,而至于B的实例化,就交给工厂类。2,工厂模式优缺点优点:代码结构简单。获取产品的过程更加简单。满足了开闭原则,即对拓展开放,对修改关闭。缺点:拓展较繁琐,要拓展时,需同时改动抽象工厂和工厂实现类。...原创 2019-05-11 21:11:50 · 194 阅读 · 0 评论 -
d1.设计模式
1.目标:使用设计模式重构代码2.为什么需要使用设计模式代码复用性 扩展性 减少代码冗余问题3.什么时候需要使用 设计模式重构实现代码重构的肯定是整体的骨架写一些框架4.设计模式六大原则(了解即可)开闭原则后期扩展 不能影响之前代码里氏代换原则封装 继承 多态 接口 抽象类子类重写父类依赖倒转原则面对接口编程,依赖于抽象而不依赖于具体接口隔离原则迪米特法则(最少...原创 2019-05-07 22:31:24 · 161 阅读 · 2 评论