设计模式
Mr.LiJiaHao
一万小时定律
展开
-
通过反射机制实现一个完美的策略模式
一、前言最近打算在自己的项目中加上一个加密算法工具类,用来调用不同的加密算法,并且希望能够符合开闭原则,本来打算用《大话设计模式》中讲解的策略模式,但是对书中的实例不太满意,但是书中介绍了想要实现一个更好的策略模式需要用到java的反射机制,所以开始学习如何用策略模式实现一种好用的加密算法工具类。二、解决思路与实现先来看一下策略模式的模型图:在上图的策略模式原型中,可以看出来,...原创 2020-02-11 17:22:24 · 1627 阅读 · 0 评论 -
适配器模式
本文总结摘自刘伟老师的《设计模式》和程杰老师的《大话设计模式》1.定义适配器模式定义:将一个接口转化成客户希望的另一个接口,适配器模式使原本由于接口不兼容而不能一起工作的那些类可以一起工作。2.为什么需要适配器模式通常情况下,客户端可以通过目标类的接口访问它所提供的服务。有时,现有的类可以满足客户类的功能需要,但是它所提供的接口不一定是客户类所期望的,这可能是因为现有类中方法名...原创 2019-05-19 20:47:20 · 1018 阅读 · 0 评论 -
桥接模式
本文总结摘自刘伟老师的《设计模式》和程杰老师的《大话设计模式》1.定义桥接模式:将抽象部分与它的实现部分分离,使它们都可以独立地变化。(桥接模式用关联关系来降低类与类之间的耦合)。另一种定义理解:实现系统可能有多角度分类,每一种分类都有可能变化,那么就把这种多角度分离出来让他们独立变化,减少它们之间的耦合。2.为什么需要桥接模式桥接模式将继承关系转换为关联关系,从而降低了类...原创 2019-05-26 14:26:14 · 705 阅读 · 2 评论 -
组合模式
本文总结摘自刘伟老师的《设计模式》和程杰老师的《大话设计模式》1.定义组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。组合模式又可以称为“整体-部分”模式,属于对象的结构模式,它将对象组织到树结构中,可以用来描述整体与部分的关系。2.模式动机组合模式描述了如何将容器对象和叶子对象进行递归组合,使得用户在使...原创 2019-06-01 15:06:06 · 239 阅读 · 0 评论 -
代理模式
本文总结摘自刘伟老师的《设计模式》和程杰老师的《大话设计模式》1.定义代理模式:给某一个对象提供一个代理,并由代理对象控制对原对象的访问引用。代理模式英文叫做Proxy或Surrogate,它是一种对象结构模型。2.为什么需要代理模式某人要找对象,但是由于某些原因(如工作太忙)不能直接去找,于是委托一个中介机构去完成这一过程,如婚姻介绍所,在这里婚姻介绍所就是一个代理,与此相类...原创 2019-06-07 18:57:47 · 1953 阅读 · 0 评论 -
动态代理
本文总结摘自刘伟老师的《设计模式》和程杰老师的《大话设计模式》在看本文动态代理前建议看前一篇代理模式的讲解。动态代理动态代理是一种较为高级的代理模式,它的典型应用就是Spring AOP。在传统的代理模式中,客户端通过ProxySubject调用RealSubject类的request()方法,同时还在代理类中封装了其他方法(如preRequest()和postRequest(...原创 2019-06-10 17:29:10 · 236 阅读 · 0 评论