l

2013年9月17日 星期二

[例外處理設計與重構實作班] 第一梯次課程實錄

Sept. 16 12:04~13:07

螢幕快照 2013-09-16 下午12.24.33

 

例外處理設計與重構實作班」首發團已經在9月14日順利結束,Teddy在規劃課程的時候沒注意到當天剛好是「中秋節補班日」,謝謝學員們在補班日還來上課。相信Teddy的「法定專長」應該沒有漏氣,上課的學員們功力又更上一層樓熱戀

這個課程的內容主要是從Teddy博士論文研究範圍約1/3的部分,經過濃縮再濃縮,提煉再提煉,之後整理而成。其實這裡面也沒什麼尖端科技或是高深學問,任何一位軟體開發人員或是大四的學生應該都可以理解。主要的價值在於,Teddy將「例外處理」這個大家都知道但卻不曉得該如何妥善處理的問題,有系統的用白話文解釋加上練習,讓學員們可以融會貫通

螢幕快照 2013-09-14 下午11.01.43

 

課程內容包含以下四大部分,外加實作練習。

螢幕快照 2013-09-16 下午12.24.05

 

第一部分是例外處理的基本觀念介紹,這張投影片說明例外處理的兩個面向:

  1. 為什麼要關注例外處理:因為不良的例外處理會影響公司獲利
  2. 如何開發可靠的軟體:提高正確性與透過例外處理提升強健度。

螢幕快照 2013-09-16 下午12.26.21

 

聽了學員們的經驗分享,每個人都有很多因為不良的例外處理造成很多不愉快的軟體使用經驗,或是造成公司金錢上的損失。

螢幕快照 2013-09-16 下午12.30.37

 

接下來Teddy介紹例外處理機制(EHM)的六個特性,了解這六個特性對於學習大多數語言的例外處理都有幫助。

螢幕快照 2013-09-16 下午12.33.23

螢幕快照 2013-09-16 下午12.33.30

***

課程第二部分Teddy逐一介紹例外處理的4+1觀點:用途觀點、設計觀點、處理觀點、工具支援觀點、流程觀點。

螢幕快照 2013-09-16 下午12.35.55

 

舉一個用途觀點的例子,請問鄉民們EOFException與InterruptedException要如何處理?

螢幕快照 2013-09-16 下午12.39.37

螢幕快照 2013-09-16 下午12.41.06

 

設計觀點來判斷元件該如何設計、例外該如何處理。

螢幕快照 2013-09-16 下午12.43.52螢幕快照 2013-09-16 下午12.43.40

螢幕快照 2013-09-16 下午12.43.23

 

從流程的角度來看,在敏捷開發中要如何設計例外處理。

螢幕快照 2013-09-16 下午12.46.30

***

第三部分則是介紹例外處理的設計目標:確定軟體系統與元件的強健度等級

螢幕快照 2013-09-16 下午12.48.18

螢幕快照 2013-09-16 下午12.50.03

螢幕快照 2013-09-16 下午12.51.37

***

最後一個部分,例外處理壞味道與重構

螢幕快照 2013-09-16 下午12.52.46

螢幕快照 2013-09-16 下午12.54.43

 

看一個例外處理重構的例子。

螢幕快照 2013-09-16 下午12.56.25

***

最後,提供一些參考資料讓想課後進修的學員們參考。

螢幕快照 2013-09-16 下午12.57.35

 

螢幕快照 2013-09-14 下午11.08.33

***

下課回家之後Teddy變成幫「黃蓉」療傷之後的「段皇爺」,看來要休息一陣子「功力」,不對,應該是「體力」,才會復原啊。

友藏內心獨白:錢不好賺啊挑眉質疑

2 則留言:

  1. Teddy 大真是用心,可惜小弟這次沒跟到 ~

    回覆刪除
    回覆
    1. 下一梯次11月16日開班,報名網址在此:http://registrano.com/events/1311eh。10/10之前報名繳費有贈送特別禮物 XD。

      刪除