Wednesday, 18 December 2013

Difference between regular web application and MVC

Advantages of Web Forms
1)    ViewState - A ViewState that allows you to persist objects and values throughout your application.
2)    Rapid Application Development - Very little learning curve, user-friendly and easy to get an application up and running quickly.
3)    Controls and Toolbox - A huge Toolbox with basically any major Control that you would need for developing applications.
4)    Maturity - Web Forms have been around over 10 years so there are a lot of communities and resources available and many bugs and issues have been addressed.
5)    Code Generation - Web Forms makes it quite a bit easier to not worry about wiring up different events and methods as much of this can be handled automatically.
6)    Familarity - Developers coming from a Windows Forms background will find themselves very familar with Web Forms and can easily jump into development.

Advantages of MVC (both MVC3 and MVC4)
1)    Separation of Concerns - The MVC Paradigm of Model-View-Controller allows you to more easily separate all of your concerns within your application. This can lead to improved scalability within applications.
2)  Testing - MVC is designed and built for Testing-Driven Development and allows for applications to be very easily tested to help secure against error and unexpected behavior.
3)    Integration with Client-Side Tools - The MVC pattern easily allows client-side tools such as jQuery to be seamlessly integrated. This can allow you to create very rich user interfaces for your applications.
4)    Statelessness - Although one of the main advantages of Web Forms, this allows you to adhere to a more stateless format consistent with the rest of the web.
5)   Control and Flexibility - MVC allows developers to have complete control over their applications as the developer doesn't rely on Controls to automatically generate the appropriate HTML, which after switching to MVC can often be seen as "bloated". The developer will write their own HTML instead of having it generated for them.

6)    Search Engine Optimization - The use of RESTful URLs within MVC makes it friendlier for being accessed through search engines. 

No comments:

Post a Comment