30 Ekim 2014 Perşembe

ASP.NET MVC Hakkında

Web uygulamaları için bu aralar daha çok .NET teknolojilerini kullanıyorum. Daha önceleri ASP.NET web form üzerinde uygulama geliştiriyordum. Ancak yeni teknolojilere uyum sağlama ve özelliklerini anlayabilmek için ASP.NET MVC kullanmaya başladım. Elimdeki yeni projeler için kullandıkça mantığını da kavramaya başladım. Ancak bazı alışkanlıkları terketmek bazen zor olabiliyor. Özellikle  web formlardaki postback olayı bazı işleri çok kolaylaştırıyordu. Ancak performansı kötü etkileyebilecek bir durumdu. Yinede sayfayı yenilediğiniz de form verilerinin dolu gelmesi işinizi çok kolaylaştırabiliyor .

Aslında web programcılığın temelinde stateless bir mimari bulunmakta. Bu durumu ASP.NET viewstate ile çözüyordu. MVC'de ise bu durumu kendiniz kodlama ile halletmeniz gerekiyor. Ancak bu beni client  tarafında sorunları çözmeme neden oldu.  Bütün  validation olaylarını javascript ile hallet bir sıkıntı yoksa servera post et. Tabi bu biraz güven açığı oluşturabilecek bir durum. Ancak bu sistemi dışarı kapalı ve bir kaç kişinin kullanacağı uygulamalarda sıkıntı çıkaracağını pek düşünmüyorum.

Ayrıca MVC ile Entity Framework daha koordineli çalışmakta. Ancak ORM araçları bana biraz ters gelmekte açıkçası. SQL dili ile sorgu tabanlı çalışmak çok daha esnek olduğunu söyleyebilirim.
Özellikle büyük verilerin bulunduğu tablolarda işlem yapmak için tam olarak nasıl çalıştığını bilmediğimiz Linq kütüphanesini kullanmak başımı ağırtabilir düşünüyorum. Küçük işler için bazen çok kullanışlı olabiliyor benim için.

Ayrıca web programlamasında artık mümkün olduğunca ajax sorgularıyla çalışmak gerekiyor. Kullanıcı her yapacağı değişiklik için sayfanın yenilenmesi(sadece sayfanın titremesi bile) sıkıntı yaratabiliyor. Uygulalar için kullandığım gridler artık tamamen javascript tabanlı. Telerik Kendo UI kütüphanesi oldukça kullanışlı bu işler için. Ancak lisans gerektiren bir kütüphane.

Hiç yorum yok:

Yorum Gönder