
GOF23设计模式
zdwhong
在java道路上越走越远
展开
-
GOF23(6)之代理模式(结构型模式)
1、核心作用 通过代理,控制对对象的访问。可以详细控制访问某个对象的方法,在调用这个方法之前做前置处理,调用这个方法之后做后置处理。Spring的AOP就是利用代理模式进行实现的。 2、代理模式的角色 抽象角色:定义代理角色和真实角色的公共对外方法; 真实角色:实现抽象角色,定义真实角色所要实现的业务逻辑,供代理角色使用; 代理角色:实现抽象角色,是真实角色的代理,通过真实角色的业务逻辑...原创 2020-02-05 16:52:08 · 127 阅读 · 0 评论 -
GOF23(5)之适配器模式(结构型模式)
结构型模式的核心作用:从程序的结构上实现松耦合,从而可以扩大整体的类结构,用来解决更大的问题。 1、什么是适配器模式 将一个类的接口转换成客户希望的另一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 比如:有一个键盘,键盘上的接口是PS/2接口,而我们的电脑上只有USB接口,那么就得通过一个转换接头,把键盘连接到电脑上,这个转接头就是...原创 2020-02-03 16:42:14 · 172 阅读 · 0 评论 -
GOF23(4)之原型模式(创建型模式)
我们什么时候需要使用原型模式呢? 通过new产生一个对象需要非常繁琐的数据准备或访问权限时,则可以使用原型模式; 什么是原型模式? 就是利用Java的克隆技术,以某个对象为原型,复制出新的对象,显然新的对象具备原型对象的特点。 克隆类似于new,但是不同于new,new创建的对象的属性都是默认值,克隆出的对象属性的值和原型对象相同。并且克隆出的新对...原创 2020-02-03 09:53:42 · 123 阅读 · 0 评论 -
GOF23(3)之建造者模式(创建型模式)
1、场景 我们需要建造一个比较复杂的产品,如神舟飞船。这个产品创建起来非常的复杂,它肯定是由很多的零件先组成组件,然后组件再组成产品的,那么就会涉及到组件组装的顺序问题。 实际开发中,我们所需要的对象创建时,非常的复杂,有很多的步骤需要处理的时候。 2、建造者模式的本质 分离了对象子组件的单独构造(由Builder来负责)和装配(由Direc...原创 2020-02-01 21:17:32 · 140 阅读 · 0 评论 -
GOF23(2)之工厂模式(创建型模式)
工厂模式的主要作用:实现了创建者和调用者的分离。 工厂模式的核心本质:实例化对象,用工厂方法代替new操作;将选择实现类、创建对象统一管理和控制。从而将调用者和我们的实现类进行解耦。 详细可以分为: 简单工厂模式:用来生产同一等级结构中的任意产品。(对于增加新的产品,需要修改原来的代码) 工厂方法模式:用来生产同一等级结构中的固定产品。(支持增加任意产品,不需要...原创 2020-01-31 15:24:58 · 117 阅读 · 0 评论 -
GOF23(1)之单例设计模式(创建型模式)
1、概述 23种设计模式是国外的4个软件行业的大佬整理出来的优化开发的一种思维方式,GOF是Group Of Four,也就是4人帮的意思。我们在开发中,如果可以把设计模式融入到项目中,那肯定是很不错的方式,很多的开源框架中,都会用到部分或所有的这些设计模式。 创建型设计模式:单例模式、工厂模式、抽象工厂模式、建造者模式、原型模式; 结构型设计模式:适配器模式、桥接模式、装饰模...原创 2020-01-30 09:40:29 · 132 阅读 · 0 评论