日拱一卒(三十)

迪米特法则(LoD):如果两个类不能彼此直接通信,那么这两个类就不应到发生直接的作用。如果其中一个类需要调用另一类的某一个方法的话,可以通过第三方转发这个调用。

             白话:Android中Intent类就是这个很好的实例,Activity,Service之间设计就是这样的松耦合,他们不直接通信,而是用Intent这个第三方来通信。

             优点:类之间松耦合,当其中的类被修改时,不会对有关系的类造成波及,提高了维护性。



外观模式(facade):为子系统中的一组接口提供一个一致的界面,此模式定义一个高层接口,这个接口使得这一子系统更加容易使用。

             白话:当客户端要使用服务器类涉及到很多小类时,可将这组合成一个外观类facade封装这些小类提供给客户端,这样客户端只需跟这个外观类facade交互,降低了客户款交互的复杂性。

             注意:可能认为这跟代理模式很像,关键是facade类与下面的SubSystem等类组合的关系,不存在共同的接口。而代理则是真实对象和代理存在共同接口。

           


     场景:(1)设计初期阶段,应该有意识的将不同层分离,层与层之间建立外观模式。
              
 (2) 开发阶段,子系统越来越复杂,增加外观模式提供一个简单的调用接口。
              
 (3) 维护一个大型遗留系统的时候,可能这个系统已经非常难以维护和扩展,但又包含非常重要的功能,为其开发一个外观类,以便新系统与其交互。

                                    


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值