我總結了寫出高質量代碼的12條建議
theme: cyanosis
前言
工作這麼多年,見過許許多多的代碼,有的寫的好,有的寫的很糟糕。好的代碼不外乎要做到你的代碼可閲讀、可維護、可擴展。説難不難,説簡單也不簡單,那麼本文我將總結工作這麼多年該如何寫出整潔代碼的一些實踐。
歡迎關注個人公眾號【JAVA旭陽】交流學習
1.使用清晰且有意義的命名
乾淨代碼最重要的原則之一是使用清晰且有意義的命名。這使其他開發人員可以輕鬆理解您的代碼在做什麼,並減少出現錯誤的可能性。例如,不使用名為“d”的變量來表示距離,而是使用名為“distance”的變量。
``` // Bad int d = getDistance();
// Good int distance = getDistance(); ```
2.使用合適的數據類型或者數據結構
乾淨代碼的另一個重要原則是使用適當的數據類型, 這可確保您的代碼能夠正常工作並減少出現錯誤的可能性。例如,不使用字符串來表示年齡,而是使用整數。
``` // Bad String age = "25";
// Good int age = 25; ```
3.保持方法簡短且重點突出
乾淨的代碼還與保持方法簡短和重點突出有關,一個方法應該只做一件事並且應該易於理解,這使得測試和維護代碼變得更加容易。例如,與其將處理訂單的所有代碼放在一個方法中,不如將其分解為更小的方法來進行驗證、計算和保存。
``` // Bad public void processOrder(Order order) { // lots of code }
// Good
public void processOrder(Order order) {
validateOrder(order);
calculateTotal(order);
saveOrder(order);
}
```
4.撰寫清晰且有意義的註釋
乾淨代碼的另一個重要原則是編寫清晰且有意義的註釋。註釋應該解釋這段代碼做的事情的原因,而不是它是如何做的。這使其他開發人員更容易理解您的代碼。
``` // Bad, 只説明是遞增 // increments count count++;
// Good,説明業務需要每次加1 // Increment the count by 1 count++; ```
5.使用空格和縮進提高可讀性
乾淨的代碼還意味着使其易於閲讀,使用空格和縮進來提高代碼的可讀性。這使其他開發人員更容易理解您的代碼在做什麼。
``` // Bad if(a==b){c=d;}
// Good if (a == b) { c = d; } ```
6.以正確的方式使用異常處理
乾淨的代碼要求 以正確的方式處理異常。您應該只捕獲您可以處理的異常,並以特定的方式處理它們,避免包羅萬象的異常處理程序。
``` // Bad try { // some code } catch (Exception e) { // handle exception }
// Good try { // some code } catch (IllegalArgumentException e) { // handle specific exception } catch (Exception e) { // handle general exception } ```
7.使用封裝來隱藏實現細節
封裝是一種有助於隱藏類的實現細節並使其更加靈活和可擴展的技術。通過使用封裝,您可以更改類的實現而不影響其餘代碼。
``` // Bad public class BankAccount { public double balance; // other methods }
// Good public class BankAccount { private double balance; // other methods } ```
8.使用繼承和多態來編寫可重用的代碼
繼承和多態性是面向對象編程的強大功能,可讓您編寫可重用的代碼。通過使用繼承,您可以創建一個包含公共代碼的基類,然後創建繼承該代碼的子類。通過使用多態性,您可以編寫以通用方式處理不同類對象的代碼。
``` // Bad public class Square { // code specific to squares }
public class Circle { // code specific to circles }
// Good public class Shape { // common code for all shapes }
public class Square extends Shape { // code specific to squares }
public class Circle extends Shape { // code specific to circles } ```
9.使用設計模式解決常見問題
通過使用設計模式,您可以編寫易於理解、維護和擴展的代碼。例如,策略模式是一種設計模式,可讓您編寫靈活且易於擴展的代碼。
``` // Bad public class OrderProcessor { public void processOrder(Order order) { // lots of code } }
// Good public class OrderProcessor { public void processOrder(Order order) { OrderStrategy strategy = new OrderStrategy(order); strategy.process(); } } ```
10.使用單元測試確保代碼按預期工作
乾淨的代碼也與測試有關。通過編寫單元測試,您可以確保您的代碼按預期工作並且易於維護。單元測試是測試單個代碼單元的自動化測試。
public class BankAccountTest {
@Test
public void testDeposit() {
BankAccount account = new BankAccount();
account.deposit(100);
assertEquals(100, account.getBalance());
}
}
11.使用代碼審查來提高代碼質量
乾淨的代碼也與協作有關。通過使用代碼審查、結對編程和指導,您可以提高代碼質量並使其更易於理解和維護。
12.使用工具來提高代碼質量
開發工具安裝 checkstyle
這樣的代碼格式化工具來檢查代碼,同樣,sonarQube
也可以幫助檢查代碼中的問題。
總結
總而言之,代碼不是寫給自己看的,而是寫給別人看的。你得想辦法讓你的代碼能讓別人容易看的懂、容易維護、能夠很好的擴展,那麼你才是一個合格的程序員,本文介紹了一些最佳實踐和示例,希望對你有幫助。
歡迎關注個人公眾號【JAVA旭陽】交流學習
- Java7到Java17, Switch語句進化史
- 樂觀鎖思想在JAVA中的實現——CAS
- 一步步帶你設計MySQL索引數據結構
- 我總結了寫出高質量代碼的12條建議
- 工作這麼多年,我總結的數據傳輸對象 (DTO) 的最佳實踐
- Spring項目中用了這種解耦模式,經理對我刮目相看
- 大數據HDFS憑啥能存下百億數據?
- 5個接口性能提升的通用技巧
- 你的哪些SQL慢?看看MySQL慢查詢日誌吧
- 90%的Java開發人員都會犯的5個錯誤
- 喪心病狂,竟有Thread.sleep(0)這種寫法?
- 為什麼更推薦使用組合而非繼承關係?
- 一個30歲程序員的覺醒和進擊
- 推薦8個提高工作效率的IntelliJ插件
- 公司的這種打包啟動方式,我簡直驚呆了
- 告別醜陋判空,一個Optional類搞定
- 你不知道的Map家族中的那些冷門容器
- SpringBoot 2.x整合Log4j2日誌
- SpringBoot應用自定義logback日誌
- 你確定懂了Java中的序列化機制嗎