Feb. 21 23:12~23:45
2/21號晚上第六次C. C. Agile每月聚會由Teddy分享:「搞懂Java例外處理的難題:Checked與Unchecked Exceptions不再是問題」。這次聚會場地換到位於台大附近的靈感咖啡,整個場地的氣氛還不錯,位置也還算寬敞。
一開場先提一個問題:有沒有人覺得自己寫的程式很穩定的?結果現場的朋友都很客氣的不舉…手。
系統不穩定會造成公司獲利下降的問題。而導致系統不穩定的原因有兩個,系統正確性不足與系統強健度不足。
增加軟體可靠度的方法可由contract specification與exception handling這兩方面著手。
Java語言原本希望藉由checked exception來提升程式開發人員對於例外處理的重視。
Java語言設計者希望用checked exception來代表「可修復的錯誤狀況」,用unchecked exception代表「不可修復的錯誤狀況(programming error,白話文叫做bug)」,。
Checked exception之所以叫做checked exception(受檢的例外或是被檢查的例外),指的是Java Compiler會幫鄉民們檢查checked exception的使用使否有符合所謂的handle-or-declare rule(捕捉或宣告原則)。違反此原則的程式Java Compiler將視為語法錯誤。
Checked exception所引發的幾個問題。
最後導致鄉民們內心怒吼:我不會處理Exception怎麼辦啊?
所以光是知道exception type是不足以設計例外處理程式,需要同時考量下列五個因素。
結尾做幾個簡單的思考練習,幫助大家把今天分享的內容串起來。
最後打個廣告,Teddy今年會開例外處理設計與重構的課程。
***
今天分享的投影片內容Teddy放在「搞笑談軟工Facebook社團」當中,有需要的鄉民請自行下載。
***
友藏內心獨白:這一週的生活也太札實了一點吧,難道這是過年太爽的報應嗎。
沒有留言:
張貼留言