2016-01-11 73 views
1

我想知道是否遵循了Resharper的所有標準和規則......它能幫助​​我提高代碼的性能嗎?Resharper是否有助於系統性能?

我不是在談論如果我會更快的編碼。我正在討論在應用所有Resharper建議後運行的代碼是否會比我的原始代碼更快。

是否有任何種類的應用程序可以在分析代碼後檢測性能問題?

+0

Resharper將推薦編碼準則,以期望以更高的一致性產生更簡潔的代碼。由於編譯器優化可能已經發生,因此不能保證代碼執行得更好。 –

+1

使用JetBrains等其他工具(如dotTrace和dotMemory)突出顯示性能熱點。 –

+0

謝謝您的意見! – Plata

回答

7

Resharper的一些建議將幫助您注意到潛在成本高的性能影響錯誤。例如,如果您多次遍歷IEnumerable<>,則Resharper會提醒您,如果您在每次列舉數據庫時都需要往返數據庫,則最終可能會嚴重影響性能。

但是,這不是Resharper的目的。我永遠不會依賴Resharper來幫助你捕捉性能問題,甚至假定Resharper的建議從不損害性能。

事實上,我永遠不會相信任何只分析代碼的工具的性能相關建議。這些工具不知道你的日常數據會是什麼樣子。在保證程序正確的同時保證提高性能的任何可自動檢測的更改可以由編譯器輕鬆完成,而不會影響代碼的可讀性。

性能是一個棘手的野獸,你需要一個健康的常識,負載測試和分析指標組合來幫助你知道什麼會有幫助,什麼會受到傷害,什麼是無關緊要的。根據我的經驗,我們關於如何編寫代碼的99%決策屬於後一類,所以最好專注於性能,與Resharper幫助您的日常清理代碼決策分開。

+0

謝謝您的意見! – Plata