Modele vue controleur exemple


Une vue dans le modèle MVC est généralement une forme d`élément d`interface utilisateur qui permet aux humains d`interagir avec le système informatique. L`objet View peut être des formulaires de saisie de données, des rapports, des graphiques ou d`autres éléments d`interface qui permettent à un être humain (généralement appelé «utilisateur») d`interagir avec les données. En bref, la façon dont je regarde les choses, les objets View et Controller sont spécifiquement écrits pour chaque type d`interface (et la technologie), et ne sont généralement pas réutilisables entre les interfaces. Les différentes vues sont clairement écrites en utilisant différentes technologies et peut-être différentes langues, donc 98% du temps qu`ils ne vont pas être réutilisés. Et quand vous pensez à des contrôleurs en tant que «coordinateurs», ils coordonnent vraiment l`interaction d`un utilisateur avec un type particulier de système (application Web, application mobile, application GUI, service Web), et encore, les étapes de chaque interaction sont très probablement différentes, et ne sont pas Réutilisables. Non seulement MVC rend le modèle délicieux, il peut également rendre la vue délicieuse. Idéalement, une vue de liste devrait pouvoir afficher des listes de n`importe quoi, pas seulement des objets person. Le code de l`exemple 5 ne peut pas être une vue de liste générique, car il est lié au modèle (la classe Person). Dans le cas où la vue doit être réutilisable (par exemple, une vue de liste ou une vue de tableau) et le modèle doit être réutilisable, MVC est la seule chose qui fonctionnera. Le contrôleur supprime les dépendances à la fois du modèle et de la vue, ce qui leur permet d`être réutilisés ailleurs. Comme note finale, de nombreuses applications GUI, lorsque l`état d`un modèle est modifié, le modèle envoie une notification indiquant cette modification.

Cela permet aux objets View de se rafraîchir au fur et à mesure que les données sont modifiées. Dans une entreprise comme une entreprise de pizza, vous aurez beaucoup d`autres classes de modèle qui peuvent avoir un comportement plus intéressant. Par exemple, vous pouvez avoir plusieurs classes Model liées à la vente d`une pizza, y compris celles-ci: nous allons créer un objet Student agissant comme un modèle. StudentView sera une classe d`affichage qui peut imprimer les détails de l`étudiant sur la console et StudentController est la classe de contrôleur responsable de stocker les données dans l`objet Student et la vue de mise à jour StudentView en conséquence. Un objet Model stocke les données pour le domaine que vous modélisez, ainsi que la logique liée à ces données brutes. Par exemple, si vous modélisez un employé dans une entreprise, la classe Employee aura des attributs tels que ceux-ci: si l`application est structurée mal comme dans l`exemple 1, les choses se compliquent. Actuellement, il existe deux classes Person et PersonListView. La classe person ne peut pas être branchée dans une autre vue, car elle contient du code spécifique à PersonListView.