web-dev-qa-db-ja.com

データモデルとオブジェクトモデルの違いは何ですか?

CWMはデータモデリングです

UMLはオブジェクトモデリングです。

素人が理解できる違いを誰かが説明できますか?

18
user198729

オブジェクトモデル:システムのオブジェクト指向の「青写真」を扱います。これには、クラス図(作成するクラス)、これらのクラス間の関係、クラス内のメソッド、プロパティなどが含まれます。

データモデル:データベースレベルでエンティティを処理します。 OM内のクラスがデータベースに格納される方法と同様に、テーブルなどがあります。したがって、DMは、テーブルスキーマ、異なるテーブル(PK、FK)間の関係などを扱います。

DMには、通常OMにリストされているポリモーフィズム、継承、オーバーロードなどの複雑なOO機能はありません。

大まかな例として、OM内の2つのクラスをDM内の単一のテーブルに格納(マッピング)できます。これは、従業員とマネージャーの両方の担当者を単一のDBテーブルに格納できるようになります。

19
Vivek

データモデリングは、データベース構造の設計と作成を扱います。データの保存方法。

オブジェクトモデリングは、アプリケーションが外部ソースから受信した情報とどのように相互作用するかを扱います。エンドユーザー、データベース、Webサービスなど。

たとえば、営業部門の顧客履歴を追跡しているとします。部門には、顧客の名前、住所、電話、電子メール、および購入履歴が必要です。

データモデルでは、個々のデータを格納するテーブルとフィールドを定義します。その定義には、最大長、データ型、データが必要かどうかなどの情報を含めることができます。

オブジェクトモデルでは、データモデルで設定したルールを適用するだけでなく、メールアドレスが正しくフォーマットされていることを確認したり、顧客の姓名の最初の文字を大文字にするなどの動作を追加することもできます。 。これらのタイプのルールは、データモデル内で設定されたルールよりも複雑で詳細になる傾向があります。

いずれにせよ、オブジェクトモデルの目的は、アプリケーション自体のデータの管理を容易にし、データベースに送信される前にデータに対してより高いレベルの検証を実行することです。

3
Neil T.