Wednesday, April 11, 2012

ASP.NET MVC Framework

Everyone is familiar with MVC i.e. at least we have been hearing this term for long in software engineering. I never been to MVC but now decided to learn basics of MVC. So what exactly is MVC is all about?

Simply by expansion it is Model View Controller. It is an architectural pattern which describes the interaction between users and application in three different roles Model (business logic), View (User interface), Controller (User input). Let’s now discuss how the interactions occur in MVC as follows

  • User interacts with the user interface with some input action (like button click)
  • Controller handles the input event and converts into an action that model knows
  • Model’s state is changed with the controller’s notification
  • View queries model to generate the Model to generate the user interface

MVC facilitates a separation of concerns, maintainability and testability of the application development.

Now ASP.NET MVC Framework is a web application framework which implements MVC pattern. So let’s see the few facts about ASP.NET MVC framework as follows

  • It supports separation of application tasks, testability and test driven development. All contracts are interface based and easy to mock and unit test.
  • Easy to extend, customize and plug our own components.
  • It has a powerful URL mapping component which helps to provide a SEO friendly URLs
  • Still we have the advantage of using existing ASP.NET page, user controls and master pages as well.
  • Supports all the existing features like windows and forms authentication, membership and roles concept etc.
  • It does not use view state or server based controls and hence provide complete flexibility for developers
  • It relies n Front controller pattern and hence processes all requests through single controller
  • Better support for test driven development.

It’s all depends on our decision whether to go for MVC based Web application or Web forms based Web application. Keep watching this blog for more posts in MVC on a daily basis J

No comments:

Post a Comment

Installing ASP.NET MVC

Installing ASP.NET MVC Before we dive deep into the ASP.NET MVC, let’s install it our development machine. This is very straight forwa...