设计模式之迪米特法则(最少知识原则)学习

迪米特法则(Law of Demeter)(最少知识原则 Least Knowledge principle):如果两个类不必彼此直接通信,那么这两个类就不应该发生直接的相互作用。如果其中一个类需要调用另一个类的方法的话,可以通过第三者转发这个调用

迪米特法则首先强调的前提是:在类的设计上,每一个类都应当尽量降低成员的访问权限。也就是说类应当包装好自己的private,不需要让别的类知道的字段或是方法,就不要公开。它的根本思想是强调了类之间的松耦合。而类之间的耦合度越低越有利于复用。一个处在弱耦合的类被修改,不会对有关系的类有影响。也就是说信息的隐藏促进了软件的复用。

拿书中的例子来说,IT部门是抽象类或是接口,而IT部门的人员就是具体的子类。根据依赖倒转原则,应该面向接口编程,而不是面向实现编程。任何部门或是任何人都问题,直接找IT部门就可以了,而不必找某个人,不论人认识不认识,IT部门都会安排人员来处理。这就降低了其他部门与IT部门的耦合性,IT部门的人员变动,无论来了新人还是老人离职,都不会对其他部门造成影响。只要其他部门要求时IT部门能派出人员处理就行了。

学习了好几个设计模式,越来越觉得设计模式中蕴含着管理的思想。而这些思想是我们这些整天沉浸于开发的程序员所匮乏的。要想在这个行业有更好的发展,而不仅仅当一辈子coder,熟悉这些思想是很有必要的。对于长远发展来说,这远比熟悉几个API来的更有意义。

你可能感兴趣的:(设计模式)