MVC (Model-View-Controller)

MVC (Model-View-Controller)
Written by Asif MahmoodJuly 2, 2020
3 min read
Backend Development
13 VIEWS 5 LIKES 0 DISLIKES SHARE
5 LIKES 0 DISLIKES 13 VIEWS SHARE
Asif Mahmood

Web Developer

The Model-View-Controller (MVC) is an architectural pattern that separates an application into three main logical components: the model, the view, and the controller.

MVC stands for "Model-View-Controller." MVC is an application design model comprised of three interconnected parts. They include the model (data), the view (user interface), and the controller (processes that handle input).

The MVC model or "pattern" is commonly used for developing modern user interfaces. It is provides the fundamental pieces for designing a programs for desktop or mobile, as well as web applications. It works well with object-oriented programming, since the different models, views, and controllers can be treated as objects and reused within an application.

Below is a description of each aspect of MVC:

1. Model

A model is data used by a program. This may be a database, file, or a simple object, such as an icon or a character in a video game.

2. View

A view is the means of displaying objects within an application. Examples include displaying a window or buttons or text within a window. It includes anything that the user can see.

3. Controller

A controller updates both models and views. It accepts input and performs the corresponding update. For example, a controller can update a model by changing the attributes of a character in a video game. It may modify the view by displaying the updated character in the game.

The three parts of MVC are interconnected (see diagram). The view displays the model for the user. The controller accepts user input and updates the model and view accordingly. While MVC is not required in application design, many programming languages and IDEs support the MVC architecture, making it an common choice for developers.

php
laravel
web applications
mvc
13 VIEWS 5 LIKES 0 DISLIKES SHARE
5 LIKES 0 DISLIKES 13 VIEWS SHARE
Was this blog helpful?
You must be Logged in to comment
Code Block

1 Comments

Minaz Uddin

informative content

Asif Mahmood
Web Developer
1 Blog Posts
0 Discussion Threads
Trending Categories
37
Software1
DevOps15
Frontend Development4
Backend Development2
Server Administration1
Linux Administration5
Data Center0
Sentry0
Terraform2
Ansible0
Docker3
Penetration Testing0
Kubernetes0
NGINX0
JenkinsX0
Jenkins2
SSL0
Ethical-Hacking1
Python0
NodeJs1
RedHat0
Github0
AngularJs0
Google Cloud Platform (GCP)0
SonarQube0
Amazon Web Service (AWS)0
VMware0
Blockchain0
Snipe-IT1
MongoDB0