Entity Framework


Entity Framework ORM araçlarından biridir. ORM’nin açılımı Object Relational Mapping’ dir .ORM (Object Relational Mapping)  veritabanı ile nesneye yönelik programlama (OOP) arasındaki ilişkiyi kuran teknolojidir. Yani Entity Framework, nesne tabanlı programlamada veritabanındaki tablolara uygun nesneler oluşturma tekniğidir. Bu araçlar, veritabanı işlemlerini nesneler üzerinden yapmamıza olanak sağlayan yapılardır. Veritabanında bulunan her tabloya karşılık gelen bir nesne bulunmaktadır. Veritabanına ekleme, silme, listeleme vb.. işler bu nesneler kullanılarak, güvenli ve hızlı bir şekilde yapılır. ORM araçlarının diğer bir özelliğide veritabanı bağımlılığını ortadan kaldırmasıdır.
Günümüzde kullanılan birçok ORM aracı bulunmaktadır. Örneğin; Java tabanlı olarak Hibernate, Flex’de Athena Framework, Delphi’de ECO gibi. Entity Framework ise Microsoft tarafından geliştirilen .Net tabanlı bir ORM aracıdır.
Neden Entity ?
.Net projelerimizde farklı ORM araçları kullanmamızda mümkün, örneğin nHibernate. Bizim Entity’ i seçmemizdeki en büyük etken, Microsoft’ un ürünü olması ve Visual Studio ile birlikte gelen özelliklerle birlikte çok daha etkin kullanılabiliyor olması.
Entity Framework ile kolayca CRUD işlemleri yapılabilir.
Veritabanı olarak esnek yapıya sahiptir. Örneğin yazdığınız proje MSSQL ile çalışmakta ve birden Oracle’a geçmeniz istendi. Bunu yapabilmek için birçok ayar gerekirken Entity Framework ile direkt geçiş yapabilirsiniz.
Veritabanı bağımlılığı yoktur. Yani Entity Framework’ü oluşturmadan önce veritabanı tablo ve kolonlarını oluşturmalısınız gibi bir kural yoktur. Siz Entity Framework ile modellemeyi yaparken olmayan tabloları ve kolonları sizin yerinize açacaktır.
Veritabanı işlemleri ile ilgili kod yazımı en aza ineceğinden minimum zamanda maksimum iş çıkartmayı sağlar.

Entity Framework’ün temelinde üç yapı vardır. Bunlar Code First, Database First ve Model First dediğimiz yapılardır. Bunları kısaca açıklamak gerekirse;
Database First
            Database first yaklaşımında hali hazırda var olan veritabanınızı kullanmanıza olanak sağlar. SQL Server, Oracle, MySql  gibi ortamlarda tasarlanan veritabanını projeye ekleyebilirsiniz. Ancak veritabanında yapıcağınız değişiklikleri bu ortamlarda manuel olarak yaptıktan sonra yapılan değişikliklerin projenize yansıması için eklediğiniz database’ yi güncellemeniz gerekir.
Model First
            Model firt yöntemi Visual Studio ortamında görsel olarak çalışmaya olanak sağlar. Örnek olarak, tablo nesnesi oluşturup içine alanlar tanımlayıp tabloları birbirine görsel olarak bağlayabilirsiniz. Tüm veritabanı yapısı önünüzde  bir şema olarak ortaya çıkıyor. Bu Veritabanını VS.Net ortamındaki araçlar ile gerçek bir veritabanı içine aktarılır ve SQL serverde içinde primary keyler vb. fiziki olarak oluşturulur.
Code First
            Code first yapısı daha çok kullanıcıya özgürlük sağlayan hakimiyetin kullanıcıda olduğu, veri erişimin kod merkezli olan bir yöntemdir. Bir class yapısında verilerin kullanıcı tarafından kodlarla yapılır ve veritabanı otomatik oluşur . Veri erişimi mekanizmasında yer alan değiştirme noktalarından müdahale ederek veri erişim yapısını kendinize göre özelleştirmenizi sağlar. Database First, Model First yaklaşımları gibi herhangi bir designer yada xml eşleştirme dosyasına ihtiyaç yoktur.


Yorumlar

En çok okunanlar

Cloud Computing Reference Architecture: An Overview

Cloud Architecture

Teknolojik Altyapıdan Ne Anlıyoruz?

Run SAP İş Ortağı Programı, En İyi Çözüm Operasyonunu Nasıl Sağlar?

Artırılmış Gerçeklik nedir ve hangi alanlarda kullanılıyor?

KÖRLER ÜLKESİNE KRAL OLMAK

BİG DATA MANAGEMENT

Blockchain, sözleşmelerin dijital koda yerleştirildiği ve şeffaf paylaşılan veri tabanlarına depolandığı, silinmesi, değiştirilmesi ve düzeltilmesinden korunan bir dünyayı hayal edebiliriz.

CLOUD COMPUTING – An Overview

Bilgi Sisteminin Yazılım Yetenek Olgunluk Modeli ile İlişkisi