我總結了寫出高質量程式碼的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中的序列化機制嗎