SlideShare une entreprise Scribd logo
1  sur  10
Model-View-Controller
Architecture
Devan M.S.
What is MVC?

Architectural design pattern which works to
separate data and UI for a more cohesive and
modularized system
What is MVC?

Model represents the data model
− “Manages behavior and data of the application
domain”

View represents the screen(s) shown to the
user
− “Manages the graphical and/or textual output to the
portion of the bitmapped display that is allocated to
its application”

Controller represents interactions from the user
that changes the data and the view
− “Interprets the mouse and keyboard inputs from the
user, commanding the model and/or the view to
change as appropriate” (Burbeck)
How did it come about?

Presented by Trygve Reenskaug in 1979

First used in the Smalltalk-80 framework
− Used in making Apple interfaces (Lisa and
Macintosh)
How does it work?

User inputs a command

Controller handles input and updates model or
changes the view

View, which relies on model to show data to
user, updates if necessary

Rinse and Repeat
What is MVC?
What’s the point?

Provides a logical structure for heavily
interactive system

Adheres to good engineering design principles
and practices
− Information hiding, less coupling, simplicity, etc.
− Delegated control style
What’s the point?
 Just plain easier (even if it doesn’t look it)!
• Study shows that most introductory CS college
students tend to clump a UI program into one big
monolithic main class
• Unfamiliarity stems from student tendency to
program according to styles presented in textbooks
and not being introduced to design principles early
(Morse)
Conclusion

MVC is a sound architectural design for
almost any GUI application
Conclusion

MVC is a sound architectural design for
almost any GUI application

Contenu connexe

Tendances (19)

3 tier architecture
3 tier architecture3 tier architecture
3 tier architecture
 
Architecture logicielle #4 : mvc
Architecture logicielle #4 : mvcArchitecture logicielle #4 : mvc
Architecture logicielle #4 : mvc
 
Multi Tier Architecture
Multi Tier ArchitectureMulti Tier Architecture
Multi Tier Architecture
 
SysML Tutorial
SysML TutorialSysML Tutorial
SysML Tutorial
 
3 tier architecture
3 tier architecture3 tier architecture
3 tier architecture
 
N-Tier Application Architecture
N-Tier Application ArchitectureN-Tier Application Architecture
N-Tier Application Architecture
 
Presentation facade design pattern
Presentation facade design patternPresentation facade design pattern
Presentation facade design pattern
 
Facade pattern presentation(.pptx)
Facade pattern presentation(.pptx)Facade pattern presentation(.pptx)
Facade pattern presentation(.pptx)
 
An Inference Sharing Architecture for a More Efficient Context Reasoning
An Inference Sharing Architecture for a More Efficient Context ReasoningAn Inference Sharing Architecture for a More Efficient Context Reasoning
An Inference Sharing Architecture for a More Efficient Context Reasoning
 
Facade pattern
Facade patternFacade pattern
Facade pattern
 
PAC
PACPAC
PAC
 
3 tier architecture
3 tier architecture3 tier architecture
3 tier architecture
 
Design pattern
Design patternDesign pattern
Design pattern
 
3 tier architecture
3 tier architecture3 tier architecture
3 tier architecture
 
Facadepattern
FacadepatternFacadepattern
Facadepattern
 
VBA Macros Course Content
VBA Macros Course ContentVBA Macros Course Content
VBA Macros Course Content
 
3 Tier Architecture
3 Tier Architecture3 Tier Architecture
3 Tier Architecture
 
Layered Architecture - Software Architecture Pattern
Layered Architecture - Software Architecture PatternLayered Architecture - Software Architecture Pattern
Layered Architecture - Software Architecture Pattern
 
Model Driven Architectures
Model Driven ArchitecturesModel Driven Architectures
Model Driven Architectures
 

En vedette

Just a View: An Introduction To Model-View-Controller Pattern
Just a View:  An Introduction To Model-View-Controller PatternJust a View:  An Introduction To Model-View-Controller Pattern
Just a View: An Introduction To Model-View-Controller PatternAaron Nordyke
 
