インターネットデパート - 取扱い商品数1000万点以上の通販サイト。送料無料商品も多数あります。

Jakarta Commonsクックブック ―Javaプロジェクト必須のレシピ集

価格: ¥3,780
カテゴリ: 大型本
ブランド: オライリージャパン
Amazon.co.jpで確認
HttpClientの実装を目的として ★★★☆☆
この本を購入しました。
Jakarta HttpClientに関する日本語の情報を期待してでの事です。
結果として、あまり役に立たなかったと言えます。
何故なら、この本に書いてあるHttpClientライブラリは3.xと古いものであり、
私はHttpClient4.xによる実装を試みていたからです。
(よくよく考えれば、JakartaHttpClientはJakartaCommonsから独立したプロジェクト
になったわけですから、"JakartaCommons"クックブックには3.x以降のHttpClientに関
する情報は載って無くて当たり前といえば当たり前なのです。それに気づかず、そして
中身を確認せず、期待して買ってしまった私がいけなかったのですが…)
結局、Jakarta HttpClientの英語ドキュメントを読み進めながらの実装になってしまいました。

もちろんこの本自体は良書ですので、今後、他のJakartaCommonsのライブラリを利用する上では、
大いに活用できると思います。
ですが、本書におけるJakarta HttpClientは、先にも述べたように3.xライブラリの情報となって
いますので、注意が必要です。
OSS を活用しましょう! ★★★★★
Java で開発を行っている全ての方、使用するツールの決定権がある方にお薦めします。

Jakarta Commons の API をピックアップして紹介しています。「Jakarta Commons の全てが分かる」という訳ではありませんが、よく使われるものをピックアップしているだけあって、工数を削減できそうなものが沢山ありました。「今までプロジェクトごとに作成していた API が、実は Jakarta Commons でリリースされていた」なんてこともあります。
紹介されていない API については Jakarta サイトを閲覧する必要がありますが、Jakarta Commons の概要を掴むには最適の本だと思います。Jakarta Commons は、英語ドキュメントのみリリースされているパッケージも存在するプロジェクトなので、貴重な日本語資料だと言えます。
分かりやすい ★★★★☆
Jakarta CommonsがJDKの隙間を埋めると言うが、Lang, Collections, CLI, Logging, Mathは、
正直知らなくても別に損はしないと感じた。
しかし、BeanUtils, Digester, Velocity, JXPath, Luceneは、インタフェースや処理手段が興味深く、
これらを活用できる場面が多々あると感じた。
この本の訳や説明は非常に分かりやすいのだが、上記興味深いと感じた各ツールの機能は豊富なため、
全てを説明しきれていないので、この本で興味を持ったツールについては、別の書籍で理解を深めた方が良いと思う。
ただ、概要を手っ取りばやく把握するのに、この本は非常に効率的なので、一度目を通す価値は十分あると思う。
まずは目次を見てから ★★★★☆
jakarta commonsを使う上での近道が盛りだくさんの内容となっている。

commonsに関する良質なドキュメントは探してみると案外少ない。日本語のリソースとなるともっと少ない。本書の英語版からのタイムラグが短いことから、日本語版のニーズがあったんだろうと思われる。本書は信頼できる日本語の情報という点で価値がある。

本書はあくまでオライリーのクックブックシリーズなので、commonsを網羅した内容を期待してはいけない。目次を参照して目的のコンポーネントの章があるかを確認しよう。
「ツチブタ」本として、広く読まれてほしい一冊です ★★★★★
表紙の売り文句に「Javaプロジェクト必須」とありますが、この言葉は控えめです。
「これを読む前は半人前、これを読んで一人前」ぐらいでもおかしくありません。

本書の利点はタイトルにもある通り、「使える」レシピが満載されていることです。
「レシピ」というより「処方箋」のほうが近いかもしれません。
ソフトウェアの詳細設計やコーディングを行う現場で、大いに活用できます。

では、どのように「使える」のか?
それは「せっせとコードを書く作業を減らせる」ことです。

Commonsの実態は、汎用のライブラリー群です。
一般にソフトウェア開発の現場では、JDKのAPIを使ってクラスやメソッドを作成します。
例えばファイルをオープンして別のファイルに書き出して、ファイルをクローズするといった処理があります。
Commonsは、このような典型的な処理を汎用的な形でモジュール化してあります。
開発者は、このCommonsを使えば目的を果たせます。JDKのAPIを書き連ねる必要はなくなります。
より抽象化された形で設計やコーディングができるようになります。
ですから、生産性が向上するだけでなく、欠陥が少なくなり、保守性も向上します。

このような即物的なご利益だけでなく、本書にはもう一つ重要な利点があります。
それは「上手な設計を学べる」ことです。

「設計が上手くなるには他人のソースコードを読め」とは、昔から言われている言葉です。
でも、そんな手間はなかなかとれません。玉石を選り分けるのに時間がかかります。
設計の意図を推し量るのも大変です。

本書ではレシピ毎にソースコード例が挙げられています。どれもよく吟味され、こなれているものです。
例だからといって無闇に使うのではなく、適切な局面にCommonsを適用しています。
ですから各レシピを読み進めれば、「どういう局面では、どのような設計が好ましいのか」身に付けることができます。