關於程式碼的一些思考

juestsoftware發表於2008-01-14

    這一段時間終於有空閒下來思考一點問題了.算是個人的brainstorm吧,記錄一下.

  1. 需要對函式引數進行有效性檢查, 對返回值做判斷.

    很多漏洞就是因為沒有遵循以上原則而產生的.但同時也帶來一些問題,引數的有效性檢查,到底是不是需要每個函式都做,還是隻需要在被外部呼叫的介面函式中進行?是通過assert來做還是if來判斷?個人觀點是,對外的介面需要用if來判斷,而內部的函式可以通過assert來做.

2.函式的資源一致性,特別是對於異常(出錯)情況

  比如說記憶體,如果這塊沒有把握好,就那很容易導致記憶體洩露.其實這個問題歸結下來就是資源處理的一致性可以簡化邏輯,方便程式設計,進而使得出錯的機率變小.

3. 程式碼的覆蓋

 對程式碼的覆蓋率進行測試是保證軟體質量的有效手段,但有一點一直讓我疑惑:高覆蓋率是通過對邏輯的測試獲得還是對單個函式的測試獲得?這個問題可能與對驅動開發的理解有關.

4. 測試驅動開發中的驅動開發指的是什麼?

   開發之前所寫的測試程式碼,到底要寫成什麼樣?正常情況那自然是需要的,但是否需要把異常情況也覆蓋?

 

相關文章