l

2016年5月24日 星期二

【工商服務】7月Design Patterns這樣學就會了入門實作班

May 23 23:13~11:48

螢幕截圖 2016-05-23 23.46.34

 

這個月去某公司上Design Patterns企業內訓,由於上課人數多達50幾人,但上課時間只有14小時,所以Teddy把原本公開班的課程重新安排,以便在有限的時間內發揮最大的效用。

該公司員工素質很高,所以Teddy把重點放在介紹Alexander的pattern方法,再搭配少數幾個pattern作為例子,希望學員在理解Alexander的pattern方法之後,日後有能力可以看懂與活用各種其他類型的pattern,而不是僅限於GoF書中的那23個design patterns。

今天上課,在實作完Proxy pattern之後,我請學員作一個練習活動,回頭寫出Proxy pattern的problem,然後寫下solution,最後對solution問「為什麼」來找force。活動結束討論的時間,學員普遍反應:「我明明已經知道Proxy pattern,而且也會實作了,可是你要我用一句話寫出Proxy pattern解決什麼問題,還真不是很好回答。」有一位學員提到,在這個練習中,他學到一件事:「如果我連問題是什麼都說不出來,這樣我怎麼有辦法判斷套用的解法到底是否合適呢?」這個道理非常淺顯,但卻經常被人們忽略。

在討論到force的時候Teddy告訴學員:「沒有 force 就不會有 problem」,這句話講過好幾次了,但不知為什麼今天講這句話特別有感覺。

晉惠帝說:「何不食肉糜」,是因為他的世界不存在「短缺」這個 force,所以他無法感受到老百姓的問題。 大老闆說:「台北房價哪會太貴?」因為他的世界不存在「缺錢」這個 force。 你同事說:「為什麼一個class要有這麼多小method,還要浪費時間幫它們取名字?」那是因為他的世界不存在「可讀性」這個force。

要讓一個人改變觀念、行為,接受新的東西,首先要讓他觀察到force,才會發現問題。

***

要提高設計能力,看到問題背後的問題,活用各種pattern,歡迎參加:Design Patterns這樣學就會了入門實作班,7月23、24、30(五、六、日)上課。

入門班課程重點包含:

  • 軟體設計與設計的產出物
  • Pattern的六大元素(Context、Problem、Force、Solution、Resluting Context)
  • 動手寫自己的Pattern
  • 套用Pattern的流程 
  • 基礎物件導向觀念
  • 10個常用GoF設計模式:包含State、Facade、Template Method、Factory Method、Abstract Factory、Observer、Command、Adapter、Strategy與Composite。
  • 套用設計模式的原則,如何判斷套用的設計模式是否合適?

螢幕截圖 2015-09-21 18.55.23

***

▼課程照片。

螢幕截圖 2015-09-21 19.55.44螢幕截圖 2015-09-21 19.56.12螢幕截圖 2015-09-21 19.56.37螢幕截圖 2015-09-21 19.57.07螢幕截圖 2015-09-21 20.04.24螢幕截圖 2015-09-21 20.06.05

***

image

***

友藏內心獨白:學習看那看不到的東西。

沒有留言:

張貼留言