1. 程式人生 > >【架構設計】【程式指標】魯棒性與健壯性的細節區別

【架構設計】【程式指標】魯棒性與健壯性的細節區別

  寫一段功能性的程式碼,可能需要一百行程式碼,但是寫一段健壯的程式,至少需要300行程式碼。例如:房貸計算器的程式碼,演算法異常簡單,十多行就完成了,但是,這段程式完全不具備健壯性,很簡單,我的輸入是不受限制的,這個程式要求從使用者介面讀取利率,年限,貸款額三個資料,一般同學的寫法很簡單,一句doubleNum = Double.parseDouble(JOptionPane.showInputDialog(null,"請輸入"+StrChars)) ;就萬事OK了。  但是,真的有這麼簡單麼,開玩笑,這麼簡單就好了,列舉以下事例  1,我輸入了負數  2,我的輸入超出了double型別所能涵蓋的範圍
  3,我輸入了標點符號  4,我輸入了中文  5,我沒輸入  6,我選擇了取消或者點了右上角的關閉  這一切都是有可能發生的事件,而且超出了你程式的處理範圍,這種事情本不該發生,但是程式使用時,一切輸入都是有可能的,怎麼辦,你只能在程式中限制輸入  作為一個程式設計師,你如何讓你的程式碼在執行的時候響應這些事件呢,我用了四十行程式碼編寫了一個方法,用來限定我的輸入只能為正實數,否則就報錯,使用者點選取消或者關閉按鈕,則返回一個特殊數值,然後在主方法增加一個迴圈,在呼叫輸入方法的時候檢查返回值,如果為特殊值,就返回上層選單或者關閉程式。