设计模式——迪米特法则

What:迪米特法则,最少知识,原则,虽然名字不同,但描述的是同一个规则:一个对象应该其他对象有最少的了解。一个类应该对自己需要耦合或调用的类知道最好,你的内部是如何复查都和我没关系,那是你的事情,我就知道你提供这么多public方法。迪米特法则对低耦合提出了明确的要求:
1.只和朋友交流:每个对象都必然会与其他对象有耦合关系,两个对象之间的耦合就成为朋友关系。一个类只和朋友交流,不和陌生人交流,类和类之间的关系建立在类间的,而不是方法间,因此一个方法尽量不引入一个类中不存在的对
象。
2.朋友间也是有距离的:一个公开的public属性或方法越多,修改时设计的面也就越大,变更引起的风险扩散也就越大。因此,为了保持朋友间的距离,在设计时需要反复衡量:是否还可以在减少public方法和属性,是否可以修改为private,package_private、protected等访问权限,是否可以加上final关键字等。做到尽量内敛,多使用关键字。
3.自己的就是自己的:实际工作中会出现这样一个方法:放在本类中也可以,放在其他类也没错,那么怎么去衡量?可以坚持的原则:如果一个方法你放在本类中,既不增加类间关系,也对本类不产生负面影响,那么就放置在本类中。
4.谨慎使用Serializable

5.迪米特法则的核心观念就是类间解耦,弱耦合,只有弱耦合了以后,类的复用率才可以提高。在采用迪米特法则时需要反复权衡,既然做到结构清晰,又做到高内聚低耦合。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值