WHY MVC is the future technology...
As many of you know, MVC is Model,View,Controller pattern. Model View Controller pattern was invented in a Smalltalk context at Xerox in late 1970s.
Why is this buzz about MVC:
MVC is a more organized framework compared to webforms. All good developers for 20 years have been using MVC pattern in their architecture/programming and are aware of the benefits it provides. Micrsoft has released ASP.NET MVC based on the MVC pattern. It's a new shift in programming paradigm compared to ASP.NET webforms development.
MVC has 3 roles. Controller---->Model----->View.
All requests are served by the controller. The ontroller gets the data and passes it to view. Without the controller, Model/View cannot function on their own.
Experienced developers using asp.net webforms may find it harder to adopt to MVC. ASP.NET webforms is so easy -- just dragging and dropping controls with rich visual studio support can even create a application without writing a single line of code. MVC will definetly be a superior technology compared to ASP.NET webforms.
MVC has the below advantages over Web forms.
MVC is light as viewstate data is missing, thereby reducing the page size.
Test tools are embedded in the MVC project making easier for Test driven development.
MVC architecture support has clean URLs and has its own routing system.
MVC is based on existing .Net framework, which means you can use some of your existing controls.
Most important - MVC is OPEN Source. You can download it from http://aspnet.codeplex.com.
MVC is stateless similar to web, unlike webforms.
Performance wise, MVC is a better chocie due to architecture, and bandwidth used will be less compared to webforms.
Core ASP.NET webform developers may see MVC is a little difficult and not as easy compared to webforms. ASP.NET MVC will offer same level of productivity and rich controls in a couple of new releases due to framework/ui rich control enchancements.
Having knowledge of MVC patterns and framework can make you a better developer.
Here are some reference links:
Overview : http://msdn.microsoft.com/en-us/library/dd381412(VS.100).aspx
Learn : http://www.asp.net/mvc
Example : http://www.codeproject.com/KB/aspnet/ASP_NET_MVC_WITH_EF.aspx