- ベストアンサー
E-RモデリングとUML
E-RモデリングとUMLとの関係、どうなんでしょうか・・・ E-Rのエンティティ-インスタンスと、UMLのクラス-インスタンスとが対応しているように思います。 とすると、テーブル1つに対しオブジェクト1つ、となるのでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
私もはっきりしたことはわかりませんが、少なくともE-Rモデリングのエンティティのインスタンスは、テーブルでいう行にあたると思います。つまり、100行あるテーブルは、エンティティのインスタンスが100個あることになると思います。 UMLのほうのクラスは、メソッドがありますので、1対1でE-Rモデリングのエンティティになることはないと思います。(とはいえ、UMLでデータベースのモデリングもできると思います) 私としては、UMLはあくまでアプリケーションの分析や設計に使い、データベースの設計分析には、現状ではE-Rモデリングを使ったほうが効率的ではないかと思います。(少なくともRDBMSでは・・・)
お礼
ご回答ありがとうございます。 遅れて済みませんでした。 ただいま、頼ってばかりでなく、と本で勉強中であります。 E-Rモデリングのエンティティ、やはりそういう事なのですね。 私がこの質問をしましたひとつに、 “直接更新可能な100行のレコードのリストをやるには、(オブジェクトの)インスタンスを(同時に)100生成して実現する?” という妄想にあったのですが、そもそも手段として間違えていそうな気がしてきました。(笑) UMLとの対応を気にしていたのは、理由をうまく表現する言葉がなかったのですが、本を読んでいるうちに見つかりました。 DATARUNなる手法で「オブジェクトはデータの容器である」という考え方があるそうですが、そういう観点で、クラスからインスタンスを生成するために必要なデータをデータベースから持ってくる時、E-Rのインスタンスとオブジェクトのインスタンスが重なって見える様な気がしたためです。 私の中では、アプリケーションとデータベースを分けて考える事が出来ませんでした。 分けてしまうと最終的につなげられなくなりそうで恐いんです。 私のスキルが足りなくて。(笑) ありがとうございました。
補足
その後読書いたしまして、オブジェクトとデータベースは対比する関係に無いような気がしてきました。 むしろ、データベース構造を考慮する必要が無いようにオブジェクトが情報隠蔽するような関係のようです。 ありがとうございました。