开篇介绍

来源:互联网 发布:幼儿园早教软件 编辑:程序博客网 时间:2024/06/01 09:26

转载请注明出处!!!http://blog.csdn.net/zhonghuan1992

         所有配套代码均在github上:https://github.com/ZHONGHuanGit/DesignPattern


跟着ZHONGHuan来学设计模式

开篇介绍

  



         写这个系列笔记,顺便回忆一下,也可以和大家一起分享一下。

         在学习设计模式之前,心里可能有一个疑问,就是什么是设计模式。在这里我先废话一下,我说明一下我对设计原则和设计模式的理解,因为个人觉得设计模式,是建立在设计原则的基础之上来的。

        

图1

         结合图1,这是我个人觉得而已,原则就好像是基础,而模式是针对一些具体环境而生的应对的设计方式。

         其实上面的你可以忘了,我只是在瞎扯,因为设计原则和模式之间没有严格的这样的关系,只不过自己当时在学的过程中有这样的感觉。

         设计模式是什么呢?打个比方,在很久很久以前,汉子追妹子都用一种手段,就是送水果给妹子吃(别小瞧这个手段,你现在试试也还不错哦!),但是那个时候汉子还没有卫生这个概念,所以大部分的汉子都嫌麻烦,水果都不洗就送妹子了(就像我们在学习设计模式之前一样,嫌麻烦不多做点事情)。突然有个汉子(现在称为绅士),绅士发现水果洗了之后更好看,而且更卫生,更不会有后续的问题。所以,他每次追妹子都送洗了的水果,所以,妹子们都很喜欢他(那个时候还是母系社会,让妹子喜欢是一件了不起的事),后来其它的汉子知道后,都纷纷效仿他,因为这样能够让追到妹子,并且,追到妹子后,更能够确保妹子的身体是健康的(因为吃了洗了的水果嘛)。

         好了,上面的故事有点扯是不是,想说的是,汉子就是你,设计模式就是更合理的追妹子方式,使用设计模式,能够让你的程序代码更具维护性,这个事非常重要的,特别是面对几千甚至上万几十万的代码的时候,你需要增加一个新的功能的时候,没学设计模式之前,你可能会牵一发而动全身,学了设计模式之后,并且将之使用在你的程序内,你发现只需要改动几个地方,就可以完成了。这就是设计模式的魅力。(PS:可不要想为什么你不是那个想出那个方法的人,你可以想,但是请站在巨人的肩膀上想,也就是多学点东西后,明白设计模式是什么了,再去思考为什么这样,也许可以减少你胡思乱想的时间)

         SO,为了追到妹子,为了让程序代码更具备可维护性,请学习设计模式。你会发现,你增加一个新的功能,没问题啦,可是看别人,却绞尽脑汁在想怎么办,只能说,谁让你不看设计模式的,该!

         总而言之,先学完设计模式,再简单的付诸实践后,我们再仔细思考为什么,也许,我们能够理解更清楚。

         在后续的部分中,我们先介绍设计原则,再讲讲一些设计模式的应对情况,最后我们再一起讨论,什么是设计模式,你觉得你是否可以提出一些新的设计模式。

         废话有点多,让我们开始吧!

19 1