Skip to main content

ASP.NET 3.5 Extensions

.NET Framework 3.5 ve beraberinde ASP.NET 3.5 geçtiğimiz günlerde
resmen duyurdu. C# tarafında LinQ gibi önemli yenilikler geliyor olsa
da web uygulamalarında çok büyük yeniliklerin olmadığını da
söyleyebiliriz. Ama 3.5 olayı burada bitti sanmayın zira ASP.NET ekibi
çok yakın bir zamanda önemli bir paket ile bombayı patlatacak gibi: ASP.NET 3.5 Extensions.
Aslında Microsoft bunun bir benzerini ASP.NET 2.0'ın ardından ASP.NET
AJAX Extension'ı duyurarak yapmıştı. Şimdi de benzeri bir strateji ile
geliyorlar. AJAX ancak 3.5 sürümünde mimariyle bütünleşti, belki bu son
yenilikler de ASP.NET 4.0 (böyle bir sürüm olur mu bilinmez) ile
bütünleşik gelecektir. Nacizane yorumlarımdan sonra gelelim ASP.NET 3.5
Extension'larına. Sevgili Scott Guthrie hocamızın .NET Web Product Roadmap başlıklı yazısından da gerekli bilgileri edinebilirsiniz.

Aslında
ASP.NET 3.5 Extensions içerisinde daha önceden duyurulan ASP.NET
Futures paketindeki kontroller ile ASP.NET MVC Framework'ün olduğunu
söylesem pek te yanlış olmaz. ASP.NET 3.5 ile ilgili geçen ay yazdığım yazıda
ASP.NET Futures paketi ile gelen kontrollerin eklenmediğinden şikayetçi
olmuştum hatırlayacağınız gibi. Sanırım benim ve çoğu web
programcısının sesini duymuşlar :) Aşağıda bizleri bekleyen yenilikleri
hakkında kısa bilgileri bulabilirsiniz.

ASP.NET MVC Framework: Bu kısmı çok uzun anlatmama gerek yoktur sanırım. Zira bir önceki yazımın
içeriği tamamen bu uygulama desenini anlatıyor. MVC (Model View
Controller) adı verilen uygulama deseni ile uygulamanın üç ayrı
katmanda yazılması yoluna gidiliyor. Model kısmında veri ile ilgili
nesneler (DataTable, DataSet ve kendi veri nesnelerimiz), View kısmında
User Interface'lerimiz (aspx, ascx, master sayfalar) Controller
kısmında ise kullanıcının View ve Model kısmındaki nesneler ile
etkileşimini sağlayacak class'larımızın bulunmasını öngören bu model
yavaş yavaş günlük hayatımıza girecek gibi.

ASP.NET AJAX Tarafındaki Geliştirmeler: Futures paketinden tanıdığımız History
kontrolü bu paketin içerisinde olacak. AJAX sayfalarında tarayıcıdaki
ileri-geri gitme problemini çözecek olan bu kontrol asenkron
postbackler esnasında sayfanın URL kısmını değiştirerek tarayıcının
değişen sayfa içeriklerini geçmişine kaydetmesini sağlıyor. Umarım bu
kontrol aynı zamanda arama motorlarının asenkron postback ile değişen
sayfa içeriklerini de yakalamasını sağlayabilir. Ya da ilerleyen
günlerde ASP.NET ekibi bu yönde geliştirmeler yapabilir.

Dinamik Veri (Dynamic Data) Desteği: Yine Futures paketinden tanıdığımız bir özellik. DynamicAutoData, DynamicList, DynamicNavigator, DynamicRssLink
ve adını hatırlayamadığım bazı veri kontrolleri ile bir veritabanında
yapacağımız Select, Insert, Update, Delete gibi işlemleri neredeyse kod
yazmadan gerçekleştirebilmemizi sağlıyor. .NET Framework 3.5 ile gelen Database Markup Language (dbml) dosyaları ile dinamik veri kontrollerini birlikte düşününce ve üstüne MVC Framework'ü de katınca bu yeniliklerin MVC'nin Model katmanını oluşturacağını söyleyebiliriz.

SilverLight Desteği: SilverLight artık ASP.NET ile giderek bütünleşiyor. Tahminen yine Futures paketindeki Media ve XAML
kontrollerinin ekleneceği bu pakette ASP.NET ile SilverLight'ın
entegrasyonunun daha da kolaylaşacak. Yani daha interaktif daha zengin
içerikli sayfalar geliyor.

ADO.NET Veri Servisleri (Data Services):
ADO.NET Entity Framework adı verilen bu pakette ASP.NET 3.5 Extensions
ile birlikte duyurulacak. Object Relation Mapping (ORM) desteği ile
daha da güçlenen .NET Framework 3.5'teki veri işlemleri aslında bu
framework altında toplanıyor gibi. Artık veri ile ilgili her türlü
işlemi oluşturacağımız veya SqlMetal aracı ile oluşturulacak class'lar
ile gerçekleştireceğiz gibi…

Yine ASP.NET Futures'la gelen
IronPhyton ve Managed JScript gibi dinamik diller ile ilgili olarak
Scott Guthrie'ın postunda bir bilgi göremedim ama bir soruya yazdığı
yorumda bu konuda da çalışmaların olduğunu belirtmiş. Bu konuyla ilgili
de yenilikler gelecek gibi.

Bir Cevap Yazın

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