Domain Model is too much.

おまけとして、今年考えさせれたことを書いておきます。

今年いくつかの海外で作成されたパッケージ製品のアーキテクチャを調査していたのですが、普通にDomain Modelで作成され、RESTインタフェースでバージョニングなども行われていて綺麗な作り方になっていました。複雑なモデルをかなり考えられて構造化しており、いい感じのモデルで拡張性や仕様変更などに強そうに感じました。


ドメインモデル大好きの私はもちろん「すばらしい!!」と思い、このアーキテクチャとモデルを現場のエンジニアの方に紹介したところ、

「こんな複雑なモデルは扱いが難しい。もっと簡単でシンプルなのが良い」

と言われてみました。将来の拡張性などいらないエンドの要求を単純に実現できるのが良いという意見でした。YAGNI("You ain't gonna need it") 「そんなの必要ないって」で、too muchなモデルという意見と思いそれ以上反応しませんでした。

でもコアなドメインモデルは将来にわたって長く使われるものだから、拡張可能で堅牢であるべきで、より本質的な部分を上手く抽象化されている方がよいという思いもあります。このようなドメインモデルとYAGNIについてどのように考えればよいか来年の宿題になりました。


#最近はドメインモデルを作るような仕事をしていないので久しぶりに作ってみたいな
#fowlerの記事を最近読んでいないので、久しぶりにホームページに行ってみよう