2012年4月19日

白話 Design Pattern (一) 一些觀念

網路上關於 Design Pattern 的文章不少,當然亦有不少精闢的見解。

不過,由於每個人的領悟方式不盡相同,此系列嘗試用自己認為比較『白話』的方式,來解釋Design Pattern,並且會著重在Pattern的用途與差異(因有感這部分在網路上較缺乏),詳細作法則可以查詢其他網路文章。

以下是寫在前面的一些觀念:

1.Design Pattern可說是一些有經驗的設計者,針對某些的情況所提出的解決方式。使用上未必要照本宣科的如法炮製,只要了解其觀念、思考方向,也可以有許多變形的作法。
2.實務上,解決一個問題常不會只套用一個Pattern,所以Pattern 間不是互相排斥的,可能需要互相合作
3.單看圖示結構,有許多Pattern會非常相似,想要徹底應用,最好先了解其目的(要解決的問題)。
4.很多情況,要使用哪個Pattern 不會有唯一解,所以還是一句『看需求、看情況決定』。
5.使用Pattern是需要付出代價的(如:複雜度、效率、開發時程),也許對開始的開發時期沒有幫助,但換來的通常是變更、維護時期的好處(如:易修改、較好的擴充性、可讀性)。
6.不使用Pattern 也未必不好,需不需要使用可以用SOLID原則檢視與評估。
7.承上,不用一開始就過度設計,但記得最重要的心訣--重構(Refactoring),隨時保持要接受重構的心。

『X!原來D賽配湯(Design Pattern)架簡單!』是本系列文章的目標。(X = 讚、耶、哦...  別想歪)

本系列文章,僅建構在個人的想法,不保證有充分的學理依據。如有謬誤,歡迎指正與討論。

沒有留言:

張貼留言