專案中的程式碼不規範問題整理(基於阿里規範的外掛)
專案中成員能力不一,開發質量良莠不齊,一個良好的開發規範和約束可以極大的提高專案的穩定性。
之前專案都是快速迭代,根本沒有時間review,都是滿足功能為主,年前,列舉中專案中存在的問題,制定了一下程式碼規範問題。
一、必須修復問題:
1. 很多地方沒有加大括號
2. 使用正則的時候,可以採用預編譯模式
3. 覆蓋方法沒有@Override註解
4. 靜態方法引用
錯誤寫法:
正確寫法:
5. 包裝類的比較應該用equals不能用==,數值範圍超過-127-128,會出現值相同,判斷為false的情況
6. 獲取時間應該用System.currentTimeMillis(),不應該用new Date().getTime();
7. BeanUtils.copyProperty()採用spring的方法,不要使用apache包下的方法
二、建議修復問題:
1. Map和set定義為物件的屬性時
2. equals比較常量在前,變數在後
3. 不應該使用過時的方法
4. switch要加上default值和break
5. 命名規範,實現類用Impl結尾
6. 常量的命名不規範
7. 異常類以Exception結尾
8. Threadlocal物件的回收
9. 列舉欄位必須要有註釋
10. 抽象類的命名
11.方法名、引數名、成員變數、區域性變數統一採用駝峰命名
12. 不要在程式碼中顯式的呼叫執行緒
三、警告問題:
1. POJO重寫toString,如果包含了繼承,記得加上super.toString()
2. 程式碼塊中出現魔法值
3. 陣列的定義
錯誤的定義
4. 事物的回滾需要手動指定異常
5. 包名統一小寫
6. 註釋掉的程式碼及時清理
7. 字串的拼接
8. 所有的抽象方法要有完整的javadoc註釋
9. 所有的類必須加上@auther
10. 單行註釋和多行註釋
11. Math.Random不要試圖用來取整數
12. 類和類方法註釋
13. 類名的命名規範
14. 返回包裝物件,接收的是基本型別
15. 不要在if裡面採用複雜的邏輯,最好賦值給一個變數,增加可讀性
16. 初始化集合時,最好指定集合大小