精彩的代码是如何想出来的,要比看到精彩的代码更加令人期待
《重构与模式》中有一句经典之语:如果想成为一名更优秀的软件设计师,了解优秀软件设计的演变过程比学习优秀设计本身更有价值,因为设计的演变过程中蕴藏着大智慧。
重要的不是你将来会不会用到这些模式,而是通过这些模式让你找到“封装变化”,“对象间松散耦合”,“针对接口编程”的感觉,从而设计出易维护,易扩展,易复用,灵活性好的程序。
成为诗人后,可能不需要刻意地按照某种模式去创作,但成为诗人前他们一定是认真地研究过成百上千的唐诗宋词,古今名句。
如果说:数学是思维的体操,那设计模式,就是面向对象编程思想的体操
设计模式有四境界:
1.没学前是一点不懂,根本想不到用设计模式,设计的代码很糟糕;
2.学了几个模式后,很开心,于是到处想着要用自己学过的模式,于是时常造成误用模式而不自知。
3.学完全部模式时,感觉诸多模式极其相似,无法分清模式之间的差异,有困惑,但深知误用之害,应用之时有所犹豫;
4.灵活应用模式,甚至不应用具体的某种模式也能设计出非常优秀的代码,以达到无剑胜有剑的境界。