初学设计模式

来源:互联网 发布:vga 分辨率 知乎 编辑:程序博客网 时间:2024/05/29 04:45

"GOF"的“设计模式”应该用“工具书”来形容它更为恰当,因为它并不适合初学者看,或许,等你已经做过了很多项目,而且在项目中已经体会到了使用设计模式的好处,再回头来看那本书,那时才是时候。

如果你没有具备以下的条件,那么请你不要去学“设计模式”

1. 工作至少一年;如果没有,你无法理解设计模式的妙处。

2.工作中使用的编程语言必须是面向对象的;设计模式是以面对对象的特征为基本的,如果不是面向对象,也不存在设计模式这个概念了。

你可能有过如下的经历,

当程序需要改动来满足新的需求时,你会发现每次的改动都几乎把之前的代码全部重写。

首先,重复以前工作是很烦,也没有必要的事,

其次,重写出来后的代码也能会产生更多的BUG,

再次,重写出来后的程序又要经过重新测试。

总是就是浪费精神兼时间。

所以聪明的人们便在想着:“能不能让我的程序在每次满足新的需求时,都让我的程序改动最小,甚至不改动,或者,只需添加额外的一些代码即可?”

于是人们便想尽各种方法,在进行设计的时候,把“变化”或“不变化”的部分分别抽出来,把这两部分用一个

“变化点”来关联起来。

这样当下次“变化的部分”改动时,便能把改动减少到最小了。

不要太过于咬文嚼字地去理解“设计模式”,“设计模式”是通过变化而体现出来的(对程序不断地修改,增加代码,而发觉出使用设计模式的好处),“设计模式”本身就是变化的,所以不要去用所谓的“设计模式”来照样画葫芦,套到自己的程序上面去,那样你会已经得“过度使用模式病”,很多初学者都会得那样的病,所以,

当你不知道使用哪种“设计模式”时,那就把所有的书都抛开,用自己的方法来做,做错了也不要紧,

下次对代码进行重构时,你就会发现问题,从而解决问题,这会让你学到更多。

(草稿。待续。)

原创粉丝点击