Le modèle MVC permet de séparer lors de la programmation la vue, le modèle par l'intermédiaire d'un contrôleur. L'objectif est de pouvoir séparer la partie métier de la partie graphique. Dans le cas où les données sont stockées dans une base de données, une étape intermédiaire DAO est aussi ajoutée. MVC Web : {{helloworld:design_pattern:mvc:mvc_39085_l.png|}} [[http://www.cuelogic.com/blog/hello-world-in-ruby-on-rails-and-folder-structure/|“Hello world” in Ruby on rails and folder structure – Cuelogic Blog]] {{ :helloworld:design_pattern:mvc:hello_world_in_ruby_on_rails_and_folder_structure_2020-04-29_6_57_10_pm_.html |Archive du 01/07/2013 le 29/04/2020}} MVC application bureau : {{helloworld:design_pattern:mvc:399354.png|}} [[https://openclassrooms.com/courses/apprenez-a-programmer-en-java/mieux-structurer-son-code-le-pattern-mvc|Mieux structurer son code _ le pattern MVC - Apprenez à programmer en Java]] {{ :helloworld:design_pattern:mvc:structurez_mieux_votre_code_avec_le_pattern_mvc_-_apprenez_a_programmer_en_java_-_openclassrooms_2020-04-29_6_57_23_pm_.html |Archive du 18/03/2020 le 29/04/2020}} [[http://java.sun.com/blueprints/patterns/MVC-detailed.html|Source sun.com]]{{ helloworld:design_pattern:mvc:sunmvc.pdf |Archive sun.com}} Dans tous les exemples ci-dessous, l'objectif est d'ajouter une voiture, caractérisée par un nom, un poids et une marque, dans une base de données. [[helloworld:design_pattern:mvc:java|Java]], [[lang:csharp:designpattern:mvc|C#]]