14:00Javaは言語仕様上の制約により、ボイラープレートコード(自明だが省略できないお決まりのコード断片)がいくつかあります。メンバ変数を読み書きするだけのgetterメソッドやsetterメソッドがこれにあたります。Lombokを使えば、これらJava特有の冗長なコードを、見やすく簡潔なものにすることができます。本記事ではLombokを利用して、ボイラープレートコードをシンプルに記述する方法について解説します。目次Page1はじめにLombokとはインストールアクセスメソッドPage2@Data@Value@Getter@SetterPage3コンストラクタ@AllArgsConstructor@RequiredArgsConstructor@NoArgsConstructorオブジェクトメソッド@EqualsAndHashCodePage4@ToString自明な型宣言val例外@SneakyThrowsPage5委譲@Delegate同期化@Synchronizedまとめはじめに今やJava開発に必要不可欠となったものの一つに、IDEの存在があります。Eclipseではメンバ変数さえ定義すれば、getter/setterの自動生成や、equalsメソッドやhashCodeメソッド、toStringメソッドなどの自動生成などさまざまな場面でコーディングを強力にサポートしてくれます。これは大変便利な機能ですが、裏を返せばJavaの言語仕様はボイラープレートコード(決まりきったコード)が豊富に存在することを意味します。本質的なロジック以外の冗長なコードが多いということであり、決して読みやすいコードとは言えません。その後のメンテナンスも考えれば、IDEの自動生成がボイラープレートコードに対する完全な解決策とはなっていないことは確かです。LombokとはLombokはMITライセンスで作られた、Java特有のボイラープレートコードを解消するためのライブラリです。LombokではEclipseのような自動生成ではなく、アノテーションを付与することによりボイラープレートコードを実装したのと同じ効果を得ることができます。インストールLombokを使った開発は、Javacによる直接コンパイルはもちろんのこと、EclipseやNetBeansなどの開発環境に対応しています。今回はEclipseを利用した開発を説明致します。LombokのサイトよりLombok.jarをダウンロードします(2013年8月現在、最新版は0.12.0です)。Lombok.jarをダブルクリックし、インストーラを起動します。Lombokインストーラーお使いのIDEチェックし、Install/Updateボタンを押下します。Eclipseを起動し、Lombokを使いたいプロジェクト選択します。プロジェクトの参照ライブラリにLombok.jarを追加します。ビルドパスへの追加アクセスメソッドまずは、2つのメンバ変数をもつ会員クラスを例に挙げます。Lombokを利用しない通常のJavaの場合、2つのメンバ変数、idとnameに対する、他のクラスからアクセスためのgetterメソッドやsetterメソッドが必要になるため、下記のようにコードが肥大化しているのが分かります。けシステム開発のアーキテクト担当しています。ウォーターフォール型の開発に、CIなどアジャイル開発のプラクティスを取り入れ、開発プロセスの改善を試みています。圧縮・解凍UNIX基本講座@CodeZine『CodeZine(コードジン)』の公式アカウントです。【NEW】デブスト2019デブサミ2019福岡・関西デブサミ2019夏デブスト関西デブサミ2019×ログインEメールパスワード※旧SEメンバーシップ会員の方は、同じ登録情報(Eメール&パスワード)でログインいただけます。イラストの無断転載を禁じます。記載されているロゴ、システム名、製品名は各社及び商標権者の登録商標あるいは商標です。