「コードファースト」の版間の差分
編集の要約なし |
|||
| 2行目: | 2行目: | ||
==概要== | ==概要== | ||
一般的に[[RDB]]を使用するプロジェクトでは以下のようなものが乱立する。 | |||
*テーブル定義を書いた紙の仕様書 | |||
*CREATE TABLEなどを記述したSQL文 | |||
*[[データ]]を受け取るクラス | |||
これらのうちひとつでも記載忘れなどが発生すれば[[バグ]]の温床となる。 | |||
そこで考えられたのが全てを主となる[[プログラミング言語]]の[[ソースコード]]で一本化しようという思想である。ひとつのクラスがひとつのテーブルとして定義される。いわゆる[[ORM]]で「SELECT」の結果を受け取るのに使用されるクラスを流用して、実行時などに「CREATE TABLE」までやってしまおうという発想であり、通常は[[ORM]]の機能として提供される。 | |||
「仕様書はソースコードの中に」という思想のもと、いきなり[[ソースコード]]から書き起こすことからコードファーストと呼ばれる。全世界で議論を呼んだ「[[ソース読め]]」の発展系であるといえる。 | 「仕様書はソースコードの中に」という思想のもと、いきなり[[ソースコード]]から書き起こすことからコードファーストと呼ばれる。全世界で議論を呼んだ「[[ソース読め]]」の発展系であるといえる。 | ||