16 Ağustos 2018 Perşembe

Mühendisler Dünyası

ASP.NET MVC Versiyon Tarihçesi

Microsoft ilk ASP.NET MVC tanıtımını .Net 3.5 ile yapmıştır. Bu tarihten itibaren MVC teknolojisine bir çok özellik eklenmiş ve platformu kullanan yazılım geliştiricilerin işlerini kolaylaştırmıştır.

ASP.NET MVC Versiyon Tarihçesi
Bu makalede tablo halinde ASP.NET MVC sürümleri tablo halinde verilmiştir. Tabloda ASP.NET MVC versiyonu, Visual Studio uyumu, .net versyionu, yayınlanma tarihi ve versiyonlarla birlikte gelen özellikler bilgisi verilmiştir. Tarihsel gelişim anlamında var olan özellikleri incelemek aynı zamanda mevcut sürümlerdeki özellikleri de keşfetmenize yardımcı olacaktır. 

ASP.NET MVC Tarihsel Gelişim Tablosu

VersiyonVisual Studio.Net VersiyonuYayınlanma TarihiEklenen Özellikler (Yenilikler)
MVC 1.0VS2008.Net 3.513 Mart 2009
  • MVC architecture with webform engine
  • Routing
  • HTML Helpers
  • Ajax Helpers
  • Auto binding
MVC 2.0VS 2008,.Net 3.5/4.010 Mart 2010
  • Area
  • Asynchronous controller
  • Html helper methods with lambda expression
  • DataAnnotations attributes
  • Client side validation
  • Custom template
  • Scaffolding
MVC 3.0VS 2010.Net 4.013 Ocak 2011
  • Unobtrusive javascript validation
  • Razor view engine
  • Global filters
  • Remote validation
  • Dependency resolver for IoC
  • ViewBag
MVC 4.0VS 2010 SP1,
VS 2012
.NET 4.0/4.515 Ağustos 2012
  • Mobile project template
  • Bundling and minification
  • Support for Windows Azure SDK
MVC 5.0VS 2013.NET 4.517 Ekim 2013
  • Authentication filters
  • Bootstrap support
  • New scaffolding items
  • ASP.Net Identity
MVC 5.2 -
Güncel Versiyon
VS 2013.NET 4.528 Ağustos 2014
  • Attribute based routing
  • bug fixes and minor features update
Okumaya Başla

15 Ağustos 2018 Çarşamba

Mühendisler Dünyası

Asp.net MVC İle Web Projeleri Geliştirmek İçin Hangi Ön Bilgilere İhtiyaç Vardır?

Bu soru genel olarak  Asp.net MVC ile proje geliştirmeye başlayanların ilk sorduğu sorulardan bir tanesidir. Bu makalemde MVC temellerine de değinerek konuyu ince ayrıntılarıyla birlikte anlatmaya çalışacağım.

Asp.net MVC teknolojisi bir anlamda client side ve server side geliştirme süreçlerini bir araya toplayan sunucu temelli web uygulamaları geliştirme platformudur. Kendine özgü bir web uygulaması geliştirme dili olsa da (razor) bu dili öğrenebilmek ve mantıkla kullanabilmek için web dünyasındaki temel 3 dile (HTML, CSS ve JavaScript) hakim olmanız gerekiyor. Aynı zamanda sunucu tabanlı bir web framework olduğu için kullanacağınız dile göre C# veya Visual Basic'e aşina olmanız gerekir. Bunlarla birlikte ise veritabanı ve ORM kültürünü benimsemiş olmanız ve nesne yönelimli programlama kültürünü projelerinizde aktif kullanıyor olmanız gerekmektedir. Bu kesinlikle web uygulama geliştirmeye Asp.net MVC ile başlanmaz anlamına gelmez. Ama yukarıda bahsettiğim ve aşağıda maddeler halinde detaylandıracağım konulara başarılı bir proje geliştirmek için zaten ihtiyaç olacağı için diğer konuları da Asp.net MVC öğrenirken geliştirmeniz mümkündür. Sadece öğrenme sürecinde araya virgüller koymanız gerekecektir.




