|
Model view controller (MVC) is a software architecture, currently considered an architectural pattern used in software engineering. The pattern isolates "domain logic" (the application logic for the user) from the user interface (input and presentation), permitting independent development, testing and maintenance of each (separation of concerns).
FIG ABOVE : MVC DESIGN PATTERN
Model-view-controller concept. The solid line represents a direct association, the dashed an indirect association (via an observer for example).
OBSERVER : The observer pattern (a subset of the publish/subscribe pattern) is a software design pattern in which an object, called the subject, maintains a list of its dependents, called observers, and notifies them automatically of any state changes, usually by calling one of their methods. It is mainly used to implement distributed event handling systems.
FIG ABOVE : MVC Pattern Request Flow
Or lets say The Model-View-Controller Pattern is an architectural design principle that spearates the components of a web application. This separation gives you more control over the individual parts of the application, which enables you to easily modify , develop and test them.
I know a loat of images but they are all telling the same thing. separation for Model / View & Controller. Or Clear Separation of User Interface or View , Business Logic or Model and IO the controller.
It is not a replacment for web forms . It is lets say a complementary technology or an alternative to form based development. But Personally I have moved my team to fully developing applications in mvc for web.
In an ASP.NET Web site, URLs typically map to files that are stored on disk (usually .aspx files). These .aspx files include markup and code that is processed in order to respond to the request.
The ASP.NET MVC framework maps URLs to server code differently than an ASP.NET Web Forms page. Instead of mapping URLs to ASP.NET pages or handlers, the framework maps URLs to controller classes. Controller classes handle incoming requests, such as user input and interactions, and execute appropriate application and data logic, based on user input. A controller class typically calls a separate view component that generates HTML output as the response.
|