随笔分类 - 设计模式的个人感悟
摘要:代理模式是基础的代理模式之一。常用的AOP,日志都是代理模式现象的。在不改变原来的类或者方法的前提下,对外提供增值服务。 java 实现代理的方式 1)代理分静态代理, 2)jdk动态代理, 3)Cglib动态代理。 静态代理实现方式 代码静态代理,主要通过继承相同的接口, java jdk 动态代
阅读全文
摘要:策略模式:将算法封装到类中,针对不同的场景,提供不同的算法。主要成员:Context(算法接收者) Strategy(算法接口) StrategyImpl(算法是实现者) 优点:灵活切换不同算法,减少If语句的使用 缺点:策略过多导致策略类膨胀 举个例子: 根据条件运算输入参数的加法或者减法 算法接
阅读全文
摘要:什么是策略模式 策略模式将程序中的可变部分,抽象成一个算法接口,然后在这个接口下封装一系列算法。 策略模式具有可扩展性,如果有新的需求来了,就增加新的算法就可以(更多详细可以在慕课网上看到) 比如原来有只“鸭子“ 但是它不会飞,要想给它增加一个飞行的功能,具体的实现步骤 1)定义一个飞行接口(算法接
阅读全文
摘要:责任链模式:客户端在一个”链条“中处理业务逻辑。 业务场景就是:客户买东西申请折扣, 普通销售员:5% 经理:15% CEO:30%和拒接大于30%的折扣 一个客户来到商店买东西,想要优惠价。他首先向普通销售询问折扣,如果普通销售员不能做主,他将向上级传递。客户并不知道是谁处理了折扣的申请。 责任链
阅读全文