Create Branch

オブジェクトとドメインモデルの違い

Published on 2024年11月3日

メモ

オブジェクトとドメインモデルの違い

  • ドメインとは、解決したい特定の問題領域を示す。
  • 「オブジェクトUI指向デザイン」には、オブジェクト= 目当て と記載がある。

結論

  • ドメインモデル≒ドメインオブジェクト
    • ほぼ同じような認識ではあるが、下記のような違いがある。
  1. ドメインモデル
    • ビジネス上の問題領域(ドメイン)における概念や規則を抽象化した表現
    • 例:銀行システムにおける「口座」「取引」「残高」などの概念とそれらの関係性
      • 実装に依存しない純粋な概念モデル
  2. ドメインオブジェクト
    • ドメインモデルをソフトウェアとして実装したもの
    • プログラミング言語でのクラスやオブジェクトとして表現
    • 実際の振る舞いを持つ

ドメインモデルをなぜ使用するのか?

  • モデリングによってソフトウェアの価値を高める。

    • DDD(ドメイン駆動設計)とは、ソフトウェアを効率的に開発するための設計手法
  • DDDを用いることでどのようにソフトウェアの価値を高めることができる?

    • 下記の2つを継続的に行うことで、「特定のドメインに対して問題解決力の高い」ソフトウェアを実現すること。
      1. ドメインについての理解を深めて、ドメインモデルを継続的に改善
      2. ドメインモデルを継続的に反映する

参考

hirotobeat