ビープラウド社長のブログ

株式会社ビープラウドの社長が、日々の思いなどを綴っていきます。

モデル駆動開発勉強会 「ドメイン駆動設計とドメイン層DSL」佐藤匡剛さん

今日は、8月30日(土)のモデル駆動開発勉強会での佐藤匡剛さんの発表をまとめます。

匡剛さんは、毎回、実践的で質の高い発表をしていただけるので大変勉強になります。
現在執筆の締め切りが近いということで、お忙しいところ、誠にありがとうございました。

DSLがどのようなものか、あまりわかっていなかったのですが、匡剛さんの発表で、その輪郭を垣間見ることができました。

■資料
http://handsout.jp/slide/712

■内容
ドメイン駆動設計(DDD)とは
ドメインモデル」を中心にソフトウェア開発をしようという設計思想
→反復的なドメインモデルの設計
→メイン駆動設計では、DSLを共通言語として扱う
ドメイン駆動設計では、ドメインモデルと実装コードの一貫性の維持が大事

ユビキタス言語として洗練されたドメインモデルは、最終的にDSLに近づいていくのではないか

ドメインDSL
アクション→サービス層→ドメインモデル→データアクセス層というアーキテクチャでサービス層→ドメインモデルの部分をDSLとしてユーザに解放できる

JRubyによるドメインDSLのサンプル紹介

ドメインフレームワークDSL
ドメインフレームワークとは、ドメインロジックを実装するためのフレームワーク
例としては、JBoss JBPMJBoss Rules(Drools)、マッチングフレームワークHamcrestがあげられる

JBoss Rulesはルールを独自言語で定義できる。オブジェクトがルールにマッチした場合に処理が動く
JBoss Rulesのサンプル紹介

今年の目標:100エントリーまであと38。