ドメイン駆動設計とオブジェクト指向

0
増田 亨. @masuda220

複雑さに挑む時に役に立つ、ものごとの見方と考え方。「世界はシステムで動く」 amazon.co.jp/%E4%B8%96%E7%9…

2015-02-03 13:10:27
増田 亨. @masuda220

定義しにくかったり、数値化しにくいものを、無視したり軽視してはいけない。むしろ、そういうものの存在を重視してものごとを考えたほうが、うまくいくことが多い。

2015-02-03 13:13:14
増田 亨. @masuda220

「言葉」は、そういう数値化しにくい対象を、うまく扱うための道具。現実世界では、厳密な数学モデルよりも、人によって解釈や使い方にゆらぎがある「言葉」を組み合わせた説明モデル(意味モデル)のほうが、役に立つことが多い。

2015-02-03 13:17:37
増田 亨. @masuda220

オブジェクト指向で設計すること。言葉を使って意味モデルを組み立てること。ものごとを認知する能力を、経験による言葉の学習として説明しようとする認知言語学。この三つはつながっている。この三つをソフトウェア開発の現場で実践するのがドメイン駆動設計。

2015-02-03 13:26:06
ぐるぐる系SQL @bleis

ドメイン駆動自体はオブジェクト指向を前提にしていないはずだが・・・

2015-02-03 13:31:30
かとじゅん @j5ik2o

@bleis ドメイン駆動設計という言葉を最初に作ったエリックさんの、ドメイン駆動設計はオブジェクト指向を基盤にしてますね。

2015-02-03 13:36:04
ぐるぐる系SQL @bleis

@j5ik2o えぇ、基盤にはしてますが、書籍の中で「PrologでもDDDやってる」みたいな話があったと記憶しています

2015-02-03 13:36:50
かとじゅん @j5ik2o

@bleis そうですね。オブジェクト指向という考え方は必要ですが、必ずしもオブジェクト指向言語でなければならないということはないですね。Haskellでも可能ですね〜。

2015-02-03 13:39:37
ぐるぐる系SQL @bleis

@j5ik2o んー、俺はオブジェクト指向という考え方そのものがDDDにとって必要不可欠である、とは考えていないです。オブジェクト指向という側面からDDDを見たらオブジェクト指向の言葉で説明することになるので、そう見えているだけでは?という

2015-02-03 13:41:55
HARADA Kiro @haradakiro

@bleis @j5ik2o Domain of Discourse のドメインなので、語る言葉としての語彙をどう作るかという問題ですね。関係者間で語りやすい言葉で記述できる対象があればそっちがドメインになるので、別にオブジェクト指向じゃなくてもですが、現実にはOOが多い。

2015-02-03 13:51:55
かとじゅん @j5ik2o

@haradakiro @bleis なるほど。そういう意味では、メンタルモデル中心なので、実装言語が限定されることはないとは思いますね。

2015-02-03 13:59:22