Kohei Nozaki's blog 

「わかりやすいJava EEウェブシステム入門」書評


Posted on Tuesday Dec 30, 2014 at 11:13PM in Technology


実は,この本は出版直後に著者の川場さんより献本頂きました.改めて御礼を申し上げます.はやく紹介しなければと思っていたのですが,もう出版から1ヶ月も経ってしまい大変恐縮です.

概要

Java EE 7によるWebシステム開発の入門書である.HTML,CSSなどの基本的なレベルの解説から始まり,JSF,CDI,EJB,JPA各技術の解説がなされ,最終的に全ての技術を用いてサンプルアプリケーション「雑貨屋さん.com」を開発する,という内容である.社会人プログラマ1年目ぐらいの「何となくHTMLの基礎とJavaの文法は知っているけど,もう少し詳しく理解して,今どきの技術を使って自力でWebアプリを作れるようになりたい」といった程度の方から読める内容になっている.

ステップバイステップで,画面キャプチャなども多数使われているため,次に何をしたらいいのかが非常にわかりやすい.開発環境もNetBeans8.0.1にGlassFish4.1と,ほぼ最新のものが使われている.

前述の4技術は,洋書ではそれぞれ単体で1冊の本が出版されている程,体系的に理解しようと思うと大変なものであるが,それぞれ適度なレベルでトピックの取捨選択がなされている.以下,各技術の解説に対して感想を述べる.

JSF

JSFについては,他の技術より多めにページが割かれていて,基本的な内容である各コンポーネントの使い方とバッキングBeanの書き方,コンバータやバリデータについて網羅的な解説がなされているのでリファレンスとしても有用であるし,ややマイナーな機能であるリソースバンドルを使った国際化や,最近のバージョンで導入された機能,例えばresourcesディレクトリの使い方であるとか,Bean Validation,Ajax,Faceletsのテンプレート(ui:composition)等や,JSF2.2で導入されたばかりのHTML5対応もカバーしており,入門書としてはかなり充実した内容である.

また,難しく省略されがちなJSFのライフサイクルについても図を含めて解説してある(4章1節「JSFの仕組み」)点はとてもポイントが高い.本書の内容で簡単な業務システムならば作れてしまうのではと思わせる内容である.

欲を言えばPrimeFaces等のサードパーティ製のコンポーネントライブラリや,複合コンポーネントあたりについてもカバーされていればなあ,という気も少ししたが,これは言い出すとキリがないし入門書の域を超えているだろう.ちなみにPrimeFacesについては,サポートページにて補足がなされる予定で,近日公開だそうである.

CDI

基本的な@Namedと@Injectの他にも,会話スコープであるとか,@Producesでロガーを注入できるようにする例であるとか,@Qualifier,@Alternative等の解説もあり,基本から一歩進んだ内容となっている.また,14章「CDIとEJB」では,ライフサイクル・コールバックメソッド(@PostConstruct等)に加えて,インターセプタ,イベントプロデューサーとオブザーバーについて触れられている.このあたりの日本語情報はとても少ないため価値が高い.

EJB

本書の趣旨であれば,Java EE7より導入された@Transactionalアノテーションによって,CDI管理対象Beanでも宣言的トランザクションの利用が可能になった今,EJB自体を本書の内容から切り捨ててしまっても良いのではなかったか,という気もするが,3種類のEJBの概要と,タイマサービス,非同期呼び出し等について解説されている.

細かいが,Stateless Session Beanの解説で「内部の変数の値は毎回初期化した上で使われる」というのは正確でない気がした(インスタンスプール内に戻されて再利用される場合もあるはずなので).

JPA

これも膨大な仕様なのだが,EntityManagerの基本的な使い方,リレーション,複合主キー,コレクション,JSFとの連携などについて解説がなされている.ただ重要な概念であるエンティティのライフサイクル(new,managed,removed,detached)については,はまりやすいポイントなので記載が欲しかった.

まとめ

Java EEへの日本語情報による入り口,リファレンスとして多くのJava開発者にお勧めしたい一冊である.私はJSF,EJB,JPAについては,Java EE6時代にそれぞれ別々に書籍を購入して勉強した人間であるが,Java EE7の新機能などについては未知の情報も本書で得る事ができ勉強になった.本書が書店に並ぶことで日本のJava EE人口が増える事を期待したい.

サポートページはこちら



No one has commented yet.

Leave a Comment

HTML Syntax: NOT allowed