
设计模式之禅
根据秦小波所著的设计模式之禅对常用的设计模式进行详细的阐述和说明。
温柔狠角色
北邮本硕毕业,前小米服务端工程师,目前任职快手高级Java开发工程师,优快云认证博客专家,优快云学院讲师,GitChat分享者。
在2020.3月,参加社招面试,拿下了阿里,头条,快手,百度以及美团的社招Offer;在学生时代亦拿过多家知名大厂和国企的Offer。
喜欢学习,热爱分享技术,擅长总结知识点。优快云百万级博主,博客专家。
展开
-
23种设计模式大汇总
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52932234冷血之心的博客)关注微信公众号(文强的技术小屋),学习更多技术知识,一起遨游知识海洋~完整的学习了设计模式,并且都做了笔记。以下来一个汇总:1、单例模式: Java设计模式-单例模式2、工厂方法模式...原创 2016-10-26 10:51:46 · 18411 阅读 · 0 评论 -
Java设计模式—建造者模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52932495冷血之心的博客)目录建造者模式:通用类图如下:角色定义:● Product产品类● Builder抽象建造者● ConcreteBuilder具体建造者● Director导演类通用代码如下:优点:使用...原创 2016-10-26 11:19:30 · 4203 阅读 · 0 评论 -
23种设计模式类图总结
23种设计模式类图大总结原创 2016-09-12 09:41:48 · 18139 阅读 · 2 评论 -
Java设计模式—工厂方法模式&抽象工厂模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52503884冷血之心的博客)目录工厂方法模式:通用类图如下:抽象产品类:具体产品类抽象工厂类具体的工厂类场景类:工厂方法模式的优点:使用场景:工厂方法模式的扩展:(1)简单工厂模式(2)多工厂模式抽象工厂模式...原创 2016-09-11 15:07:17 · 18717 阅读 · 11 评论 -
Java设计模式—解释器模式&迭代器模式简介
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52496718冷血之心的博客)解释器模式:在实际的系统开发中使用得非常少,因为它会引起效率、性能以及维护等问题,一般在大中型的框架型项目能够找到它的身影,如一些数据分析工具、报表设计工具、科学计算工具等,若你确实遇到“一种特定类型的问题发生的频率足够高”的...原创 2016-09-10 20:04:23 · 1899 阅读 · 0 评论 -
Java设计模式—享元模式
享元模式:是池技术的重要实现方式。 定义如下:使用共享对象可有效地支持大量的细粒度的对象。 个人理解:享元模式利用共享对象的技术,解决了Java中内存溢出的问题。 享元模式的定义为我们提出了两个要求:细粒度的对象和共享对象。我们知道分配太多的对象到应用程序中将有损程序的性能,同时还容易造成内存溢出,那怎么避免呢?就是享元模式提到的共享技术。我们先来了解一原创 2016-09-10 19:52:39 · 3032 阅读 · 0 评论 -
Java设计模式—组合模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52496522冷血之心的博客)目录组合模式个人理解:定义如下:通用类图如下:组合模式的包含角色:● Component 抽象构件角色● Leaf 叶子构件● Composite 树枝构件通用源代码:组合模式的优点:...原创 2016-09-10 19:31:22 · 6324 阅读 · 1 评论 -
Java设计模式—桥梁模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52490611冷血之心的博客)目录桥梁模式(桥接模式)定义:通用类图如下:角色介绍:● Abstraction——抽象化角色● Implementor——实现化角色● Refined Abstraction——修正抽象化角色● C...原创 2016-09-09 21:43:40 · 3974 阅读 · 1 评论 -
Java设计模式—状态模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52468077冷血之心的博客)目录定义如下:个人理解:通用类图:角色介绍:● State——抽象状态角色● ConcreteState——具体状态角色● Context——环境角色通用源代码:场景类:状态模式的优点:状...原创 2016-09-08 10:01:35 · 3879 阅读 · 0 评论 -
Java设计模式—备忘录模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52462246冷血之心的博客)目录备忘录模式定义如下:通用类图如下:角色说明:● Originator 发起人角色● Memento 备忘录角色● Caretaker 备忘录管理员角色通用源码如下:备忘录模式的使用场景:注...原创 2016-09-07 19:05:00 · 2541 阅读 · 0 评论 -
Java设计模式—代理模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52452953冷血之心的博客)目录代理模式:个人理解:通用类图如下:角色定义:通用源代码:代理模式的优点:案例分析:类图如下:通用源代码如下:代理模式的扩展:普通代理:强制代理:动态代理:动态代理Dem...原创 2016-09-06 20:07:49 · 5350 阅读 · 2 评论 -
Java设计模式—命令模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52446642冷血之心的博客)目录命令模式定义:通用类图如下:角色说明:● Receive接收者角色● Command命令角色● Invoker调用者角色通用源代码如下:命令模式的优点:● 类间解耦● 可扩展性...原创 2016-09-06 08:44:54 · 3316 阅读 · 2 评论 -
Java设计模式—原型模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52422098冷血之心的博客)目录个人理解:定义:通用类图如下所示:通用源代码:优点:性能优良逃避构造函数的约束原型模式的使用场景● 资源优化场景● 性能和安全要求的场景● 一个对象多个修改者的场景原型模式的...原创 2016-09-03 11:39:24 · 4916 阅读 · 4 评论 -
Java设计模式—观察者模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52414289冷血之心的博客)目录观察者模式(Observer Pattern)定义如下:个人理解:通用类图:包含角色:● Subject 被观察者● Observer 观察者● Concrete Subject 具体的被观察者...原创 2016-09-02 15:48:11 · 3459 阅读 · 2 评论 -
Java设计模式—门面模式(带案例分析)
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52032536冷血之心的博客) 目录1、门面模式的定义:2、通用类图3、角色定义:Facade门面角色 subsystem4、门面模式的优点减少系统的相互依赖提高了灵活性提高安全性5、门面模式的缺点6、通用代...原创 2016-07-26 09:36:11 · 10652 阅读 · 3 评论 -
Java设计模式—策略模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/51952823冷血之心的博客)目录策略模式(Strategy Pattern)定义:策略模式的通用类图:策略模式的三个角色:● Context:封装角色● Strategy:抽象策略角色● Concrete Strategy:具...原创 2016-07-19 10:05:56 · 3397 阅读 · 0 评论 -
Java设计模式—模板方法模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/51868973冷血之心的博客) 目录1、定义:2、通用类图如下:具体模板:3、通用代码如下:抽象模板类:具体模板类:场景类:优点:缺点:总结:模板方法模式仅仅使用了Java的继承机制,但它是一个应用非常广泛的...原创 2016-07-09 22:38:06 · 15091 阅读 · 4 评论 -
Java设计模式—装饰模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/51570272冷血之心的博客)目录装饰模式定义:通用类图:角色分类:抽象构件(Component)具体构件(ConcreteComponent)装饰角色(Docorator)具体装饰角色(ConcreteDecoratorA...原创 2016-06-02 21:50:42 · 4366 阅读 · 2 评论 -
Java设计模式-单例模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/52422098冷血之心的博客)目录单例模式饿汉式:懒汉式: 结论:2017-08-09更新全部的单例模式的写法,代码如下:2018-12-01日,新增了使用内部静态枚举Enum来实现单例模式单例模式单例模式是一种常用的软件...原创 2016-04-14 11:43:12 · 5920 阅读 · 1 评论 -
Java设计模式—责任链模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/51959801冷血之心的博客)目录责任链模式的定义:通用类图:通用源代码:抽象的处理者实现三个职责:责任链模式的优点:责任链模式的缺点:使用责任链模式的注意事项:责任链模式的定义:使多个对象都有机会处理请求,从而避免了...原创 2016-07-19 21:45:55 · 3307 阅读 · 2 评论 -
Java设计模式—适配器模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/51966534冷血之心的博客)目录适配器模式的个人理解:转换方法:适配器模式的定义:通用类图:角色定义:● Target目标角色● Adaptee源角色● Adapter适配器角色通用源代码:适配器模式的优点:配器模式...原创 2016-07-20 11:35:21 · 2997 阅读 · 0 评论 -
Java设计模式—访问者模式
原文地址:http://www.cnblogs.com/java-my-life/archive/2012/06/14/2545381.html在阎宏博士的《JAVA与模式》一书中开头是这样描述访问者(Visitor)模式的: 访问者模式是对象的行为模式。访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构则可以保持不变。...转载 2016-07-29 09:59:33 · 1888 阅读 · 0 评论 -
Java设计模式—中介者模式
(尊重劳动成果,转载请注明出处:https://blog.youkuaiyun.com/qq_25827845/article/details/51925087冷血之心的博客)目录定义:类型:类图:中介者模式的结构中介者模式的优点适用场景中介者模式是一种并不常用的模式,在此简单阐述阐述。定义:用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显示地相互作...原创 2016-07-16 16:37:47 · 2171 阅读 · 0 评论