软件的永恒之道–模式的运用模式

这两天在群里讨论到了设计模式的问题。令狐老师给大家讲解了几个模式。结果昨天老朱就要把讲到的模式用到他的程序里去。结果被我和令狐合力教训了一通,又是一个拿着把铁锤看什么都是钉子的家伙。

8过偶自己也反省了一下下,得有好几个月没有去看C.Alex的书了,昨天赶紧又找出来继续往下看,原来刚好把“门”的部分看完了。

Alex说:有生气的模式语言只是一扇通往永恒之道的门。要走上这永恒之道,还需要语言的发生力。静态的模式语言只是砖石和灰浆。建筑的生长和再生是由一系列基于静态模式语言的小的活动–即对静态模式的运用。这种运用,也有模式。

相对于静态模式,运用模式便是一种动态模式。同样是一个简单的Singleton模式,在不同的场合就会有不同的用法,这一点A.Alex(也是一个叫Alex的家伙)在《MC++D》一书中用了一个章节来说明,在KDL的例子中如何运用Singleton,在多线程中又要如何运用。

对于DP的滥用问题,王咏刚在去年最后一期的《程序员》杂志中,有一篇《“设计模式”电视机》说得很好,也很有趣。其文章的核心是:在软件设计过程中,应当正确对待产品需求与设计模式之间的关系:是产品需求引出设计模式,而不是设计模式决定产品需求。

光有工具还是不够的,同时还必须要知道如何运用工具。

4 Replies to “软件的永恒之道–模式的运用模式”

  1. >>产品需求引出设计模式,而不是设计模式决定产品需求。同感,有些同事,學了設計模式之後, 整個程序, 處處用模式, 還很得意! 我記得有個大師說過, 如果你在系統中,24個模式都用到了, 那你可能要檢查下, 是不是過度使用了!

Leave a Reply

Your email address will not be published. Required fields are marked *