Okumaya Başla
Mühendisler Dünyası

MVC Tarihçesi

MVC terimi özellikle son yıllarda popülerliğini artırsa da aslında 1970'ci yıllara ortaya çıkmış bir proje tasarım kalıbıdır.


MVC şablonu ve bu modeli temel alarak gelişen arayüz ile ilgili şablonların yaratılması ve ilk bahseden kişiler aşağıda gösterilmektedir : 
  • MVC (Model-View-Controller) : 1979 , Trygve Reenskaug 
    • MVP (Model-View-Presenter) : 1996, Mike Potel (IBM)
      • Presentation Model (veya Application Model) : 2004 , Martin Fowler
        • Model-View-ViewModel  : 2005, John Gossman (Windows Presentation Foundation Geliştiricisi)



Asp.Net MVC 1.0
MVC’nin ilk resmi yayın tarihi 2009 yılı olmuştur. Bünyesinde barındırdığı ve günümüze kadar gelen en temel özellikleriyle piyasaya sürülmüştür. Bu özellikler aşağıdaki gibi sıralayabiliriz.
  • Mvc  yapısı, kendine özgü bir yaşam döngüsü, gelen isteklerin(request) cevaplanması (Controller katmanı) ve sonucun çıktı halinde kullanıcıya sunulması(View katmanı).
  • Routing kavramı.
  • HTML etiketlerini oluşturmayı sağlayan helper kavramı.
  • Ajax tabanlı linkler ve formlar.
  • Post edilen formların bilgilerini otomatik olarak .Net nesnelerine bağlayan Model Binder ve modele ait doğrulamaları yapan Model Validation kavramı.
Bu web alanında atılan büyük bir adımdı. Fakat kurumsal ve büyük çaplı projeler için altyapının biraz daha geliştirilmesi gerekiyordu. Neyse ki Asp.net MVC Microsoft cephesinin ilk genişletilebilir ürünüydü. Çoğu temel bileşen genişletilebilir hatta tamamen kendi oluşturacağınız yapılarla değiştirilebilir esnekliğe sahiptir. Örneğin DefaultModelBinder yeterli esnekliğe sahip değilse kendi özel Model Binder sınıfımızı geliştirebiliriz.

Asp.net MVC 2.0

2010 yılında yeni sürüm olan 2.0 sürümü yayınlandı. Bu sürümde verimliliği arttırmak ve büyük uygulamalarda bakımı ve gliştirilebilirliği kolaylaştırmak amaçlanıyordu. Yeni eklenen özellikler:
  • Server ve client tarafında attribute tabanlı Model validation.
  • Büyük uygulamara için uygulama içinde başka bir uygulama  tanımlayabilen Area kavramı.
  • Model ve attribute tabanlı olacak şekilde form ve view sayfalarını otomatik oluşturulabilen Html Templated Helpers.
  • Asenkron Controller.
  • Lambda tabanlı Html Helper.
Bu versiyonda birkaç özellik önceki versiyondaki mevcut olanlara ek olarak tanıtıldı. Bunlar:
  • Model Metadata Provider ve  Model Validation Provider.
  • Validation Attribute ve validation mantığı.
  • Custom teplates.

Asp.net MVC 3.0

2011 yılında yayınlanan bu sürümde framework üzerinde köklü bir değişkliğer gidilmedi. Sadece süsleme tarzında kullanım kolylıkları sunan birtakım düzenlemeler yapıldı. MVC3 yenilikleri şu şekilde sıralayabiliriz.
  • Visual Studio içersine dahil edilen MvcScaffolding sayesinde CRUD(Create Read Updare Delete) işlemlerini yapacak Controller ve bu metodları kullanacak View sayfaları model bazlı olarak otomatik oluşturulabiliyor.
  • JQuery, JQuery UI gibi javascript kütüphaneleri projelere otomatik dahil ediliyor ve NuGet paketleri sayesinde anında güncellenebiliyor.
  • Entity Framework Code First varsayılan data access kütüphanesi olarak sunuluyor.
  • HTML 5 desteği.
  • Razor view engine.
Okumaya Başla