Una comunidad para construir ciudades inteligentes
Una comunidad para construir ciudades inteligentesUna comunidad para construir ciudades inteligentes
Una comunidad para construir ciudades inteligentesCorporacion Colombia Digital
 
Configuración de aplicaciones para momentos concretos del día
Configuración de aplicaciones para momentos concretos del díaConfiguración de aplicaciones para momentos concretos del día
Configuración de aplicaciones para momentos concretos del díaCorporacion Colombia Digital
 
Diseñe gráficos e impresiones como un profesional
Diseñe gráficos e impresiones como un profesionalDiseñe gráficos e impresiones como un profesional
Diseñe gráficos e impresiones como un profesionalCorporacion Colombia Digital
 
Solución de cuidado personal al alcance de una app
Solución de cuidado personal al alcance de una appSolución de cuidado personal al alcance de una app
Solución de cuidado personal al alcance de una appCorporacion Colombia Digital
 
Preparación virtual en competencias y habilidades para las Pruebas Saber
Preparación virtual en competencias  y habilidades para las Pruebas SaberPreparación virtual en competencias  y habilidades para las Pruebas Saber
Preparación virtual en competencias y habilidades para las Pruebas SaberCorporacion Colombia Digital
 
Padres interesados en cuidar a sus hijos en Internet
Padres interesados en cuidar a sus hijos en InternetPadres interesados en cuidar a sus hijos en Internet
Padres interesados en cuidar a sus hijos en InternetCorporacion Colombia Digital
 
Redes sociales para la gestión de equipos de trabajo
Redes sociales para la gestión de equipos de trabajoRedes sociales para la gestión de equipos de trabajo
Redes sociales para la gestión de equipos de trabajoCorporacion Colombia Digital
 
Comunicación efectiva entre instituciones educativas, profesores, padres y al...
Comunicación efectiva entre instituciones educativas, profesores, padres y al...Comunicación efectiva entre instituciones educativas, profesores, padres y al...
Comunicación efectiva entre instituciones educativas, profesores, padres y al...Corporacion Colombia Digital
 
¿Anuncios en Facebook? 5 claves para optimizar la publicidad
¿Anuncios en Facebook? 5 claves para optimizar la publicidad¿Anuncios en Facebook? 5 claves para optimizar la publicidad
¿Anuncios en Facebook? 5 claves para optimizar la publicidadCorporacion Colombia Digital
 

En vedette (20)

Just a View: An Introduction To Model-View-Controller Pattern
Just a View:  An Introduction To Model-View-Controller PatternJust a View:  An Introduction To Model-View-Controller Pattern
Just a View: An Introduction To Model-View-Controller Pattern
 
MVC architecture
MVC architectureMVC architecture
MVC architecture
 
Mashups de carátulas de álbumes musicales
Mashups de carátulas de álbumes musicalesMashups de carátulas de álbumes musicales
Mashups de carátulas de álbumes musicales
 
Cinco aplicaciones básicas para los viajeros
Cinco aplicaciones básicas para los viajerosCinco aplicaciones básicas para los viajeros
Cinco aplicaciones básicas para los viajeros
 
“ICT in Colombia”
 “ICT in Colombia” “ICT in Colombia”
“ICT in Colombia”
 
Una comunidad para construir ciudades inteligentes
Una comunidad para construir ciudades inteligentesUna comunidad para construir ciudades inteligentes
Una comunidad para construir ciudades inteligentes
 
Presentation2 vers3
Presentation2 vers3Presentation2 vers3
Presentation2 vers3
 
Configuración de aplicaciones para momentos concretos del día
Configuración de aplicaciones para momentos concretos del díaConfiguración de aplicaciones para momentos concretos del día
Configuración de aplicaciones para momentos concretos del día
 
Diseñe gráficos e impresiones como un profesional
Diseñe gráficos e impresiones como un profesionalDiseñe gráficos e impresiones como un profesional
Diseñe gráficos e impresiones como un profesional
 
MVC
MVCMVC
MVC
 
Solución de cuidado personal al alcance de una app
Solución de cuidado personal al alcance de una appSolución de cuidado personal al alcance de una app
Solución de cuidado personal al alcance de una app
 
