各方法の長所/短所は何ですか?
本またはこのサイトのどこかで、Entity Framework 4 でテーブルの継承を使用するのが不適切な理由を読んだことがあります。
たとえば、entityId、datecreated、datemodified を持つ 1 つのテーブルを作成し、エンティティ フレームワークで他のすべてのクラスにそれを継承させてみませんか? 次に、他のすべてのエンティティのテーブルにそれらの列を含める必要はありません。次に、人物クラスにその基本クラスを継承させ、次に特定の人物に人物を継承させることができます。
データベースを生成するための小さな SQL スクリプトを作成する以外に、これの利点についてはわかりません...
私が見る欠点は、SQLでデータを直接クエリ/表示することがお尻の大きな苦痛になることです(すべての関連情報は非常に多くのテーブルにまたがっています)。
ほとんどの経験の浅い開発者が継承を使用して問題にアプローチする場合、データベース データを変更して移行するよりも、アプリケーション コードを変更する方がはるかに簡単です。私も最初に開発を始めたときにそうしました。それは論理的に理にかなっています。しかし、長い間開発を続けると、委譲が本当に最善の方法であり (SOA の場合はサービスを呼び出すサービス)、単一目的のサービスは継承よりもはるかに多くの再利用を提供することがわかります。」
これは私にとっても理にかなっています。
そう
1) 一般に、継承と拡張の長所/短所は
何ですか? 2) 上記の私の具体的な例では、何がより適切でしょうか?
3) もし私の例がどちらか、または両方でつまらないものなら、継承と拡張を使用するための良い例は何ですか?
以前に両方を使用したことがありますが、慣れていないため、すべての状況をどのように処理すればよいかまだわかりません.
10 票、8 お気に入り、100 回以上の閲覧数で誰も拡大できませんか? =(.