Wednesday, March 21, 2007

What is MVC?


MVC refers to Model View Architecture. It is an Architectural Pattern used in Software Engineering.



The Model is an interface to the Backend System(or database) and is resposible for providing data to the entire Application.

A View is responsible for processing the presentation logic and for the browser output. In simple words, a View is what the end user see on his/her Browser.

A Controller handles the dataflow between the model and the view in both directions.

So, basically, in MVC, a Controller receives a request, takes on action on that request(updates the model, or retrieves data from the model), and passes control to the corresponding view.

The main advantage of MVC architecture is that it makes it easier to separate the work. ie. It allows programmers to work on View separately from the Controller.

MVC architecture was first implemented in Smalltalk-80. Nowadays, it is being used in SAP Webdynpro.

Check out some interesting Questions related to Software Architecture in the Forthcoming Posts…

No comments: