l

2017年5月2日 星期二

【Design Patterns這樣學就會了】入門與進階實作班(2017年6、7月)

May 02 10:11~11:21

IMG_2095

 

學習設計模式的難處

GoF提出的23個Design Patterns(設計模式)問世至今已經超過22個年頭,只要是從事軟體開發的朋友在工作上或多或少一定會接觸與使用到設計模式,不管是套用在自己的軟體設計上,或使用別人所開發的應用程式框架,到處都存在著設計模式。

Teddy從1997年開始接觸設計模式,至今也有20年的時間。剛開始自己是透過閱讀GoF的經典著作《Design Patterns: Elements of Reusable Object-Oriented Software》來學習,但因為這本書的內容讀起來讓人感覺「學術性質」的成分比較重,不是那麼容易讀懂。加上書中的範例只有程式片段,而且是C++和Smalltalk,更加深了學習困難。

▼GoF Design Patterns

image

 

後來陸續出版的設計模式書籍或是網路文章,提供了大量的程式範例。透過範例學習設計模式固然比較簡單,但是存在「建樹不見林」的問題,缺少對於設計模式性統化的全面性觀點雖然看懂了程式範例,但卻不知道要如何把設計模式應用在自己的專案。因此導致誤用設計模式,造成過度設計(over design)甚至是錯誤設計的問題。

***

從源頭了解設計模式

設計模式起源於建築師Alexander對於建築領域模式的研究,了解Alexander對於設計模式的定義與初衷,不但有助於學習GoF的23個設計模式,還可以輕鬆的判斷:

  • 套用模式的時機點。
  • 要如何套用模式。
  • 如何避免誤用模式。
  • 怎麼知道套用的設計模式已經足夠,避免過度設計的問題。
  • 套用模式的流程與步驟。
  • 如何套用設計模式重構既有系統。
  • 如何教導同事也一起使用設計模式。

 

***

設計模式這樣學就會了

Design Patterns這樣學就會了:入門實作班」與「Design Patterns這樣學就會了:進階實作班」從設計模式的源頭著手,在了解了Alexander的模式方法之後,讓你以前學習設計模式所遭遇的問題一掃而空。

上課實況參考:

螢幕快照 2012-12-14 下午10.45.02

從日常生活的例子當中,分組討論找出pattern的problem、force、solution。

螢幕快照 2012-12-14 下午10.47.02

動手練習寫出context、force與solution。

image
如果對寫程式不是很有把握的話,實作也可以採用pair programming的方式來練習喔。

螢幕快照 2012-12-14 下午10.54.33

***

報名優惠

本次課程的上課日期為6月3、4、10號(日、六、日)與7月22、23、29號(六、日、六)舉辦。為慶祝Teddy接觸設計模式滿20周年,特別推出:同時報名入門班與進階班可享定價69折優惠。

 

image

***

友藏內心獨白:機會難得,20年才一次XD。

沒有留言:

張貼留言