Cloud Services & the Development of ISO/IEC 27018
Cloud Services & the Development of ISO/IEC 27018Cloud Services & the Development of ISO/IEC 27018
Cloud Services & the Development of ISO/IEC 27018
 
What is MVC?
What is MVC?What is MVC?
What is MVC?
 
Lean startup: convierta su idea en un negocio
Lean startup: convierta su idea en un negocioLean startup: convierta su idea en un negocio
Lean startup: convierta su idea en un negocio
 
Preparación virtual en competencias y habilidades para las Pruebas Saber
Preparación virtual en competencias  y habilidades para las Pruebas SaberPreparación virtual en competencias  y habilidades para las Pruebas Saber
Preparación virtual en competencias y habilidades para las Pruebas Saber
 
Padres interesados en cuidar a sus hijos en Internet
Padres interesados en cuidar a sus hijos en InternetPadres interesados en cuidar a sus hijos en Internet
Padres interesados en cuidar a sus hijos en Internet
 
Why MVC?
Why MVC?Why MVC?
Why MVC?
 
Redes sociales para la gestión de equipos de trabajo
Redes sociales para la gestión de equipos de trabajoRedes sociales para la gestión de equipos de trabajo
Redes sociales para la gestión de equipos de trabajo
 
Comunicación efectiva entre instituciones educativas, profesores, padres y al...
Comunicación efectiva entre instituciones educativas, profesores, padres y al...Comunicación efectiva entre instituciones educativas, profesores, padres y al...
Comunicación efectiva entre instituciones educativas, profesores, padres y al...
 
¿Anuncios en Facebook? 5 claves para optimizar la publicidad
¿Anuncios en Facebook? 5 claves para optimizar la publicidad¿Anuncios en Facebook? 5 claves para optimizar la publicidad
¿Anuncios en Facebook? 5 claves para optimizar la publicidad
 

Similaire à MVC Architecture Explained

Mvc pattern and implementation in java fair
Mvc   pattern   and implementation   in   java fairMvc   pattern   and implementation   in   java fair
Mvc pattern and implementation in java fairTech_MX
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1stanbridge
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1stanbridge
 
Ppt of Basic MVC Structure
Ppt of Basic MVC StructurePpt of Basic MVC Structure
Ppt of Basic MVC StructureDipika Wadhvani
 
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptxWhat Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptxQuickwayInfoSystems3
 
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptxWhat Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptxQuickwayInfoSystems3
 
Software Design Patterns
Software Design PatternsSoftware Design Patterns
Software Design Patternsalkuzaee
 
MVC Architecture
MVC ArchitectureMVC Architecture
MVC ArchitecturePrem Sanil
 
Verbal+Visual: MVC Structure. Model, View, Controller.
Verbal+Visual: MVC Structure.  Model, View, Controller.Verbal+Visual: MVC Structure.  Model, View, Controller.
Verbal+Visual: MVC Structure. Model, View, Controller.Anshey Bhatia
 
Interaction-Oriented Architecture.pptx
Interaction-Oriented Architecture.pptxInteraction-Oriented Architecture.pptx
Interaction-Oriented Architecture.pptxGodwin Monserate
 
MVC(Model View Controller),Web,Enterprise,Mobile
MVC(Model View Controller),Web,Enterprise,MobileMVC(Model View Controller),Web,Enterprise,Mobile
MVC(Model View Controller),Web,Enterprise,Mobilenaral
 
MVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVCMVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVCAnton Krasnoshchok
 
Struts(mrsurwar) ppt
Struts(mrsurwar) pptStruts(mrsurwar) ppt
Struts(mrsurwar) pptmrsurwar
 
Pattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecturePattern oriented architecture for web based architecture
Pattern oriented architecture for web based architectureshuchi tripathi
 
1.Design Modelling for Web Apps.pdf software engineering
1.Design Modelling for Web Apps.pdf software engineering1.Design Modelling for Web Apps.pdf software engineering
1.Design Modelling for Web Apps.pdf software engineeringSukhmanSingh91
 
Model View Controller(MVC)
Model View Controller(MVC)Model View Controller(MVC)
Model View Controller(MVC)Himanshu Chawla
 

