Follow the latest thinking from people working at the cutting edge of innovation and have your say on everything from economic policy to robot overlords.
by Abdul Raheem
After the launch of Asp.net MVC in 2008 by Microsoft there is a lot of fuss and discussions among the developers and as well among the clients that which platform is better.
So in this article we will try to figure out what are advantages and disadvantages of both of these technologies.
ASP.NET is a Microsoft’s Web application framework built on Common language runtime for building dynamic web sites using one of the programming languages like C#, VB.NET etc. It supports 2 models Web Forms and ASP.NET MVC.
ASP.NET Web Forms is a part of the ASP.NET web application framework in Visual Studio.
Web forms can be written using a combination of HTML, client-script, server controls, and server code. When users request a page, it is compiled and executed on the server by the framework, and then the framework generates the HTML markup that the browser can render.
An ASP.NET Web Forms page presents information to the user in any browser or client device.
Using Visual Studio, you can create ASP.NET Web Forms. The Visual Studio Integrated Development Environment (IDE) lets you drag and drop server controls to lay out your Web Forms page. You can then easily set properties, methods, and events for controls on the page or for the page itself.
These properties, methods, and events are used to define the web page’s behavior, look and feel, and so on. To write server code to handle the logic for the page, you can use a .NET language like Visual Basic or C#.
The MVC design pattern was not invented by Microsoft. Rather, it has been around for upwards of 30 years, having been first introduced around 1979. Since then, the methodology has been implemented by such well known platforms as Ruby on Rails, Apple’s Cocoa and Apache Struts. Only relatively recently has Microsoft added the MVC design, building atop the .NET framework.
As a result, .NET developers have the option to develop applications within the existing .NET world they already know but can eschew the lack of overall control offered by the drag & drop of Web Forms. With MVC they can embrace the same separation of concern (SOC) paradigm that has already proven to be successful in other frameworks.
Admittedly, not all MVC implementations are exactly the same, with slight differences existing between the different frameworks. For example, Microsoft’s implementation of MVC more closely resembles Rails and Django rather than either Apple’s Cocoa or even the original implementation of MVC, Smalltalk-80.
Web forms do not allow for multiple forms on a page, whereas MVC allows for any number of forms on the page.
Developers with backgrounds in PHP, Ruby, or Python, will find architectural and event methodologies similarities to those implemented in MVC
One big advantage is that Session usage is minimized so that the URL’s now become the drivers behind data maintenance.
SOC (separation of concern ) is encouraged and easier to implement.
Developer should be very much familiar with HTML and client side languages.
No one solution is an absolute better choice than the other. The application framework should be chosen based upon the needs and resources of the company doing the development. If you have a development cycle that requires faster than expected turnaround, then Web Forms might be the best option for your company.
If your development project has the time, money, and energy to develop an application from the ground up then MVC could potentially be the better option. Again, neither framework is the definite best option, but one could potentially be a better for your development team structure and resources. Segue has extensive experience with both frameworks and would be more than happy to help consult on your development decisions.