一个Android前端对java23种常用设计模式的理解

新[dú]姿[hòu]势[gǎn]

一,创建型

创建对象的五种设计模式

单列模式

关键点: static instance synchronized,创建一个全局唯一的对象来重复使用。

原型模式

关键点:Cloneable。变量只保存了指向的地址,如果想复制对象要么实现Cloneable接口,要么new一个来赋值。

建造者模式

关键点:Builder,set(),this。在一个实体对象种创建内部类Builder,设置参数返回本身。如:Dialog的创建。

工厂模式

关键点:xxxFactory。简单工厂和抽象工厂,根据需要使用工厂创建出对象。如:BitmaFactory

二,结构性

适配器模式

关键点:Adapter,兼容。将一个类的接口转换成用户需要的类型。

装饰者模式

关键点:复用,修改。为了简洁将一个方法重写,保证原方法功能不变下加入其他方法。如:网络封装暴露为request(),在request()方法最上添加网络检查或加载对话框显示,在末尾加上网络加载对话框隐藏。

代理模式

关键点:接口,替身。使用一个新的对象控制原对象。如:bindService种Ibinder,使用Ibinder调用Service中的方法。

外观模式

关键点:低耦合,职责。使用一个对象来完成所有逻辑功能,用户需要的时候就用这个对象。如:MVP设计模式中的present,在activity中创建present并实现一个中间接口传给present,所有逻辑放在present中完成。

桥接模式

关键点:层级,多维,变化。一种可以多样化的结构来完成多样化的功能,每一个关键点由一个对象来控制。如:Graphic Pain Color Draw

组合模式

关键点:冗余,复用。一个初始对象中由其他成员组成。如:网络请求返回一个Json,Json中有多个数组和对象,我们将Json转为一个对象,这个对象中包含多个对象,每个对象可以单独成立。

亨元模式

关键点:复用,减少开销。使用已有的对象来设置某属性使其符合用户需要的,且重复使用减少对象的创建。

三,行为型

迭代模式

关键点:迭代。由某个条件重复使用一个方法的行为。

责任链模式

关键点:向下传递,分发。将一个事件经过很对对象修改其属性后逐一传给下一个。如:RxAndroid,touchVvent

观察者模式

关键点:观察者,和被观察者。被观察者被很多观察者监听,一旦观察者触发事件则所有观察者收到消息。如BroadCast

解释器模式

修炼中,不敢妄自揣度。。。

中介模式

修炼中,不敢妄自揣度。。。

访问者模式

修炼中,不敢妄自揣度。。。

状态模式

修炼中,不敢妄自揣度。。。

备忘录模式

修炼中,不敢妄自揣度。。。

命令模式

修炼中,不敢妄自揣度。。。

模板方法模式

修炼中,不敢妄自揣度。。。

策略模式

修炼中,不敢妄自揣度。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值