防禦性編程

出自維基百科,自由嘅百科全書
跳去導覽 跳去搵嘢

防禦性編程defensive programming)係一種編程上嘅技巧,指喺寫個程式源碼嗰陣要一路諗埋「最壞情況可能會係點」-一個程式實會攞一啲數據輸入,而出錯好多時都係因為啲輸入唔啱而起嘅,採取防禦性編程嘅編程員會諗吓「如果個輸入唔啱樣,點樣先可以避免出錯」;舉個簡單例子說明,想像以下嘅短程式,編寫嚟做加法嘅,個程式會攞兩個輸入整數 ab,並且將兩個數加埋得出嘅數俾嚟做輸出,個編程員有考慮到「如果 ab 唔係一個有效嘅數值」嘅情況,所以就寫段碼,教部電腦喺呢種情況下要點做[1]

function add(a, b) { // add 呢個子程序,攞 a 同 b 做輸入...
  if (a is not a valid number) { 如果 a 唔係一個有效嘅數值...
    throw new Error('invalid first number to add ' + a); // ... 就出段字
  }
  if (b is not a valid number) { 如果 b 唔係一個有效嘅數值...
    throw new Error('invalid second number to add ' + b); // ... 就出段字
  }
  return a + b; // 俾 a + b 嘅結果做輸出。 
}

[編輯]