【まっぴんぐ】

マッピング とは?

最終更新:
💡 こちらの何を、あちらの何に対応させる?

データ・名前・処理などの間に、どれとどれが対応するかを定義すること。ORM、URLのルーティング、コンテナのポート公開など、文脈によって対象と対応の仕方が異なる。

📌 このページのポイント
マッピング:対応する項目を決めるシステムAシステムBuser_namenamemail_addressemailbirth_datebirthday名前だけでなく、型や値の変換も決めよう
システムAからBへデータを移す際の、フィールド対応の例です。
ひよこ ひよこ
マッピングって、何をすること?
ペンギン先生 ペンギン先生
「こちらの何が、あちらの何に対応するか」を決めることだよ。例えばシステムAのuser_nameと、システムBのnameを対応させる。名前だけでなく、型や値の形式も違うなら、その変換ルールも決める必要があるね。
ひよこ ひよこ
O/Rマッピングって?
ペンギン先生 ペンギン先生
コードのクラスや属性を、データベースの表や列などに対応させる仕組みだよ。SQLAlchemyなら、クラスに対応する表と属性の設定を定義する。設定した対応に基づいて、オブジェクトを読み書きするんだ。すべての名前が無条件で自動的に一致するわけではないよ。
ひよこ ひよこ
Dockerのポートマッピングは?
ペンギン先生 ペンギン先生
ホスト側とコンテナ側のポートを対応させるよ。例えば-p 8080:80なら、ホストの8080番へ届いた通信をコンテナの80番へ転送する。この並びはホスト:コンテナだね。公開するアドレスやアクセスできる範囲も設定で確認しよう。
ひよこ ひよこ
URLマッピングは、URLだけを見て決まる?
ペンギン先生 ペンギン先生
WebアプリではパスとHTTPメソッドなどで処理を選ぶよ。Expressのapp.getはGETのルートを定義する。同じパスでもGETとPOSTで別の処理にできるんだ。フレームワークごとに、パラメータやパターンの書き方も確認しよう。
ひよこ ひよこ
対応表を作れば、変換は完成?
ペンギン先生 ペンギン先生
欠けている値、型の違い、複数の候補がある場合なども決めよう。例えば古いcustomer_nmを新しいcustomer_nameへ移すなら、空欄をどう扱うかも必要だね。「マッピングテーブル」という名前も、対応表なのか多対多を表す表なのか、使われている場面を確認するんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「マッピング」って出てきたら「どれとどれが対応するかを決めること」と思えばだいたいOK!
📖 おまけ:英語の意味
「Mapping」 = 対応付け・写像
💬 ITでは、名前やデータ、処理などの対応を定義する意味で使うよ。何を何へ対応させるかを、文脈で確認しよう。

参考資料

← 用語集にもどる