[英]C++: cleaning up code
幾個月前,我將重新開始處理我暫停的項目。
整體設計並沒有那么糟糕,不需要從頭開始重寫,但是有很多我不喜歡的東西,這主要是因為我匆匆寫了它(到處都沒有評論和魔術數字.. 。)因為我使用C ++工具的方式在同時改變了(我說改進了)(我傾向於使用更多的引用,智能指針,STL,boost,......)。
我認為這是清理代碼的最佳時機:這樣做有助於我再次進入它。
我有兩個關於清理它的問題:
要改進一段匆忙編寫的代碼,需要解決哪些問題?
像移除幻數,添加注釋,將太大的功能划分為較小的功能以及用更智能的對象替換原始指針/數組等...
有沒有工具可以幫助我發現這些(和其他)臟件?
CPD,復制粘貼檢測器: http : //pmd.sourceforge.net/cpd.html
我用它來查找重復的代碼,所以我可以清理它。 這有助於遵循DRY原則 - 不要重復自己。
我建議將魔術數字修改為你的第一步。 修復它們應該使您在重復代碼的位置或者函數可能適合的位置更加明顯。
這取決於您使用的IDE。 一些VS SKU提供了很好的工具,如Style和FxCop。 Eclipse和Idea也有類似的插件。
你所說的一切聽起來都不是那么糟糕。
嘗試為您的代碼編寫單元測試,然后您將看到它有多糟糕。 如果接近100%的覆蓋率,您的代碼就會非常好。 我會開始擔心它是否低於50-60%,如果很難添加新的東西。
為此,您需要一個工具來測量單元測試所涵蓋的代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.