Overview Of ASP.NET MVC

What is MVC?

MVC stands for Model View Controller. It is an architectural pattern to develop enterprise applications. It is not a Microsoft technology, whether it is a common design pattern that is used to create web applications. It is used to create structured user-oriented applications. MVC is most similar to MVVM [Model View View-Model] but not completely.

  • M: Model
  • V: View
  • C: Controller

The following is a detailed description.

  1. Model: A model is an entity class that encapsulates the properties and the behaviors of the domain. It also contains the business logic. MVC components use the Model to perform logic. Model is basically represented to data objects like it can be business logic, validation, or data access logic. The view and the controller both can access the Model.
  2. View: It’s a GUI. The view is nothing but a User Interface. Basically, the user interacts with a View. View is used to display data, add data, or modify data. The view is rendered on the browser. It renders the data in html form. So, we can say, a view is a result that a user can see while interacting with a web application.
  3. Controller: It handles the request coming from the users and as per data it connects with the Model performs some logic and displays data on View. So, basically, it validates the user request and process data as per requirement.
    Controller

What is ASP.NET MVC?

ASP.NET MVC is a framework that supports MVC Design Patterns to develop different kinds of applications. It is a Microsoft Open Source Framework and also lightweight to other frameworks. Nowadays it is the most popular framework in web development because it supports and provides us with many features such as Routing, Unit Test Capability, Bundling and Minification, Separation of the code, etc. Loose coupling is the main concern in using ASP.NET MVC.

So, ASP.NET is A web application framework that is designed with separations of concerns and testability in mind.

Asp.Net MVC Advantages

It provides us with a number of benefits as compared to other programming approaches. The following are the features that force us to use ASP.NET MVC.

  • Development: It supports Loose Coupling which means we can create a project with multiple components; these components will not be dependent on each other. If there is some complication in one component it will not affect the development of another component. So, this feature makes development very easy for developers.
  • Testability: It is a Test Driven Development (TDD). As you know MVC is loosely coupled so we can test a particular component without affecting other components. If one component is going to be tested and it is dependent on other components then we can pass input as a mock component and test the particular component. So, Mocking makes testing very easy.
  • Performance: ASP.NET MVC does not support normal web form features like ViewState, Postback, etc. So, there is no need to maintain the state of control. It makes it faster in performance.
  • Full HTML Control: It also does not support any server control and only supports pure HTML input control which makes it faster to normal web form.
  • Extensibility: It supports multiple view engines like Aspx and Razor. If you want to create your own engine, you can create it.

Thanks for reading the article. Hope you enjoyed it.


Similar Articles