Similaire à MVC Architecture Explained (20)

Mvc pattern and implementation in java fair
Mvc   pattern   and implementation   in   java fairMvc   pattern   and implementation   in   java fair
Mvc pattern and implementation in java fair
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1
 
Cs 1023 lec 2 (week 1) edit 1
Cs 1023  lec 2 (week 1) edit 1Cs 1023  lec 2 (week 1) edit 1
Cs 1023 lec 2 (week 1) edit 1
 
Ppt of Basic MVC Structure
Ppt of Basic MVC StructurePpt of Basic MVC Structure
Ppt of Basic MVC Structure
 
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptxWhat Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
 
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptxWhat Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
What Are The Benefits Of Using MVC Framework In ASP.NET Development.pptx
 
Software Design Patterns
Software Design PatternsSoftware Design Patterns
Software Design Patterns
 
MVC Architecture
MVC ArchitectureMVC Architecture
MVC Architecture
 
MVC
MVCMVC
MVC
 
Verbal+Visual: MVC Structure. Model, View, Controller.
Verbal+Visual: MVC Structure.  Model, View, Controller.Verbal+Visual: MVC Structure.  Model, View, Controller.
Verbal+Visual: MVC Structure. Model, View, Controller.
 
Interaction-Oriented Architecture.pptx
Interaction-Oriented Architecture.pptxInteraction-Oriented Architecture.pptx
Interaction-Oriented Architecture.pptx
 
MVC(Model View Controller),Web,Enterprise,Mobile
MVC(Model View Controller),Web,Enterprise,MobileMVC(Model View Controller),Web,Enterprise,Mobile
MVC(Model View Controller),Web,Enterprise,Mobile
 
MVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVCMVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVC
 
J2 ee archi
J2 ee archiJ2 ee archi
J2 ee archi
 
Jsp with mvc
Jsp with mvcJsp with mvc
Jsp with mvc
 
Struts(mrsurwar) ppt
Struts(mrsurwar) pptStruts(mrsurwar) ppt
Struts(mrsurwar) ppt
 
MVC Web Application
MVC Web Application MVC Web Application
MVC Web Application
 
Pattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecturePattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecture
 
1.Design Modelling for Web Apps.pdf software engineering
1.Design Modelling for Web Apps.pdf software engineering1.Design Modelling for Web Apps.pdf software engineering
1.Design Modelling for Web Apps.pdf software engineering
 
Model View Controller(MVC)
Model View Controller(MVC)Model View Controller(MVC)
Model View Controller(MVC)
 

Dernier

Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 

Dernier (20)

Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 

MVC Architecture Explained

  • 2. What is MVC?  Architectural design pattern which works to separate data and UI for a more cohesive and modularized system
  • 3. What is MVC?  Model represents the data model − “Manages behavior and data of the application domain”  View represents the screen(s) shown to the user − “Manages the graphical and/or textual output to the portion of the bitmapped display that is allocated to its application”  Controller represents interactions from the user that changes the data and the view − “Interprets the mouse and keyboard inputs from the user, commanding the model and/or the view to change as appropriate” (Burbeck)
  • 4. How did it come about?  Presented by Trygve Reenskaug in 1979  First used in the Smalltalk-80 framework − Used in making Apple interfaces (Lisa and Macintosh)
  • 5. How does it work?  User inputs a command  Controller handles input and updates model or changes the view  View, which relies on model to show data to user, updates if necessary  Rinse and Repeat
  • 7. What’s the point?  Provides a logical structure for heavily interactive system  Adheres to good engineering design principles and practices − Information hiding, less coupling, simplicity, etc. − Delegated control style
  • 8. What’s the point?  Just plain easier (even if it doesn’t look it)! • Study shows that most introductory CS college students tend to clump a UI program into one big monolithic main class • Unfamiliarity stems from student tendency to program according to styles presented in textbooks and not being introduced to design principles early (Morse)
  • 9. Conclusion  MVC is a sound architectural design for almost any GUI application
  • 10. Conclusion  MVC is a sound architectural design for almost any GUI application