Entity Framework Nedir? Ne işe Yarar?

Herkese merhaba ;

Bu yazımda, Microsoftun bize sunduğu kolaylıklardan biri olan Entity Framework ‘ten bahsetmek istedim. Bu yazımda ” Entity Framework Nedir ? , Ne işe yarar , Kullanmamızın  bize kazandırdıkları nedir ?  ” bunlardan bahsedeceğim.

İlk olarak ORM kavramının ne olduğuna göz atalaım,

Orm: “İlişkisel veritabanı (RDBMS) ile nesneye yönelik programlanın (OO) arasında bir tür köprü özelliği gören ve ilişkisel veritabanındaki bilgilerimizi yönetmek için, nesne modellerimizi kullandığımız bir tekniktir/metodtur”. Basite indirgemek istersek: “Nesnelerimizi ilişkisel veritabanındaki tablomuza bağlayan ve veri alış-verişini bizim için yapan bir tekniktir/metodtur”. ORM tekniği belli bir programlama diline bağlı değildir ve her OO dilinde yazılabilir/kullanılabilir.

Entity Framework ‘ ün amacı yazılım geliştiricileri katı SQL sorgularından kurtararak ORM ( Object Relational Mapping ) imkanı sağlar. ORM , ilişkisel veritabanları yönetim sistemleri (Relational Database Management Systems) ile nesne yönelimli programlama (Object Oriented Programming) arasında köprü görevi yapan ve veritabanımızda bulunan verileri yönetmemizi sağlayan bir modelleme tekniğidir. Kısaca Entity Framework veritabanı elemanlarını veritabanına bağlı olmadan nesneler halinde kullanmamızı sağlar. Bunun sayesinde yazılım geliştirici katı yani uzun ve karmaşık SQL sorgularını yazmaktan kurtulur. Bunun yanında Entity Framework CRUD ( Create , Read , Update , Delete ) işlemleri ile uygulama ve veritabanı arasındaki iletişimin yapılmasını sağlar.

Entity Framework ‘ ü kullanmanın avantajları ;

  • CRUD ( Create , Read , Update , Delete ) işlemleri ile uzun , karışık ve zahmet verici SQL kodlarından kurtulmamızı sağlar.
  • Veritabanına bağımlılığı ortadan kaldır.
  • Veritabanı işlemlerinde nesneye yönelik kod yazmamızı sağlar.
  • Daha sade ve zahmetsiz SQL sorguları sayesinde veritabanı performansını artırır.
  • Yazılım geliştiricinin data işlemleri ile haşır neşir olmadan sadece uygulama üzerinde odaklanmasına olanak sağlar.
  • Kod yazma süresini kısaltarak daha az zamanda daha çok iş yapmayı sağlar.

Entity Framework ile 4 farklı yöntem ile proje geliştirilebilir. Bu yöntemler;

– Model First (New Database)

–  Database First (Existing Database)

– Code First (New Database)

– Code First (Existing Database)

Model First (Önce Model): Bu yöntemde Visual Studio üzerinde boş bir model dosyası (.edmx) eklenerek veri tabanı bu model üzerinde tasarlanir. Derleme adiminda verilen script dosyasi ile veri tabani oluşturulur.

Database First (Önce Veritabanı): Bu yöntemde hali hazırda var olan veritabanı projeye model dosyası ile bağlanır ve gerekli class’lar EF tarafından üretilir. Ilerde veritabanina yapilacak eklemelerde mevcut version Ef 6 da sorunlar yasamistim kod daki classlarin iliskilerini tam yapamadigi icin bu versionu kullanmaktan uzak durmaktayim (giris seviyesineki en kolay version da budur.

Code First (Önce Kod – Yeni Veritabanı): Bu yöntemde classlar ve mapping kodları yazılımcı tarafından oluşturulur. Daha sonra veri tabanı bu class’lardan türetilir.

Code First (Önce Kod – Var olan Veritabanı): Bu yöntemde de classlar ve mapping kodları yazılımcı tarafından oluşturulur. Veritabanı class’ların ve modellemenin durumuna göre tekrardan şekillenebilir.

Daha sonraki yazılarımda görüşürüz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir