2016-07-24 1 views
1

3層アーキテクチャ(プレゼンテーション、アプリケーション、ストレージ)では、私が読んでいる本によると、ストレージレイヤはシステム内のデータの永続ストレージを調べる責任があります。もしそうなら、エンティティクラスはアプリケーション層にあると思う。正しい?ストレージレイヤにはどんなクラスがありますか?エンティティクラスとストレージレイヤのクラスの違いは何ですか?いくつかの例を教えていただけますか?ストレージレイヤとエンティティクラス

答えて

1

ここには1つの真実はありません。人々は異なる意見を持ち、独自の定義を持っています。

あなたの質問にはUMLタグを付けましたが、UMLでは "記憶層"や "エンティティクラス"のようなものは定義していません。

"ecb-pattern"タグでタグ付けしましたが、このパターンは論理レイヤーを定義し、特定の物理レイヤーを指定しません。逆もまた同様です。物理レイヤーは論理レイヤーを規定しません。あなたが言及している3層アーキテクチャはおそらく物理的なレイヤーです。各物理層はecbパターンを使用しても使用しなくてもよい。これは、ソフトウェアアーキテクトによる決定です。

ほとんどの著者は、データベース管理システム(DBMS)、通常はリレーショナル(RDBMS)によって実装されるストレージ層を定義しています。ここでは、クラスのようなオブジェクト指向の概念は使用されません。その場合、ecbパターンが使用される場合、エンティティクラスは、アプリケーション層および/またはプレゼンテーション層の一部である。

例1:エンティティクラスPersonは、アプリケーション層のクラスである可能性があります。これは、SQLメッセージをRDBMS(=ストレージレイヤ)に送信することによってそのまま維持されます。クラスPersonは、通常、「生年月日は過去である」のようなビジネスルールも実装しています。

例2エンティティクラスPersonは、プレゼンテーション層内のクラスである可能性があります。これは、ecb-patternが使用されていないアプリケーション層にメッセージを送信することによってそれ自体が存続します(仮定します)。

1

エンティティはローエンドデータベースの「パーツ」です。それらは永続性のためにデータストレージに入れたビットとピースを表します。 (まだ誰かがそれが何であるかを覚えている場合)、UMLは、テープ/ヘッドに似ているステレオタイプを使用しています。

enter image description here

境界に対するステレオタイプは、画面に似ている(または、あなたはそれがいくつかの投影であることを考えることができます)。境界は、俳優にいくつかの情報を提示する。

コントロールステレオタイプは、(作業が行われていると思われる)回転ホイールに似ており、境界イベントに反応せず、エンティティを変更/読み込みするビジネスロジックを隠しています。

ます。また、長方形の表記を使用することができます

:www.admiraalit.nlノート@として

enter image description here

編集を、この表記は、上部構造自体(そう基本ませんUML)の一部ではありませんが、一般的に使用されますさまざまなUMLプロファイルの表記法。

+0

エンティティはローエンドのデータ 'パーツ'です。それは彼らがストレージ層にあることを意味しますか?私が読んでいる本は、それらをstorag層パッケージに入れました。 –

+0

Ehrm。それは質問ですか? –

+0

@ThomasKilian、あなたは、UMLではなく、Rational Unified Processによって定義されたステレオタイプについて説明しています。 –

関連する問題