這世界上,大部分軟體開發「大師」都只教你如何設計「軟體的光明面」,
卻很少人願意告訴你如何解決「軟體的黑暗面」。
但很遺憾的,軟體的異常狀態(黑暗面)不會比正常狀態(光明面)少,
是你該把「例外處理」當成一回事兒的時候了。
俗話說──夜路走多了,總是會碰到鬼。
本書累積了作者眾多「碰到鬼」的經驗,從例外處理設計出發,探討軟體設計黑暗面的種種面向。透過妥善的例外處理,協助讀者開發出高品質軟體!
《搞笑談軟工》版主的法定專長、必讀的軟體工程實務作法。讓你從頭到尾搞清楚──
●「缺陷」(fault)、「錯誤」(error)、「失效」(failure)、「例外」(exception)的差別
●區分是設計缺陷(design fault)還是元件缺陷(component fault)
●例外處理(exception handling)與容錯設計(fault-tolerant programming)的差別
●跳脫語法層次,你還要知道try-catch-finally各負擔什麼責任
●如何在敏捷方法(agile method)中,安排例外處理設計活動,以逐步成長的模式來加強軟體系統的強健度
●例外處理設計的決策有哪些脈絡(context)可參考
●例外處理為什麼這麼難?請看例外處理的4+1觀點
●判斷一個程式是否存在例外處理壞味道(exception handling bad smell)
●移除例外處理壞味道的軟體重構方法(exception handling refactoring)
●在資料庫裡找不到資料時,要傳回null還是丟出exception
●萬一例外處理程式執行失敗,接下來要做什麼
●如何花小錢,卻可大幅提升軟體強健度與客戶滿意度
最重要的是完全參透例外處理背後的設計原理,開發出高強健度的軟體。讓客戶滿意、老闆收得到錢、你準時下班回家護肝。