統一的命名規範是團隊協作代碼可讀性的基石。本文依據業界主流風格(Google Java Style、Alibaba Java 開發手冊),系統整理包、類、接口、方法、變量、常量的命名規則,並深度解析駝峰法在縮寫、單詞邊界上的細節處理。
getUserName、maxRetryCount。UserService、HttpClient。MAX_CONNECTION_COUNT。<域名反轉>.<團隊/組織>.<項目>[.<子模塊>]com.cnblogs.niceboat.soyteam.anticorruptionsystemAbstract:AbstractUserRepository。Exception:BusinessException。Test:UserServiceTest。接口名 + Impl(推薦),如 UserService → UserServiceImpl。禁用匈牙利法(IUserService → UserService)。getXxx(boolean 類型用 isXxx/hasXxx/canXxx)。setXxx。length()、size()。toXxx(如 toString()、toJson())。createXxx、buildXxx、of()(靜態工廠)。userList、idSet、userMap。is/has/can 前綴:isEnabled、hasPermission。UPPER_SNAKE_CASE,語義完整:DEFAULT_PAGE_SIZE、MAX_RETRY_TIMES。最容易產生分歧的場景,參考下表統一標準:
| 原始詞組 | 小駝峰 | 大駝峰 | 不推薦 |
|---|---|---|---|
| XML HTTP request | xmlHttpRequest | XmlHttpRequest | XMLHTTPRequest |
| new customer ID | newCustomerId | NewCustomerId | newCustomerID |
| inner stopwatch | innerStopwatch | InnerStopwatch | innerStopWatch |
| support IPv6 on iOS | supportIpv6OnIos | SupportIpv6OnIos | supportIPv6OniOS |
| Anglo-Saxon England | angloSaxonEngland | AngloSaxonEngland | Anglo-SaxonEngland |
XmlHttp 而非 XMLHTTP)。Settings → Editor → Code Style → Java)。好的命名是最好的文檔。堅持語義清晰、風格統一、避免歧義三原則,配合自動化工具強制執行,能顯著降低認知負荷,提升團隊協作效率。從今天開始,拒絕 temp、data、obj、UserServiceImpl2 這類無意義命名!