SlideShare a Scribd company logo
2
Most read
3
Most read
11
Most read
Model View Controller (MVC)
• Software architecture pattern that separates the model,
the user interface and control logic of an application in
three distinct components.
• MVC proposes the construction of three distinct components. One side
for the representation of information, and on the other hand for user
interaction.

One model

Many Views

Many Controllers
The Model
Representation of domain data.
Business logic
Persistence mechanism

The View
User Interface
Interaction elements

The Controller
Intermediary between Model and View
It maps user actions – model actions
Select the view and provide
information to itself
It is the specific representation of the
information with which the system
operates. Logic ensures the integrity of
data and allows to derive it.
Represents the model in a suitable format to interact and access the data,
usually called "User Interface" (GUI Java, HTML, XML).
It is the link between the view and the model, is responsible for receiving
and responding to events, typically user actions and invokes changes on
the model and probably in the view.
• Organization
• Rapid Application Development
• Reusing Code
• Parallel development
• It presents the same information in different ways.
• The views and application behavior should reflect the
manipulations of the data immediately.
• It allows different user interface standards or port it to other
environments where the application code should not be
affected.
• This model is not new, it was introduced in 1987 in the Smalltalk
programming language.
• With the boom of Web applications, it has proven to be a
programming mode that fits quite well with the internet, being
both the model and the controller executed server side, and the
view on the client side executed.
Control Flow
1.
2.
3.
4.

5.

The user performs an action on the interface.
The controller takes the input event.
The controller notifies the user action to the model,
which may involve a change of state of the model.
It generates a new view. The view takes the data
model.
The user interface waits for another user interaction,
which starts a new cycle.
Controller updates the
model
View alerts controller of a
particular event

View grabs model data and
updates itself

User interacts with a
view

Model alerts view that it has
changed
• It applies to all types of systems
• And technologies (Java, Ruby, Python, Perl, Flex, SmallTalk,. Net, etc..)
• Model: The model is made by the developer.
• View: Set of objects of classes that inherit from
java.awt.Component.
• Controller: The controller is the event processing thread, which
captures and propagates the event to the view and the model.
Treatment classes of events (sometimes as anonymous classes)
that implement EventListener type interfaces (ActionListener,
MouseListener, WindowListener, etc..).
Software Engineer
Instituto Tecnológico de Sonora
Sonora, México
@javierhumaran

More Related Content

What's hot (20)

PDF
MVC Architecture
Prem Sanil
 
PPT
Java Servlets
BG Java EE Course
 
PPT
MVC ppt presentation
Bhavin Shah
 
PPTX
MVC Framework
Ashton Feller
 
PPT
System Models in Software Engineering SE7
koolkampus
 
PPTX
Introduction to ASP.NET
Rajkumarsoy
 
PDF
Spring MVC Framework
Hùng Nguyễn Huy
 
PDF
SE_Lec 05_System Modelling and Context Model
Amr E. Mohamed
 
PPS
Java rmi
kamal kotecha
 
PPTX
Design Pattern - MVC, MVP and MVVM
Mudasir Qazi
 
PDF
Sequence diagram- UML diagram
Ramakant Soni
 
PPTX
ASP.NET MVC.
Ni
 
PPTX
object oriented methodologies
Amith Tiwari
 
PPT
Design patterns ppt
Aman Jain
 
PPTX
Common language runtime clr
SanSan149
 
PPT
ADO .Net
DrSonali Vyas
 
PPTX
Testing web application
jayashreesaravanan
 
PPTX
Event Handling in java
Google
 
PPTX
Introduction to asp.net
shan km
 
MVC Architecture
Prem Sanil
 
Java Servlets
BG Java EE Course
 
MVC ppt presentation
Bhavin Shah
 
MVC Framework
Ashton Feller
 
System Models in Software Engineering SE7
koolkampus
 
Introduction to ASP.NET
Rajkumarsoy
 
Spring MVC Framework
Hùng Nguyễn Huy
 
SE_Lec 05_System Modelling and Context Model
Amr E. Mohamed
 
Java rmi
kamal kotecha
 
Design Pattern - MVC, MVP and MVVM
Mudasir Qazi
 
Sequence diagram- UML diagram
Ramakant Soni
 
ASP.NET MVC.
Ni
 
object oriented methodologies
Amith Tiwari
 
Design patterns ppt
Aman Jain
 
Common language runtime clr
SanSan149
 
ADO .Net
DrSonali Vyas
 
Testing web application
jayashreesaravanan
 
Event Handling in java
Google
 
Introduction to asp.net
shan km
 

Similar to Model View Controller (MVC) (20)

PPTX
Architectural Design & Patterns
Inocentshuja Ahmad
 
PPT
Mvc 130330091359-phpapp01
Jennie Gajjar
 
PPTX
Mvc pattern and implementation in java fair
Tech_MX
 
PPT
Ppt of Basic MVC Structure
Dipika Wadhvani
 
PPTX
Model View Controller ext4
Pankaj Avhad
 
PDF
MVC - In Details
Mollah Nayeem Ahmed
 
PDF
MVC
Ravi Bansal
 
PPTX
Interaction-Oriented Architecture.pptx
Godwin Monserate
 
PPTX
Cs 1023 lec 2 (week 1) edit 1
stanbridge
 
PPTX
Cs 1023 lec 2 (week 1) edit 1
stanbridge
 
PPT
Web engineering - MVC
Nosheen Qamar
 
