
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
软件开发设计模式是大多数软件开发程序员都应该熟练掌握的一个编程技术,而本文我们就简单来了解一下,建造者模式与代理模式的概念和应用分析。
一、建造者模式
1、描述
将一个对象的构造过程进行封装,并按照一定顺序进行构造。
通俗的讲,假如要创建电脑的对象,那么各个实例的属性不同,也就是电脑的配置各不相同.这个时候可以考虑用构造者模式。
2、适用性
当需要创建的对象创建过程复杂,如对象由多个部件构成,且各部件面临着复杂的变化。
3、实现逻辑
产品类:需要创建的对象。
抽象建造者类:封装构建步骤,定义产品对象的规范。
具体建造者类:实现抽象建造者类,实现产品类的各个属性的具体方法。在构造过程完成后,提供产品的实例。
指挥者类:调用具体建造者类来创建复杂对象的各个部分,负责保证对象各部分完整创建或按某种顺序创建。
二、代理模式
1、描述
代理模式属于结构型模式中的一种,通过对代理对象的调用来达到对原对象的增强、减弱作用。通过代理类的生成时机,我们将编译期就生成代理类的情况称之为静态代理模式,而在Java运行期动态生成代理类的场景称为动态代理模式。动态代理又基于接口和继承两种实现方式分别分为JDK动态代理和CGLib动态代理两种。
2、适用性
当访问对象不方便直接引用时(如原对象授权太过宽泛、需要对不同用户级别提供不同权限)。
原对象功能需要增加,可以通过代理模式在不影响原始类的基础上实现目的。
3、实现逻辑
抽取真实主题类需要代理的接口获取抽象主题类。
代理类和主题类共同实现抽象主题类。
代理类控制真实主题类生命周期。代理在完成⼀些任务后应将⼯作委派给服真实主题类的对象。
真实主题类:原始类、需要被代理的类。
抽象主题类:定义真实主题类中需要被代理类代理的接口。保证代理对象和原始对象的可交互性。
代理类:实现抽象主题类,其内部含有对真实主题的引用,它可以访问、控制或扩展真实主题的功能。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。