ActiveRecordからのORマッピング
何の気もなしにActiveRecordを使っていましたが、
そもそもActiveRecordとは何のことなのかを調べてみました。
概要としては
”RailsのORマッパー”
ということらしいのですが、ORマッパー(オブジェクト関係マッピング)とは
何なのかということですが、
概要を見ると、、
Wikiによると
”データベースとオブジェクト指向プログラミング言語の間の非互換なデータを変換するプログラミング技法である。”
とあります。
図でいうと、
参照⇒(
http://si.comp.ae.keio.ac.jp/web_app_dev_material/app/or_mapper/index.html
)
オブジェクト指向用に設計されたモデルと
リレーショナルデータベース用に設計されたテーブル定義の構成が
合わない、そのため双方のデータを扱うときの対応付けが
複雑になったり、間違った値を取得するリスクが出てくる。
そういったリスクを軽減するためにORマッピングが誕生したという
ことなのかなと思いました。
リレーショナルデータベースをオブジェクトとして直感的に
扱えるようにするとありますが、例えばRubyではORマッピングを
ActiveRecordを介して使えます。
データベースを操作するときにはSQL文を使ってではなく、
Rubyの文法に則したような形で扱うことができるようになっているという点が
オブジェクトとして直感的に扱えるという意味だと思います。
個人的にはいきなりORマッピングを使うのではなく、
学んでいくという手順になるのかなという認識です。