Design pattern Design patterns represent an important step in software abstraction and solutions for general development problems

. The Model-View-Controller (MVC) design pattern is used to design the system framework because it resolves issues with single module approach by dividing the problem into three categories. This design patterns is widely used in Object Oriented environments. The model-view-controller solves the problem by decoupling data access with business logic from data user presentation and interaction. It is often used to maintain multiple views of the same data. This model usually seen in web application where the view indicates the HTML page and controller as the codes which gather dynamic data and the model represented content which stored in a database. The functionality of each component in Model View Controller as following below:-


Model: It represents the data of an application¶s functionality and provides service to access the data. This model encapsulates the state in application and accessing data for manipulation. The data provided can be interfaced with many views without code redundancy and it is eases to reduce bugs.


View: It represents the presentation of an application and also to view queries of the model for its content. Besides that, it is ensure that the system will provide clear information and efficiency of use to interact with the system. A Model View Controller can have multiple views which are control by the controller. Example for view interface can be Web Forms, HTML, XML and any Windows forms.


Controller: The user requests will go through the controller before the application. The controller stops the requests from view and passes it to the model for further appropriate action. The controller reacts towards the user input and sets the model.

The biggest advantage of the MVC design pattern is that you have a nice isolation of these components/layers and you can change any one of them without the rest being affected. from the way the data is actually processed.Strength of MVC design patterns The main objective of the MVC design pattern is separation of concerns. implementing this pattern in such applications will have adverse effects in the application's performance and design. "You are building a Web application in Microsoft ASP. it isolates the application¶s data from how the data is actually processed by the application¶s business logic layer. extensibility. It facilitates de-coupling the application's layers. In this regard. Even if this pattern comes with a lot of advantages. . scalability and code re-use. It is easier to test code that implements this pattern. Here is the list of the major advantages of this pattern. rather.NET. It promotes better code organization. y y y y It provides a clean separation of concerns. the MSDN states. In other words. Firstly. there are distinct disadvantages too. it is too complex to implement and is not suitable for smaller application. It provides an isolation of the application¶s presentation layer that displays the data in the user interface.

. you need to separate different aspects of the program to reduce code duplication and to limit the propagation of change." This is where this design pattern fits in. based on the complexity of your application.and.

Sign up to vote on this title
UsefulNot useful