精華區beta CSSE 關於我們 聯絡資訊
最近看到一些關於反design pattern的看法 [1] 其中最著名的當屬Paul Graham以及Beyond Java這本書 Paul認為 當他看到程式之中有重覆性出現時 他認為是警訊 [2] 因為這表示程式abstraction的程度還不夠 才有這種類似copy的模式出現 (當然這與copy&paste code的層次明顯不同 -.-") 我也看過有人認為GoF的design pattern是C++的補釘大全 像是Visitor採用的double dispatch [3] 在某些程式語言直接有支援 也就不需要採用Visitor這個pattern 但是我忘記這是在那裡看到的 有人知道這個說法的出處嗎? 版上各位對design pattern的看法又是如何呢?在實際使用方面呢? 我平常寫程式時也常會使用一些基本的pattern 像是singleton, factory, visitor 但對有些pattern還是未能運用自如 我覺得pattern是還蠻重要的 可以把思考提升一個層次 學習pattern除了看書外 假如能碰到需要使用的場合 使用過幾次 看到問題就能想到pattern 這方面光看書應該比較難體會 一些實務經驗似乎是必需 版主之前有發表過關於pattern的文章 但似乎是持反對立場 不知道我們應該對pattern持什麼樣的態度呢? [1] http://fcamel.twbbs.org/archives/2007/01/14/247/ [2] http://en.wikipedia.org/wiki/Design_pattern_(computer_science)#Criticism [3] http://en.wikipedia.org/wiki/Double_dispatch -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.70.75.158 ※ 編輯: ellinas 來自: 203.70.75.158 (02/08 19:48)