実践J2EEシステムデザイン

-実践J2EEシステムデザイン | ロッド・ジョンソン
--https://www.amazon.co.jp/dp/4797322888?tag=nilabwiki-22&linkCode=osi&th=1&psc=1
-->本邦初、J2EEを実践的に取り上げた書籍
-->
-->いままで理論に走りがちなオブジェクト指向システム設計と運用を、「実践」に焦点を当てて紹介しました。
--> 本書では、JSP/サーブレットなどの既存システムの「問題点」を解説し、コストパフォーマンスの高いシステムとはなにか、またどのような技術を採用すれば効率が上がるか、業務として最も適切か、といった、実用指向の論旨で内容を展開します。
--> 既存の解説書を超えた、「J2EEをよりよく使う」「J2EEを超えたシステム設計」を目指した、ハイレベルなSEのための決定版書籍です。
--> 本書では以下の知識があることを前提としています。
-->▲Java言語
-->▲オブジェクト指向の原理
-->▲代表的なオブジェクト指向のデザインパターン
-->▲サーブレットとEJB
-->▲JSP
-->▲HTTPやIIOPなどのWebおよび分散オブジェクトプロトコル
-->▲RMI、JDBC、JNDIなどのJ2EEの基盤
-->▲リレーショナルデータベースの基礎
-->▲トランザクションの概念(ACIDプロパティ、分離レベル)
-->▲XMLとXSLTの基礎
-->▲UML(特にクラス図とシーケンス図)
-->▲データ構造などのコンピュータサイエンスの概念
-->
-->著者からのコメント
-->EJB 3.0で採用されるであろう、IoCコンテナの先駆けである、Springの原点について書籍である。IoCコンテナのコンセプトとなったように、フレームワークはビューとデータアクセスから独立させるべきだと、既製の誤ったフレームワーク論を批判している。
-->そのうえで、ビューテクノロジには、JSP以外にも、JSTL、XSLT、Velocityなどがあり、JSPが唯一の選択肢ではないことを述べている。そして、データアクセスの選択肢には、JDBC(SQL)、EJB、JDO、O/Rマッピングツールがあり、EJBはリモートクライアントを持つ分散アプリケーションのための選択肢であり安易に採用することを戒めている。とくに、エンティティBeanは、まだ初歩的なO/Rマッピング機能しか実現できていない。そして、ステートフルセッションはクラスタでの信頼性とスケーラビリティに問題がある。したがって、EJBを使用しなければならないのならば、ステートレスセッションBeanを使用し、SQLの使用を否定するなと述べている。このような感じで、EJBの「欠点」を回避、利点を享受できるような解決策を提示している。したがって、実務でJ2EEを使用して落とし穴にはまっている開発者にはぜひ読んで頂きたい書籍である。