![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
随梦--飞
日拱一卒,功不唐捐
展开
-
为什么要学设计模式
写出优雅的代码 便于系统维护及重构 经典框架都在用设计模式,熟悉后便于源码阅读,提炼作者核心意图。 设计模式其实是一门艺术,设计模式是在我们遇到问题没有头绪时提供的一种解决问题的方案,设计模式是经验之谈,千万不要死记硬背,生搬硬套。 设计模式有哪些 不得不学的设计模式 工厂模式 建造者模式 代理模式 门面模式 装饰器模式 适配器模式 模板方法模式 策略模式 责任链模式 观察者模式 状态模式 ...原创 2021-06-12 20:40:30 · 44 阅读 · 0 评论 -
不得不学的设计模式之一
工厂模式 简单工厂模式 工厂方法模式 抽象工厂模式 简单工厂模式 public class SimpleFactory { public enum CarType{ TUYOUTA,AUDI,BENZ } public static Car createInstance(CarType carType){ if(carType.equals(CarType.TUYOUTA)){ return new TuYo原创 2021-06-12 20:40:51 · 65 阅读 · 0 评论 -
不得不学的设计模式之二
建造者模式 定义理解 建造者模式是一种创建型模式,就是将一个复杂对象的构建过程与它的表示分离,构建代表对象创建,表示代表对象行为、方法。 建造者模式和工厂模式非常相似,都具备创建与表示分离的特点。建造者模式唯一区别于工厂模式的是针对复杂对象的创建,如果创建简单对象,使用工厂模式进行创建;如果创建复杂对象,可以考虑使用建造者模式。 类图 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xw5Nfi2O-1623509375119)(https://i.loli.net/原创 2021-06-12 22:50:45 · 47 阅读 · 0 评论 -
不得不学的设计模式之三
代理模式 定义 代理模式指为其他对象提供一种代理,以控制对这个对象的访问,属于结构型设计模式 在某些情况下,一个对象不适合或不能直接引用另一个对象,而代理对象可以在客户端与目标对象之间起到中介的作用,使用代理模式可以保护目标对象或者增强目标对象。常用在事务代理、日志监听、缓存、远程调用等场景。代理模式和适配器模式之间的主要区别在于代理模式提供了完全相同的接口,装饰器模式增强了接口,适配器模式更改了接口。 类图 -静态代理 JDK-动态代理 JDK动态代理核心是Java.lang.reflect.原创 2021-06-16 23:03:51 · 93 阅读 · 0 评论 -
不得不学的设计模式之四-门面模式
定义理解 门面模式又叫外观模式,提供了一个统一的接口,用来访问子系统中的一群接口。日常开发中我们无形的都在使用门面模式,面临调用其他系统、第三方组件的方法时经常会封装到一个类中,提供精简的接口给系统使用。 类图 门面模式简单实现 public class Facade { private SubSysA sysA = new SubSysA(); private SubSysB sysB = new SubSysB(); private SubSysC sysC = new原创 2021-06-27 18:03:28 · 100 阅读 · 0 评论 -
不得不学的设计模式之五-装饰器模式
装饰器模式 定义理解 装饰器模式-Decorator Pattern也叫包装器模式(Wrapper Pattern),主要作用是在不改变原有对象的基础上增加原对象的功能。 装饰器模式的核心是功能扩展。 类图 通用实现方法 public abstract class Component { abstract void doMethod(); } public class ConComponent extends Component { @Override void原创 2021-06-27 22:22:45 · 103 阅读 · 0 评论 -
设计模式-创建型模式
原创 2019-08-31 22:40:59 · 82 阅读 · 0 评论 -
写在设计模式之前二-7原则
原创 2019-08-27 23:13:24 · 81 阅读 · 0 评论 -
写在设计模式之前
写在设计模式之前原创 2019-08-26 21:21:49 · 70 阅读 · 0 评论