O/Rマッパーってなんぞや

こんにちは!kossyです!


本日の気になったニュースです
headlines.yahoo.co.jp

個人的にはキャッシュレス化するための費用がネックになっているような気もします。













さて、今回はO/Rマッパーという聞きなれない言葉を見つけてしまったので、調べてみました。



O/R(Object/Relation)マッパーとは、リレーショナルデータベースとオブジェクト指向言語との橋渡しを受け持つライブラリのことです。
これは、アプリ側で使用するオブジェクトモデルと、データベースが利用するリレーショナルモデルの表現上の差異(インピーダンスミスマッチ)を
解消するツールになります。

この仕組みがないと、データベースから取得した表形式の結果を手動でオブジェクトのプロパティに割り当てたり、
逆にデータベースに登録すべき値をオブジェクトからひとつずつ取り出したり、といった手順が必要でした。
このような作業は単純ですが、アプリのコードの半分以上を占めていたようで、開発の生産性を著しく下げる要因になっていました。

RailsではActiveRecordを利用することで、リレーショナルデータベース(表形式のデータ)を
オブジェクトのように操作できるようになっています。
また、SQLを直接書くことなくデータベースアクセスを簡単に行うことができます。
SQL言語にはそのデータベース固有の記述の仕方が存在しますが、
それらの差異もO/Rマッパーは内部で処理してくれるので、
接続先のデータベースを変更した場合にはアプリへの影響は最小限に抑えられます。



こういった細かいことを初学者ユーザーに意識させることなく
動くアプリを簡単に作れてしまうRailsは優秀ですね、、、




参考にさせていただいた記事
オブジェクト関係マッピング