设计模式(一)
在工作3年之后,也算写了一点代码。在每天的工作中,越来越感觉‘设计模式’才是程序员的内功心法,是每个程序员最应该花时间钻研的“九阳神功”。从博客和公众号推送中,也经常能看到关于设计模式的内容,总是隐隐地感觉那些文章缺少了点什么,自己也说不清楚,可能是那些文章有种冷冰冰的感觉,没有温度。世上最有温度的文章还是自己写的,就像永远都觉得自己做的菜挺好吃一样。
借着这个机会,也为了提高下自己的编程水平与写作水平,我想写一个关于设计模式的专题,有空就更新一下,就当自己练笔了。虽然可能很慢,最后肯定会更新完成的,平时的工作确实也挺繁重的。
写这些文章的目的,还是希望能把设计模式说的自己能理解,别人也能理解,能够真正地运用到平时的工作之中。同时也不希望在自己的文章中追求华丽的排版,精致的配图,因为看过很多这种文章,浪费过多的精力不说,其实也没有什么用。最好的效果就是大家都能用简单的例子说清楚设计模式的使用方法,为什么要使用设计模式等问题?
本人研究设计模式也有一段时间了,并不希望因为写文章就暂停自己的脚步,因此本专题的开篇之作就从现在看到的‘外观模式’开始。
提到‘外观模式’之前,需要知道一下迪米特法则
如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。
这个法则强调的是在类的机构设计上,每一个类都应当尽量降低成员的访问权限,实现类之间的松耦合。类之间的耦合越弱,越有利于复用。一个弱耦合的类被修改,不会对有管理的类造成波及。
外观模式
提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。
行了,外观模式下次再详s看,这次就看懂上面的迪米特法则
就可以了。