今日は、8月30日(土)のモデル駆動開発勉強会での佐藤匡剛さんの発表をまとめます。
匡剛さんは、毎回、実践的で質の高い発表をしていただけるので大変勉強になります。
現在執筆の締め切りが近いということで、お忙しいところ、誠にありがとうございました。
DSLがどのようなものか、あまりわかっていなかったのですが、匡剛さんの発表で、その輪郭を垣間見ることができました。
■資料
http://handsout.jp/slide/712
■内容
・ドメイン駆動設計(DDD)とは
「ドメインモデル」を中心にソフトウェア開発をしようという設計思想
→反復的なドメインモデルの設計
→メイン駆動設計では、DSLを共通言語として扱う
→ドメイン駆動設計では、ドメインモデルと実装コードの一貫性の維持が大事
・ユビキタス言語として洗練されたドメインモデルは、最終的にDSLに近づいていくのではないか
・ドメイン層DSL
アクション→サービス層→ドメインモデル→データアクセス層というアーキテクチャでサービス層→ドメインモデルの部分をDSLとしてユーザに解放できる
※JRubyによるドメイン層DSLのサンプル紹介
・ドメインフレームワークとDSL
ドメインフレームワークとは、ドメインロジックを実装するためのフレームワーク
例としては、JBoss JBPM、JBoss Rules(Drools)、マッチングフレームワークHamcrestがあげられる
JBoss Rulesはルールを独自言語で定義できる。オブジェクトがルールにマッチした場合に処理が動く
※JBoss Rulesのサンプル紹介
今年の目標:100エントリーまであと38。