PPTX
Spring Web Presentation 123143242341234234
horiadobrin
 
PPSX
Software Design Patterns
alkuzaee
 
PPTX
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
QuickwayInfoSystems3
 
PPTX
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
QuickwayInfoSystems3
 
PDF
MVC Seminar Presantation
Abhishek Yadav
 
PPT
Asp.net,mvc
Prashant Kumar
 
PPT
Lec 4.ppt
Sami Mughal
 
PDF
IRJET- MVC Framework: A Modern Web Application Development Approach and Working
IRJET Journal
 
Architectural Design & Patterns
Inocentshuja Ahmad
 
Mvc 130330091359-phpapp01
Jennie Gajjar
 
Mvc pattern and implementation in java fair
Tech_MX
 
Ppt of Basic MVC Structure
Dipika Wadhvani
 
Model View Controller ext4
Pankaj Avhad
 
MVC - In Details
Mollah Nayeem Ahmed
 
Interaction-Oriented Architecture.pptx
Godwin Monserate
 
Cs 1023 lec 2 (week 1) edit 1
stanbridge
 
Cs 1023 lec 2 (week 1) edit 1
stanbridge
 
Web engineering - MVC
Nosheen Qamar
 
Spring Web Presentation 123143242341234234
horiadobrin
 
Software Design Patterns
alkuzaee
 
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
QuickwayInfoSystems3
 
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
QuickwayInfoSystems3
 
MVC Seminar Presantation
Abhishek Yadav
 
Asp.net,mvc
Prashant Kumar
 
Lec 4.ppt
Sami Mughal
 
IRJET- MVC Framework: A Modern Web Application Development Approach and Working
IRJET Journal
 
Ad

More from Javier Antonio Humarán Peñuñuri (10)

PDF
HTML5 Media Elements
Javier Antonio Humarán Peñuñuri
 
PDF
Buenas Prácticas para el uso de una Base de Datos
Javier Antonio Humarán Peñuñuri
 
PDF
XML, Webservice e RSS
Javier Antonio Humarán Peñuñuri
 
PDF
Segurança Em Computaçao Na Nuvem
Javier Antonio Humarán Peñuñuri
 
PDF
Cuantificación de las necesidades de un producto o servicio
Javier Antonio Humarán Peñuñuri
 
PDF
Bici Tour, Proyecto de Desarrollo Emprendedor
Javier Antonio Humarán Peñuñuri
 
PPTX
CPM, PERT Y GANTT
Javier Antonio Humarán Peñuñuri
 
Buenas Prácticas para el uso de una Base de Datos
Javier Antonio Humarán Peñuñuri
 
XML, Webservice e RSS
Javier Antonio Humarán Peñuñuri
 
Segurança Em Computaçao Na Nuvem
Javier Antonio Humarán Peñuñuri
 
Cuantificación de las necesidades de un producto o servicio
Javier Antonio Humarán Peñuñuri
 
Bici Tour, Proyecto de Desarrollo Emprendedor
Javier Antonio Humarán Peñuñuri
 
Ad

Recently uploaded (20)

PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
Python basic programing language for automation
DanialHabibi2
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
Python basic programing language for automation
DanialHabibi2
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 

Model View Controller (MVC)

  • 2. • Software architecture pattern that separates the model, the user interface and control logic of an application in three distinct components.
  • 3. • MVC proposes the construction of three distinct components. One side for the representation of information, and on the other hand for user interaction. One model Many Views Many Controllers
  • 4. The Model Representation of domain data. Business logic Persistence mechanism The View User Interface Interaction elements The Controller Intermediary between Model and View It maps user actions – model actions Select the view and provide information to itself
  • 5. It is the specific representation of the information with which the system operates. Logic ensures the integrity of data and allows to derive it.
  • 6. Represents the model in a suitable format to interact and access the data, usually called "User Interface" (GUI Java, HTML, XML).
  • 7. It is the link between the view and the model, is responsible for receiving and responding to events, typically user actions and invokes changes on the model and probably in the view.
  • 8. • Organization • Rapid Application Development • Reusing Code • Parallel development • It presents the same information in different ways. • The views and application behavior should reflect the manipulations of the data immediately. • It allows different user interface standards or port it to other environments where the application code should not be affected.
  • 9. • This model is not new, it was introduced in 1987 in the Smalltalk programming language. • With the boom of Web applications, it has proven to be a programming mode that fits quite well with the internet, being both the model and the controller executed server side, and the view on the client side executed.
  • 10. Control Flow 1. 2. 3. 4. 5. The user performs an action on the interface. The controller takes the input event. The controller notifies the user action to the model, which may involve a change of state of the model. It generates a new view. The view takes the data model. The user interface waits for another user interaction, which starts a new cycle.
  • 11. Controller updates the model View alerts controller of a particular event View grabs model data and updates itself User interacts with a view Model alerts view that it has changed
  • 12. • It applies to all types of systems • And technologies (Java, Ruby, Python, Perl, Flex, SmallTalk,. Net, etc..)
  • 13. • Model: The model is made by the developer. • View: Set of objects of classes that inherit from java.awt.Component. • Controller: The controller is the event processing thread, which captures and propagates the event to the view and the model. Treatment classes of events (sometimes as anonymous classes) that implement EventListener type interfaces (ActionListener, MouseListener, WindowListener, etc..).
  • 14. Software Engineer Instituto Tecnológico de Sonora Sonora, México @javierhumaran