様々なシステムにおいて、データベースとのアクセスは必ずと言ってよいほど必要です。
Entity Frameworkとは、プログラムとデータベースの懸け橋となるような仕組みです。
Entity FrameworkはADO.NETという.NET Frameworkでのデータベースへアクセスする機能の一つとして提供されています。
データベースと情報のやり取りをする場合には、様々な手法が存在するのですが、
SQL文という言語で記述された命令文を使用しアクセスする方法があり、これまではプログラムの中に
直接SQL文を埋め込むなどの手法で、データベースとプログラムの間でデータのやり取りをしていました。
しかし、データベースも様々な種類があり、SQL文もそれぞれ微妙に異なっているため
それぞれ書き換える必要があったり、
オブジェクト指向の開発言語とデータベースのデータの関係性の構造の違いにより、
汎用性がなく面倒なものでした。
それらの問題を解決してくれるのがEntity Frameworkです。
Entity Frameworkの特徴としては、開発者がオブジェクトを扱う感覚でデータベースを操作できる点が挙げられます。
以前では、どこかにデーブルデータを保持するクラスを用意して、そのクラスを参照するような1段階踏む必要があったのですが、
その必要もありません。
SQL文は内部的にそれぞれのデータベースに合わせて発行してくれるので、
データベースを意識せずに開発ができるという利点があります。
KISSの原則っていうのが、以前キーワードでありましたが、
このような仕組みを利用して、よりシンプルにわかりやすい開発をすることが
今後の自分のためになるんだろうと思います。