Asp.Net 5 in yakın geçmişine şöyle bir bakalım :
Beta6 |
27 Jul 2015 |
Beta7 |
2 Eylül 2015 |
Beta8 |
15 Ocak2015 |
RC1 |
Kasım 2015 |
1.0.0 |
2016'nın ilk çeyreği |
Şu an Beta8 sürümü yayında ve Kasım 2015 de RC1 sürümü ,2016 ilk çeyreğinde de 1.0.0 versiyonu piyasaya sürülmesi planlanıyor.
Asp.Net mVC 5 nedir?
Asp.Net 5 web uygulamaları geliştirmek için kullanacağımız açık kaynak bir web framework. Açık kaynak, ki Windows, Linux veya Mac üzerinde çalışabilir. Bu web uygulamalarından beni en çok ilgilendiren MVC ve WebAPI idi ki artık WebAPI MVC 6 ya ile bütünleşik yapıda olacak. Yani MVCV6 WebAPI'nin özelliklerini de barındıracak. Bu çok mantıklı bi hareket. İki framework de Http tabanlı frameworkler. Neden ayrı olsunlardı ki ? Geçmişte yazdığımız, arayüze sahip, bir web uygulamasına(MVC yada Web Forms ) api yazmak istediğimizde bayağı sinir bozucu bir yola giriyorduk.Aynı veritabanını kullanan iki farklı uygulama olduğu için veri bütünlüğünün bozulması , tutarsızlık, kod tekrarı gibi sorunlarımız oluyordu. MVC6 ile tüm bu gereksiz zaman ve emek harcamalarından kurtulacağız.
Asp.Net5 .Net Core ve .Net framework üzerinde sorunsuz çalışabilecek .Net Core frameworkünün .Net framework ten biraz eksiklikleri var tabi. Ama bunlar zamanla giderilecek. .Net Core ‘un halihazırda ve gelecek yenilikleri .Net Frameworkün önüne geçmesini sağlayacak. Mesela .Net Core uygulamayla beraber yayınlanabiliyor. Bu da demek oluyor ki server üzerindeki işletim sisteminin versiyonu ne olursa olsun .Net Core ile yayınladığınız uygulamalar diğer versiyonlar üzerinde çalışan uygulamaları etkilemeden çalışabilecek. İsterseniz servera versiyon güncellemesi yapabilirsiniz, isterseniz de .Net Core ile devam edebilirsiniz. Böylece uygulamayla alakası olmayan test işlemlerinden ve server versiyon farklılıklarından kurtulmuş oluyoruz.
MVC6 ile gelen en güzel yeniliklerden biri de “Tag Helper”lar. MVC'nin önceki versiyonlarında Html Helperlar ile Html nesneleri ve attributeları oluşturuyorduk. Bu standart Html'e alışan front-end developerlar için çok sıkıntılı bi olaydı. Şimdi ise Html taglarına entegre edilen tag helperlar ile bu sıkıntılardan kurtuluyoruz. Örneğin
@Html.TextBoxFor(m => m.Ad, new { @class = "form-control" }) yerine
<input asp-for="UserName" class="form-control" /> şeklinde kullanacağız.
Visual Studio kısmında da güzel değişiklikler var.Örneğin view kısmında bir değişiklik yaptığınızda sayfayı yenilediğinizde değişiklikleri görebiliyordunuz. Fakat Değişikliği controller tarafında yaptığınızda uygulamayı durdurup tekrar derlenip çalıştırılması gerekiyordu. Visual studio 2015 ile buna gerek kalmayacak. Derlenebilir bir dille değilde betik bir dille çalışıyormuş gibi olacak.
MVC6 template uygulamasında da değişiklikler var. Sık kullandığımız açık kaynak paketler -Bower, Grunt, Gulp- template entegre olarak geliyor. Eklemek istediğimiz başka paket varsa nugeti kullanmamız gerekecek.
Yazının ikinci kısımda bir template uygulama açıp büyük bi değişime uğramış olan klasör yapısı ve diğer yenilikler hakkında konuşacağız.
Asp.Net 5 in geliştirilmesi hala Github üzerinden open source olarak devam etmektedir.. https://github.com/aspnet adresinden gelişimini takip edebilirsiniz.
Güncel kalın .
Ömer Faruk Dinçer