這些調試代碼只在Debug版中有效,當經過充分測試,發布Release版程序的時候,這些調試C++代碼自動失效,契約編程相當於經濟生活中簽訂的各種合同,而主動調試相當於某方不遵守合同時采取的法律懲罰措施。
1 規范易懂的代碼
現階段軟件開發,都要依靠團隊的合作。程序員不再是個人英雄主義的代名詞,程序員一方面要依賴大量其他程序員完成的代碼,一方面又提供大量代碼給其他人使用,代碼實際上具備了兩個要素:首先是可靠的提供某種功能,其次是清楚地表達作者的思想。任何交流都必須有一定的規范才能進行,體現在C++代碼中就是規范易懂。另外,規范易懂的代碼才是可重復使用的,規范的代碼具有更長的壽命,具有更好的可維護性,也更方便後期的擴展。
好代碼的幾個特征
怎麼樣的代碼才算規范易懂,體現在細節上會有無數的爭論,實際上無論風格和習慣如何,好的代碼具有幾個共同的特征:
1. 良好的命名:好的變量名和函數名,讓閱讀代碼的人馬上就知道該變量或者函數的作用,很容易就能理解程序的大概結構和功能。程序員有必要理解匈牙利命名法。
2. 一致性:一致性帶來更好的程序,一致的代碼縮進風格能夠顯示出代碼的結構,采用何種縮進風格並不重要,實際上,特定的C++代碼風格遠沒有一致的使用它們重要。
3. 注釋:注釋是幫助程序讀者的一種手段,程序作者也是未來的程序讀者之一。最好的注釋是簡潔地點明程序的突出特征,或是提供一種概觀,幫助別人理解程序;但如果注釋只是說明代碼已經講明的事情,或者與代碼矛盾,或者以精心編排的形式迷惑干擾讀者,那就是幫了倒忙。
養成好習慣
前面已經提過,特定的代碼風格遠沒有一致的使用他們重要,所以,把過多的精力放到A or B的選擇上是浪費時間,你要做的是堅持。如何書寫規范易懂的代碼,如何養成良好的習慣,下面是一些提示。
1. 按照匈牙利命名法給變量和函數命名。
2. 遵循國際流行的代碼風格。
3. 寫代碼的同時就遵循你的命名規范和書寫風格,千萬不能事後補救。
4. 利用工具Parasoft C++ Test)檢查你的代碼,評估一下自己形成良好的習慣沒有。
5. 堅持不懈直到養成習慣。
2 編寫安全可靠的C++代碼
在大型應用軟件系統中,各個代碼片段共同構成完整的系統,代碼間的交互非常頻繁,程序崩潰往往並不在錯誤發生的時候就發生,而是延遲了一段時間,經過數個函數之間的中轉後才發生,此時定位和查找錯誤非常費時費力,如何才能及時反映程序中的錯誤,如何在代碼中避免一些幼稚的語義錯誤呢?一個函數往往會被其他程序員拿來使用,但是他怎麼能夠正確的使用其他人編寫的函數呢?這部分內容能夠部分)幫助解決這些問題。