Java拡張ライブラリ10コ|Java開発の強い見方

Javaの基本構文を理解し、ライブラリを上手く活用することは非常に重要です。今回は数あるライブラリの中から、特に活用される頻度の高いという印象のあるものを、公開サイトやモバイルサイトの開発に必要と思われるものの中から、10件紹介していきます。

Javaライブラリ1:Guava


Googleによって開発されたJavaライブラリで、現在でも主なユーザはGoogleのエンジニアですが、文字列の比較やハッシュ値生成など、基本実装では手間のかかる処理を単純な構文で作成できることから、開発者全般で広く使用されています。

Javaライブラリ2:Encache

Javaにおけるキャッシュライブラリのデファクトスタンダード。キャッシュの寿命や登録処理をわかりやすく、処理も高速に実装できるクラスが充実しています。

Javaライブラリ3:Lombok

主にアノテーション付与の活用により、コード全体を簡略化させることに優れています。特にJavaで頻繁に使用されるgetter/setterの自動生成は頻出です。

Javaライブラリ4:Quartz

cronなどを使用し、時間指定や特定の時間間隔でジョブを実行したい場合に使用できるクラスが参照できるライブラリ。

Javaライブラリ5:Joda Time


Javaで日時扱うコードを記述する場合、通常はDateやCalendarを使用しますが、実際に取得した日時取得までのプロセスはコードが煩雑になりがちです。JodaTimeでは、日付の計算や比較などの処理を簡易にしてくれるクラスが充実しています。

Javaライブラリ6:Commons FileUpload

JakartaCommonsサブプロジェクト提供のこちらのライブラリを使用することで、クライアントがアップロードするファイルの処理をしてくれるメソッドを利用することが可能です。因みにこれ以前は、POSTされたデータの解析、ファイル名やデータの取り出しと、煩雑な処理をそれぞれ書く必要がありました。

Javaライブラリ7:Commons Compress

JavaでのZIPファイル圧縮は案外、複数のクラスを呼び出しながらの処理が多いため、複雑な記述になったり、日本語ファイルの文字化けなどの問題がありましたが、これらの問題をシンプルに圧縮、解答の二つのメソッドで表現してくれるのが、こちらのライブラリです。

Javaライブラリ8:ZXing

Googleにて作成、公開されているバーコードのエンコード、デコードができるライブラリ。1次元、2次元併せて15以上の形式に対応しています。

Javaライブラリ9:Twitter4J

twitterのツイートプログラムが作成できるライブラリで、約20行ほどのコードで機能が実装できるため、自分用のアプリとしても広く利用されています。

Javaライブラリ10:Commons Lang

java.langを補填するライブラリ。Stringの例外処理や固定長文字の作成が非常にシンプルになり、且つコードが短く済むことから、非常に多くの開発者に利用されています。

終わりに

如何でしたでしょうか。

拡張機能もありますが、標準ライブラリの問題を解消し、シンプルなコードと高速処理を実現してくれるクラスが多いのは、開発/保守両面で非常に助かることですよね。

Javaは世界シェアの非常に高い言語であるため、ベテランプログラマの中には標準ライブラリで殆どの実装が出来てしまう方もいるでしょう。ただ、様々なレベルのメンバーが混在するプロジェクトであるほど、重要性が増してくるライブラリの数々。後進者や、成果物のセキュリティのためにも、便利なので是非、積極的に活用してみてください。