現代的IDE 很方便,一邊寫 code 會一邊檢查你的 code,提示你的程式碼可能需要調整。不同的 IDE 會有不同的功能,但是幾乎大部分的IDE 都會根據你使用的語言,使用預設的規則來做出相對應的提示。
像是那下面這段代碼有很多提示與警告,如果無視這些提示與警告,他們就會蔓延到整個專案都是,除了干擾閱讀代碼,更嚴重可能會忽視潛在的風險。
以 Rider 為例,如果你在Rider中用C# 寫了一個小寫開頭的 Method,會出現黃色提示,提示你這個應該以大寫開頭。如果代碼呈現灰色,表示這個無人使用或不需要,可以直接刪除。甚至拼錯字都會幫你標示出來。第10行與第16行都屬於這個情況,可以直接使用快捷鍵修正。
在12行的if判斷中
str != null && str.Length > 0
如果查看提示,會發現IDE建議使用string.IsNullOrEmpty
!string.IsNullOrEmpty(str)
在上29~34行中,foreach有虛線提示可以改用LINQ的寫法
var duplicateCount = 0;
foreach (var entry in cnt)
{
if (entry.Value > 1) duplicateCount++;
}
return duplicateCount;
透過Alt + Enter就能讓IDE自動幫你轉換成更簡潔的寫法
cnt.Count(entry => entry.Value > 1);
大多時候仔細閱讀這些提示,可以了解到什麼是更好的做法。尤其當自己是初學者的時候,這些提示都能幫助自己更好的了解這個語言的一些規範與特性。
使用IEnumerable時,會因為IEnumerable延遲執行的特性,而提示代碼可能存在重複Enumeration。
這些提示都是根據每個語言的預設,只要代碼不符合規則,IDE就會在代碼下方提示。但是有一種情況是開發團隊有自己一套規則,在這種情況下不應該放任警告與提示的存在畫面上,而是應該去調整自己的IDE設定,讓IDE不要因為這些命名規則持續地跳出警告。
保持代碼沒有任何提示與警告,沒有無謂的波浪線與虛線,能讓閱讀代碼時能更專注,也能在真正出現問題的時候,讓IDE來提示你。