有經驗的工程師是怎樣看待錯誤處理的?

本文最初發佈於 Daniel Näslund的個人博客,經原作者授權由InfoQ中文站翻譯並分享。

程序員忽略bug導致錯誤發生與那些代表真實錯誤情況的錯誤,這兩者是有區別的。錯誤檢查的粒度也存在爭議:每個函數?每個模塊?在主消息循環中跳轉到對話處理程序?殺死進程並重啓?

本文主要內容如下:

  • Midori錯誤模型
  • Erlang的方法:任其崩潰
  • 異常分類
  • 編寫錯誤代碼
  • 錯誤處理粒度
  • 總結

Midori錯誤模型

在《The Error Model》一文中,Joe Duffy描述了在Midori中設計錯誤處理的考慮因素。他強調,設計遵循以下原則:

可用性——面對錯誤,尤其是偶然發生的錯誤,開發人員必須很容易就能做“正確的”事情。我的一個朋友和同事將之稱爲掌握了“成功之核(The Pit of Success)”。模型不應該爲了編寫合乎習慣的代碼而強加過多的繁文縟節。在理想情況下,我們要使用目標受衆在認知上很熟悉的模型。

可靠性 ——錯誤模型(The Error Model)是整個系統可靠性的基礎。畢竟,我們是在構建操作型系統,所以可靠性是最重要的。你甚至可能會指責我們過分追求極致的可靠。“構造正確性”是我們大部分編程模型開發恪守的箴言。

原文鏈接:【https://www.infoq.cn/article/9oeMLSj4zMCR4Xg3KFvh】。未經作者許可,禁止轉載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章