1. 効率的なJava静的チェック

コードの品質と保守性を高めるために次の3つを実践する。

上記を行うために、NablarchではJetBrains社製のIDEである IntelliJ IDEA(外部サイト) の使用を推奨している。 本ページでは、IntelliJ IDEAを用いた効率的なJava静的チェックの方法を説明する。

1.1. 構文チェックを行う

構文のチェックには、IntelliJ IDEAの静的検査機能(Inspection)を使用する。 Inspectionは、Javaコーディングの慣例に沿っているか、潜在的なバグが含まれていないかなどをチェックし、リアルタイムに警告する機能である。

Nablarch開発に使用したInspectionの設定ファイルをプロジェクト向けに提供している。 以下のファイルをダウンロードし PROJECT_ROOT/.idea/inspectionProfiles 配下に配置することでInspectionの設定が適用される。

設定ファイル

重要

開発者間で同一の構文チェックが行われるようにするため、Inspectionの設定ファイルはVCSの管理対象とすること。

重要

Inspectionの設定内容は、警告された箇所から参照可能で、IDE上で効率よく確認できる。そのため、チェック内容の一覧など、別資料を作らないこと。

ちなみに

InspectionはPJで必要に応じてカスタマイズすることができる。 カスタマイズした設定は PROJECT_ROOT/.idea/inspectionProfiles 配下の設定ファイルに反映される。

1.1.1. IDEでチェックする

IntelliJ IDEAのInspectionはデフォルトで設定が有効になっており、コードを書いた際にリアルタイムに実行される。 詳細は、IntelliJの マニュアル を参照。

1.1.2. CIでチェックする

IntelliJ IDEAのInspectionは、CI(Jenkins)サーバでも実行することができる。 設定方法は こちら(外部サイト) を参照。

1.2. フォーマットを統一する

フォーマットを統一するためには、IntelliJ IDEAのデフォルトのCode Styleを使用してフォーマットを行う。 詳細は、IntelliJの マニュアル を参照。

重要

Code Styleの設定内容は、IDE上で効率よく確認できる。そのため、コーディング規約など、別資料を作らないこと。

1.2.1. コミット前に自動でフォーマットを統一する

IntelliJ IDEAでは、VCSへのコミット時にコミット対象のファイルに対してフォーマット処理を行う機能を有している。 これを有効活用することで、確実にCode Styleに従ったコードをコミットできる。

1.3. 許可していないAPIが使用されていないかチェックする

このチェックには、 nablarch-intellij-plugin を使用する。 nablarch-intellij-pluginはNablarch開発を支援するためのIntelliJ IDEA用のプラグインであり、下記の機能を有している。

  • Nablarch非公開APIが使用されている場合に警告を出す
  • ブラックリストに登録したJava APIが使用されている場合に警告を出す