タイトル
Web+DB press (Vol.25)
著者
-
出版社
技術評論社
Amazonで購入する

Vol25 の注目記事は「アーキテクチャ設計入門」です。J2EEをアーキテクチャ設計の勘所をポイントを抑えて解説しています。最近の典型的な4層構造(プレゼンテーション層、サービス層、ドメイン層、永続化層)のそれぞれの設計ポイントがまとめられています。

開発者のためのドキュメント作成の技術」も新人さんや2〜3年目の社員の方におすすめできる内容だと思います。設計書、マニュアル、議事録、提案書、報告書、メール、嘆願書、ポイント集と項目を挙げるだけでも読みたいと思えるようなものばかりだと思います。

Javaプログラミングの○と×」も初心者プログラマの人には楽しめる内容だと思います。どんな点に気をつけてプログラミングを行えばいいかと言ったことが載っていました。

アーキテクチャ設計入門はプログラマ・システムエンジニアの人に是非読んでもらいたい記事です。かなり面白いことが書いてありウンウン納得しながら気持ちよく読めると思います。

アーキテクチャ設計入門-覚書き

コンポーネント作成のポイント

J2EEでアーキテクチャを考える単位はコンポーネントである。コンポーネントとは、「インターフェース」、「データ」、「ビジネスロジック」が最低限、集まったものです。

コンポーネントの粒度は、「処理の単位」、「DBへのアクセス頻度」、「画面表示情報」、「トランザクション処理」、「エラー処理」などを検討しつつ決める用にします。イメージ的にはユースケースの似通った処理をまとめたものがコンポーネントになる感じです。

コンポーネントを抽出する際に気をつける点は、各コンポーネントに対して低結合性と高凝集性を持たせるという点。他のコンポーネントに依存することがないのが理想的。同じ系統のサービスを一緒にまとめるのが基本。

オブジェクト指向でビジネス層を設計する

オブジェクト指向設計は、「データ構造」と「プロセス(処理)」をカプセル化したオブジェクトを元に設計を行っていきます。UMLのユースケースを満たすようにシステムを設計していきます。

ユースケースはビジネスの要求を表したものになります。そして、ユースケースは手続き(ビジネスフロー)を表したものになります。つまり、オブジェクト指向でユースケースを実装しようとするとミスマッチが起こります。このミスマッチをサービス層が生めることになります。

ロバストネス図におけるエンティティに固有のロジックをカプセル化したパターンになります。

Business Object パターンのポイントは、サービスを提供するオブジェクトがエンティティ自身になるという点です。そして、粒度の細かいオブジェクト(ex. 注文明細、住所)をエンティティ内にカプセル化します。永続化の処理は、別途DAOなどに任せるような設計にします。このあたりは、O-Rマッピングツールの出番となるところです。

参考

  • J2EEを使った設計の極意は本書から盗め
  • J2EEパターンをポイントポイントに使って、良い設計を心がけよう
  • オブジェクト指向設計の極意!必読です。
  • アーキテクチャを考えるときに役に立つのは、優れたパターンである