Uygulamayı Model, View ve Controller bileşenlerine bölerek karmaşıklığı önler.
Viewstate ve sunucu taraflı form kullnamaz. Uygulamanın bütün evelerine müdahale etmek ve hakim olmak isteyen geliştiriciler için idealdir.
Front Controller deseni kullanır. Bütün istekleri (request) tek bir Controller tarafından karşılanıyor. Bu sayede MVC, çok esnek bir yönlendirme (Routing) altyapısına sahiptir.
Daha iyi Test Driven Development (TDD) desteği sağlar.
Geniş bir takım tarafından geliştirilen, uygulam davranışları üzerinde daha fazla kontrol gerektiren web uygulamları için ideal bir yapıdır.
Web Formları Avantajları
Olay modeli ile geliştirme yapmaya onanak sağlar. Yüzlerce sunucu kontrolü üzerinden binlerce olay vardır.
Bir sayfaya özel işlevsellikler ekleyebilen Page Controller desenini kullanır.
View state ve sunucu tabanlı formlar yardımıyla sayfanın durum bilgisi kolaylıkla yönetilebilir.
Hızlı uygulama geliştirme yapmaya müsait olduğundan küçük gruplarla yapılacak karmaşık olmayan web projelerinde iyi çalışır.
MVC modeline göre daha az kod gerektirir.
ASP.NET MVC Framework Özellikleri
MVC Framework yapısının özelliklerini özetleyelim.
Uygulama görevlerini (giriş mantığı, iş mantığı, arayüz mantığı) ayırır. TDD desteği var.
MVC yapısı tamamen arayüz tabanlıdır, uygulamadaki gerçek nesnelerin simulasyonlarından oluşan mock nesneleri yardımıyla test edilebilir. ASP.NET Controller nesnelerini, web uygulamasını çalıştırmadan birim testine (unit test) sokabiliriz. .net Framework ile uyumlu olan hernagi bir test framework ile unit-test yapabilirsiniz. Visual Studio Unit Test adlı test motoru Preview 3 ile hazır gelmektedir. Ama diğer yaygın test motorları da kullanılabilir.
Esnek ve tak-çıkar özellikleri olan bir framework. Her bir bileşen, aynı işlevi yerine getiren farklı alternatifleri ile değiştirilebilir. Mevcut bileşenler kendi isteğimize göre özelleştirilebilir.
Güçlü bir URL yönlendirme (URL Routing) mekanizması var. Dosya uzanltılarına (asp, aspx vb.) ihtiyaç yoktur. SEO ve REST uyumlu URL adlandırmaları kullanılabilir.
View şablonları olarak ASP.NET sayfası (.aspx), kullanıcı kontrolü (.ascx) ya da masterpage (.master) kullanılabilir.
İç içe masterpage, in-line ifadeler (<%=%>), deklaratif sunucu kontrolleri, şablonlar, veri-bağlama (data-binding), yerelleştirme gibi mecut ASP.NET özelliklerini MVC ile de
Hiç yorum yok:
Yorum Gönder