Merhabalar yeni bir eğitim serimizle daha beraberiz. Bu eğitim boyunca tüm detaylarıyla ve örnek projeleriyle Entity Framework’ü öğreniyor olacağız.

Bugün pek çok işimizi yazılımlar sayesinde çözüyoruz. Verilerimizi bilgisayar ortamlarında çeşitli uygulama ve yazılım ürünü araçlarla tutuyoruz. Bu verileri üzerinde istediğimiz güncelleme ekleme silme listeleme gibi işleri yapıyoruz.

Bunun için kullanılan ilişkisel veri tabanı yöntemleri mevcut. Microsoft’un geliştirdiği yazılım dillerini kullanan geliştiriciler uygulama katmanıyla veri tabanlarını, serverları haberleştirmek için Entity Framework(EF) teknolojisi ortaya çıkana kadar ADO.NET altyapısını kullanmaktaydı.

Bu sisteme ait Dataset, DataReader gibi nesneler yardımıyla veri işlemlerini yapabiliyorlardı. Ancak bu sistemin bazı eksiklikleri vardı.

Nesne tabanlı çalışmaya alışmış geliştiricilere efektif nesne tabanlı bir çözüm sunmuyordu. Geliştiricilerin aradığı ise buydu. Aynı zamanda geliştiriciler kodlama bilgilerinin yanında bir de SQL veri tabanı sorgu kodlarını bilmek zorundaydılar. Bunlar sistemin büyük oranda eksikleriydi.

Microsoft bu eksiği gördü ve Nesneler yardımı ile veri tabanı sistemlerini haberleştirebilecek bir teknoloji geliştirdi.

Entity Framework böyle doğdu.

Entityler bizim Database’imizdeki tablolarımıza karşılık gelecekti. Türkçeye çevirisi bana biraz eksik gelse de Varlık Çerçevesi olarak çevriliyor. Entity Framework demeyi tercih edeceğim.

Entity nesnelerimiz sayesinde artık çok daha efektif uygulamalar geliştirebiliyoruz.

Bu yapıyla beraber artık Coder’ların veri tabanı sorgu kodlarını bilmeleri gerekliliği de ortadan kalkmış oldu.

EF ilk olarak .Net Framework’ün 3.5 sürümüyle geliştiricilere duyuruldu ve bugün artık geliştiriciler için olmazsa olmaz bir noktaya geldi. Her yeni güncellemenin bugün geliştiricileri çok heyecanlandırdığını söyleyebiliriz.

EF temelde bir ORM (Object Relational Mapping) aracıdır. Daha önceden her veri tabanı sistemi için ona ait kodlama ve yapıları bilmek zorunluluğumuz vardı. Örneğin MS SQL için ayrı bir kodlama yapısı Oracle için farklı bir yapı kullanılıyordu.

EF sayesinde hangi veri tabanı olursa olsun bir ortak katman oluşturmuş oldu. Biz hep aynı kodlamaları yapıyoruz. EF sistemi bizim için oluşturduğumuz nesneler ve tanıttığımız veri tabanı sistemleri için kodlarımızı o veri tabanına ait kodlama yapısına otomatik olarak arka tarafta gerçekleştiriyor işliyor ve bizim istediğimiz işi yapmamızı sağlıyor.

ORM Nedir?

RDBMS(Relational Database Management System) üzerinde geliştirilen, veri tabanı ile OOP arasındaki iletişimi kuran, datalarınızı nesneler ile ifade edip yönetmenizi sağlayan bir yöntemdir.

EF, veritabanında bulunan her tabloyu Entity(Varlık), tablolar içinde bulunan alanları da property olarak ele alır. Hangi Entity’nin veri tabanında hangi tabloyla eşleşeceği bilgisini Entity ile RDBMS arasında iletişimi sağlayan mapping yapısı belirler.

Böylelikle EF nedir konusuna giriş yapmış olduk.

Bir sonraki yazımda görüşmek üzere.


muratbilginer