Domaを作ろうと思った1つのきっかけ

DomaDomain Oriented MApping frameworkのアクロニムで、ここでのDomainが意味するのは値の定義域のことです。Domainという同じ言葉を使っていても、DDD(Domain Driven Design)のDomainとはなんら関係ないわけですが、Domaを作ろうと思った1つのきっかけはDDDに関係あったりします(DDDのDomainは問題領域という意味です)。

それは、QCon London 2009のThe Power of Value - Power Use of Value Objects in Domain Driven Designというセッションの次の資料を読んだからです。

この資料には、Value Objectって便利だよねみたいな話がサンプルコードを盛り込んでわかりやすく書いてあります。ここに書いてあることはなるほどと思えたのですが、O/Rマッパーとの関係が書いていない。Value Objectって、簡単にDBにマッピングできないと使いにくいんですよね。というわけで、Value Objectを簡単に扱えるO/Rマッパーを作ろうと思ったわけです。
つまり、DomaのDomainって一般的な用語で言えばValue Objectのことなんです。ただし、単なるValue ObjectというよりはDBのカラムにマッピングできるValue Objectです。

DomaのDomainについては、リファレンスで述べています。