Java Code Style

近期困惑於團隊成員代碼風格迥異,代碼質量不可控,做爲一名老司機,憂患於後期服務的可維護性,屢次一對一的代碼Review,耗時耗力不說,效果也不明顯。痛定思痛,屢次反思以後得出結論:無規矩不成方圓,可靠的服務必須創建在統一的代碼風格基礎之上,僅僅提倡是遠遠不夠的,必須使用有效的可執行機制,確保最終效果。
 
這裏的可執行機制包含如下幾個方面:
 
(1)有統一的代碼風格約束要求;
(2)IDE輔助檢查代碼風格約束是否知足,實時檢測提醒;
(3)構建項目過程強制檢查代碼風格約束是否知足,如不知足,終止構建;
 
本篇簡要記錄以「Google Java Code Style」做爲代碼風格約束的實踐。
 
1.Google Code Style Guide
 
 
2.IDEA配置CheckStyle-IDEA Plugin
 
(1)安裝CheckStyle-IDEA Plugin;
 
IntelliJ IDEA --> Preferences... --> Plugins
 
 
 
(2)配置CheckStyle-IDEA Plugin使用「Google Java Code Style」;
 
IntelliJ IDEA --> Preferences... --> Other Settings --> Checkstyle
 
 
這一步配置完成以後,IDEA會實時檢測代碼風格是否知足「Google Java Code Style」,如不知足會有異常提醒。
 
3.IDEA配置Google Style
 
IntelliJ IDEA --> Preferences... --> Editor -> Code Style --> Java --> Import Scheme --> CheckStyle Configuration
 
 
 

 

 

 

這一步配置完成以後,格式化代碼時會使用「Google Java Code Style」的樣式進行格式化處理,如:代碼縮進。
 
4.Maven配置checkstyle Plugin
 
在Project或Moudle pom.xml中進行以下配置便可:
 
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <version>3.0.0</version>
            <dependencies>
                <dependency>
                    <groupId>com.puppycrawl.tools</groupId>
                    <artifactId>checkstyle</artifactId>
                    <version>8.8</version>
                </dependency>
            </dependencies>
            <executions>
                <execution>
                    <id>validate</id>
                    <phase>validate</phase>
                    <configuration>
                        <configLocation>google_checks.xml</configLocation>
                        <encoding>UTF-8</encoding>
                        <consoleOutput>true</consoleOutput>
                        <failsOnError>true</failsOnError>
                        <violationSeverity>warning</violationSeverity>
                    </configuration>
                    <goals>
                        <goal>check</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build> 
 
這一步配置完成以後,項目構建過程(如: mvn clean package)會檢測代碼風格是否知足「Google Java Code Style」,如不知足會終止構建過程。
 
5.Default file template
 
 
 
/**
* @author ${USER}
*/
 
這一步配置完成以後,用於統一JavaDoc風格。
 
6.IDEA配置google-java-format Plugin
 
安裝過程與2相似,僅插件名稱不一樣。 
 
注意:二、三、4步驟中的Checkstyle Version要保持統一。
相關文章
相關標籤/搜索