Spring源码之设计模式

一.代理模式
分为jdk代理和cglib代理。(前者实现接口,后者生成继承)
1.两个参与角色:执行者和被代理人
2.对于被代理人来说,这件事情是一定要完成的,但是自己又不想做或者没有时间做,找代理。
3.需要获取到被代理人的资料。
归纳:办事要求人,所以找代理。
二.工厂模式
分为简单工厂、工厂方法、抽象工厂。
1.对调用者隐藏复杂的逻辑处理过程,调用者只关心执行结果。
2.工厂要对结果负责,保证生产出符合规范的产品。
归纳:只对结果负责,不要三无产品。
三.单例模式
1.保证从系统启动到系统终止,全过程只会产生一个实例。
2.当我们在应用中遇到功能性冲突的时候,需要使用单例模式。
归纳:保证独一无二
四.委派模式
1.两个参与角色,委托人和被委托人。
2.委托人和被委托人在权利上完全平等(即实现同一个接口)。
3.委托人持有被委托人的引用。
4.不关心过程,只关心结果。
归纳:干活是你(普通员工)的,功劳是我(项目经理)的。
五.策略模式
1.执行最终结果一样。
2.执行过程和执行逻辑不一样。
归纳:不同的实现,达到同样的目的就行。
六.原型模式
1.首先有一个原型。
2.数据内容相同,但对象实例不同(完成两个不同的内存地址)。
归纳:拔一根猴毛,生出千万个。
七.模板模式
1.执行流程固定,但中间有些步骤有差别。
2.可实现批量生产。
归纳:流程标准化,原料自己加。
例:jdbc模板。

猜你喜欢

转载自blog.csdn.net/weixin_42255265/article/details/84036029
今日推荐