>複雑なことしようとしたかったらSQL書かなくちゃいけないし、
正確に言えばO/Rマッパーは原則としてSQLを書かない。
オブジェクトグラフを操作するクエリを書く。
一見似ているので誤解されやすいけど、根本的に違うものなので注意した方がいい。
なお、「O/Rマッパー = クエリ書かなくてよい」なんてのはスーツが言ってるペテン。
「O/Rマッパー = オブジェクトクエリでCRUDできる」が正しい。
>そもそもフルO/Rマッパーなんていらねーんだよ。
ドメインがリッチなモデルで、かつ、開発者にO/Rマッパー&モデリング&ER設計の
熟練者がいる場合は採用すればいいと思う。ソースコード記述量、美しさ(DDDとしてのね)、移植性
は明らかになんちゃってO/Rマッパーよりも高い。
そうでなければS2Daoとか使えばいいと思う。
だから「いらねー」なんてのは極論すぎ。
>そんなに永続化データをオブジェクトで扱いたいなら
>オブジェクトDB使えよチンカスカス。
プログラムではオブジェクトとして扱うのだから、永続化や抽出処理もオブジェクトとして扱いたい
というのがO/Rマッパーの本質。
なんで、O/Rマッパーは永続化先のストアはファイルでもKVSでもDBでもオブジェクトDBでもなんでもよい。
なんでもマップできますというのがO/Rマッパーの特徴。
オブジェクトDB使えっての少々議論不足。