l

2016年3月18日 星期五

【軟體重構入門實作班】第一梯次課程實錄:Day1

March 18 11:10~12:29

螢幕截圖 2016-03-18 12.26.29

 

3月15、16舉辦的「軟體重構入門實作班」已順利結束。準備了兩年終於開課,為了感謝參加「首發團」學員的支持,在開始正式上課前Teddy宣布首發團的學員在兩年之內可以免費再上一次本課程。

▼入門班課程首先從介紹重構基本觀念開始,接著進入到主題,涵蓋Martin Fowler經典重構名著《Refactoring》書中的22個怪味道(Bad Smells),以及36個移除這些怪味道的重構手法。最後討論重構在軟體設計方法中所扮演的角色,並說明TDD與重構的關係。

螢幕截圖 2016-03-18 11.30.44螢幕截圖 2016-03-18 11.30.54

***

▼課程開始先用透過樂高遊戲來體驗什麼是重構,以及軟體開發沒有進行重構和有進行重構的差別。

螢幕截圖 2016-03-18 12.02.11IMG_9370_with_logo

 

▼接著進入重構基本觀念介紹,持續重構可以改善軟體設計,讓軟體變軟。

螢幕截圖 2016-03-18 11.43.11

 

▼瞭解重構的目的之後,怎麼知道自己的軟體何時需要重構?透過尋找怪味道做為重構的觸發點。

螢幕截圖 2016-03-18 11.44.55

 

▼尋找怪味道練習,正式介紹22個怪味道之前,先「檢查」看看學員們的「程式碼嗅覺」靈敏度如何。

IMG_9507_with_logo

 

▼慢慢切入主題,從重構的定義來思考以下這六個議題。

螢幕截圖 2016-03-18 11.49.56

 

▼重構藉由改變不同粒度大小的程式結構,達到提升設計品質的目的。

螢幕截圖 2016-03-18 11.53.14

 

▼思考一下哪些活動屬於重構?

螢幕截圖 2016-03-18 11.52.08

***

▼重要觀念介紹完畢之後接下來就是一連串的怪味道與重構練習。

螢幕截圖 2016-03-18 11.54.57

 

▼每一個怪味道包含了:

  • 怪味道定義
  • 怪味道對系統造成的傷害
  • 常見移除怪味道的重構方法
  • 重構方法實作練習

螢幕截圖 2016-03-18 11.56.27螢幕截圖 2016-03-18 11.56.36螢幕截圖 2016-03-18 11.56.43

 

▼重構課程需要練習的範例很多,課程提供了完整的程式碼,包含參考解答。實際練習前先解釋如何使用這個Eclipse練習專案。

螢幕截圖 2016-03-18 12.07.58

 

▼練習中…

IMG_9612_with_logo

image

 

練習範例包含測試案例,學習重構可同時學習如何撰寫單元測試。

螢幕截圖 2016-03-18 17.33.47

 

▼更新進度看板。

螢幕截圖 2016-03-18 12.15.53

***

友藏內心獨白:第一天結束進度講到Part 3,還有四大分類怪味道沒講(驚!)。

沒有留言:

張貼留言