Why choose ASP.NET MVC as a web development platform
Microsoft has recently released their final version of ASP.NET MVC.
A few months ago I investigated some time in studying this new framework (while it was in beta 3).
After studying it, Core decided to migrate all current webdevelopment to this new framework, and all future web-based projects will be written in this technology as well.
Since most people do not know what ASP.NET MVC is and why it should be used in favor of regular ASP.NET,I would like to clarify this choice a little bit.
For the technical people, I am posting a link to an in-depth introduction about ASP.NET MVC, which will let you decide for yourself :
An in-depth introduction to ASP.Net MVC bij Phil Haacked (PM for ASP.NET MVC)
For the less-technical people, I can only give you a few pointers, since it is a technical framework :
ASP.Net MVC is a new community-driven open framework by Microsoft that leverages ASP.NET to a very "WEB 2.0"-friendly,"ruby on rails"-like toolkit.
The biggest assets are :
- MVC (Mode-View-Controller) paradigm : makes sure that your sourcecode is very-well structured, and usually almost the same for each ASP.NET MVC project. In other words, if a developper knows ASP.NET MVC, the project will look familiar to him/her...
- Modularity : makes sure you can exchange components for other ones without many hassle. (I.e. to extend functionality/fix bugs/improve performance.)
- The layout/business logic/back-end etc can be developed in parallel with each other without much inteference.
While it is still possible to make a mess of your code, in ASP.Net MVC it is less likely to happen.
Please note that this framework does not replace a development framework or the need for a decent software architecture; here at Core, for example, we still develop our business-layers in a separate project (using IOC/Castle windsor and IRepository<T>/Fluent-NHibernate/Linq to name a few buzzwords).
I do hope this clarifies the choice for ASP.NET MVC a little bit.