「Java の冗長性を排除する手軽な方法」で紹介されていたlombokというライブラリが便利そうだったので、NetBeansで試してみた。
一言で言うと、lombokはJavaBeanのsetterやgetterを省略可能にして記述量を減らしてくれるライブラリ。JavaBeansのメソッドはIDEで機械的に生成できるけど、このくらいの単純な仕様にして欲しかった。
ふつうのライブラリとちょっと違うのは、IDEのコンパイラがアノテーションを処理できるようにインストールが必要なこと。javacで扱う分にはjarがクラスパスに入ってればいいらしいけど。
lombokのインストール手順
- Project Lombokをブラウザで開く
- lombok.jarをダウンロードする
- lombpk.jarを実行する(lombokのインストーラが起動する)
- WindowsでJREがインストールされている場合はjarをダブルクリックでOK
- コマンドプロンプトから起動する場合は、「java -jar lombok.jar」 と入力する
- lombokのインストーラが起動し、インストールされているIDEを検索する
- lombokをインストールしたいIDEにチェックを入れる。
- インストールが終わると次のようなダイアログが表示される
- NetBeansを再起動して、IDEでlombokのアノテーションが処理されてsetterやgetterが生成されているのを確認すればインストール完了。
Mavenで使う場合
Use Lombok via Mavenに従えばよい。
実用上の懸念
たいして使い込んでないけど、実際に業務などで使う場合の懸念点を思いつきであげてみた。
- シリアライズ/デシリアライズが気になる。
- 複雑な構造の場合はどうか?
- ソースコードをベースに処理を行うツールと一緒に使う場合、delombok処理をしなければいけない。
- GWT(Google Web Toolkit)やjavadocなど
- delombok処理では、lombokのアノテーションをプリプロセスし、lombok適用後のソースコードを生成する。