LINQ-to-SQL ve ADO.NET Entity Framework’ün geleceği nedir?

Womanne

Member
PDC 2008’deki son yazılım geliştirme ve danışmanlık projelerimizden biri Microsoft’un ORM ürünlerinin geleceğini nasıl gördüğüyle ilgiliydi. .NET Framework Service Pack 1’den bu yana, Microsoft’un LINQ özellikli iki OR eşleyicisi var: LINQ-to-SQL ve ADO.NET Entity Framework (LINQ-to-Entities sorgu diliyle). Bazı Microsoft savunucuları iki ürünün “tamamen farklı” olduğunu söylüyor. Ancak yalnızca müşteriler değil, Redmond geliştirme ekibinin kendisi de her iki üründeki büyük örtüşmeleri görüyor.

Duyuru



Rekabetçi durum, planlanmamış paralel gelişimden kaynaklandı: LINQ-to-SQL, C# ekibinden, Entity Framework ise ADO.NET ekibinden geldi. Her iki ekibin de .NET 4.0 için birleştiği uzun zamandır biliniyordu. İlginç olan soru bunun daha fazla gelişme açısından ne anlama geldiğidir.

Microsoft’la yaptığım gizlilik anlaşması nedeniyle şu anda sahip olduğum bilgilerin tamamını buraya yazamıyorum. Ancak bazı bariz gerçekleri kanıt olarak gösterebilirim:

  • PDC 2008’de ADO.NET Entity Framework’ün “Sürüm 2″si, .NET 4.0 ve Visual Studio 2010’un bir parçası olarak tartışıldı. EF’in daha önce yalnızca dahili rakibi LINQ-to-SQL’de bulunan çeşitli özellikleri destekleyeceği açıklandı. : nesne modellerine dayalı veritabanlarının oluşturulması (“İleri Mühendislik”), haritalama için basit .NET nesnelerinin kullanılması (“Kalıcı Cehalet”) ve nesnelerin otomatik olarak yeniden yüklenmesi (“Şeffaf Tembel Yükleme”).
  • LINQ-to-SQL hakkında herhangi bir tartışma yapılmadı ve .NET Framework 4.0 ve Visual Studio 2010’daki yeni özelliklere ilişkin bir duyuru yapılmadı.
Ayrıca LINQ-to-SQL’in .NET Framework’ten kaybolacağı açıklanmadı. Peki düşük seviyede kalan bir üründen ne istiyorsunuz? Microsoft, “LINQ to SQL hakkında müşterileri dinliyoruz ve topluluktan aldığımız geri bildirimlere dayanarak ürünü geliştirmeye devam edeceğiz” yazsa bile Entity Framework lehine üç açık argüman var:


()

  • ADO.NET Entity Framework halihazırda LINQ-to-SQL’den daha güçlüdür ve bu sürümle birlikte LINQ-to-SQL’in daha önce avantajlı olduğu tüm alanları da sunacaktır. Microsoft’un uzun vadeli duyurusu, örneğin SQL Server Raporlama Hizmetlerinin temeli olarak Entity Framework’ün Microsoft SQL Server’a entegre edilmesi yönündedir.
  • ADO.NET Entity Framework, basit eşleme senaryoları dikkate alındığında LINQ-to-SQL’den daha karmaşık değildir. LTS’nin bile yapamayacağı daha karmaşık senaryolar için durum daha da karmaşıktır.
Duyuru

  • 31.10.2008 tarihli bir makalede ADO.NET ekibi şu öneride bulunuyor: “LINQ to Entities, LINQ to ilişkisel senaryolar için önerilen veri erişim çözümü olacaktır.”


Haberin Sonu
 
Üst