- Taipei, Taiwan
-
《阿里Java開發手冊》 | MySQL 資料庫 - 索引規約
【強制】 業務上具有唯一特性的欄位,即使是組合欄位,也必須建成唯一索引。 說明: 不要以為唯一索引影響了 insert 速度,這個速度損耗可以忽略,但提高查找速度是明顯的;另外,即使在應用層做了非常完善的校驗控制,只要沒有唯一索引,根據墨菲定律,必然有髒資料產生。 【強制...
-
《阿里Java開發手冊》 | MySQL 資料庫 - 建表規約
【強制】 表達是與否概念的欄位,必須使用 is_xxx 的方式命名,資料類型是 unsigned tinyint (1 表示是,0 表示否)。 說明: 任何欄位如果為非負數,必須是 unsigned。 注意:POJO類中的任何布林類型的變數,都不要加 is 前綴,所以,需要在 設置...
-
《阿里Java開發手冊》 | 安全規約
【強制】 隸屬於用戶個人的頁面或者功能必須進行權限控制校驗。 說明: 防止沒有做水平權限校驗就可隨意訪問、修改、刪除別人的資料,比如查看他人的私信內容。 【強制】 用戶敏感資料禁止直接展示,必須對展示資料進行脫敏。 說明: 中國大陸個人手機號碼顯示為:137****...
-
《阿里Java開發手冊》 | 單元測試
【強制】 好的單元測試必須遵守 AIR 原則。 說明: 單元測試在線上運行時,感覺像空氣(AIR)一樣並不存在,但在測試質量的保障上,卻是非常關鍵的。好的單元測試宏觀上來說,具有自動化、獨立性、可重複執行的特點。 A:Automatic(自動化) I:Independent...
-
《阿里Java開發手冊》 | 異常日誌 - 日誌規約
【強制】 應用中不可直接使用日誌系統(Log4j、Logback)中的 API ,而應依賴使用日誌框架(SLF4J、JCL–Jakarta Commons Logging)中的 API ,使用門面模式的日誌框架,有利於維護和各個類的日誌處理方式統一。 說明: 日誌框架(SLF4J、JC...
-
《阿里Java開發手冊》 | 異常日誌 - 異常處理
【強制】 Java 類庫中定義的可以通過預檢查方式規避的 RuntimeException 異常不應該通過 catch 的方式來處理,比如:NullPointerException,IndexOutOfBoundsException 等等。 說明: 無法通過預檢查的異常除外,比如,在解...
-
《阿里Java開發手冊》 | 異常日誌 - 錯誤碼
【強制】 錯誤碼的製定原則:快速溯源、簡單易記、溝通標準化。 說明: 錯誤碼想得過於完美和復雜,就像康熙字典中的生僻字一樣,用詞似乎精準,但是字典不容易隨身攜帶並且簡單易懂。 正例: 錯誤碼回答的問題是誰的錯?錯在哪? 錯誤碼必須能夠快速知曉錯誤來源,可快速判斷是誰的問題。...
-
《阿里Java開發手冊》 | 編程規約 - 其他
【強制】 在使用正則表達式時,利用好其預編譯功能,可以有效加快正則匹配速度。 說明: 不要在方法體內定義:Pattern pattern = Pattern.compile(“規則”); 【強制】 避免用 ApacheBeanutils 進行屬性的 copy。 說明...
-
《阿里Java開發手冊》 | 編程規約 - 註解規約
【強制】 類、類屬性、類方法的註解必須使用 Javadoc 規範,使用/**內容*/格式,不得使用 // xxx 方式。 說明: 在 IDE 編輯窗口中,Javadoc 方式會提示相關註解,生成 Javadoc 可以正確輸出相應註解;在 IDE 中,工程調用方法時,不進入方法即可懸浮提...
-
《阿里Java開發手冊》 | 編程規約 - 控制語句
【強制】 在一個 switch 塊內,每個 case 要麼通過 continue/break/return 等來終止,要麼註解說明程序將繼續執行到哪一個 case 為止;在一個 switch 塊內,都必須包含一個 default 語句並且放在最後,即使它什麼程式碼也沒有。 說明: 注意...