Archives Wild Code School
ASP.Net

ASP.Net MVC

Quête 1 sur 7 · 1 image archivée

title-
Model - View - Controller

Objectifs

  • Comprendre ce qu'est un patron de conception
  • Comprendre l'utilité du MVC
  • Savoir utiliser ASP.Net MVC

Un patron de conception

Patron cube

Un patron de conception - à l'image des patrons en géométrie qui permettent de construire des figures physique en trois dimensions - permet d'instaurer une logique de programmation résolvant des problèmes couramment rencontrés lors d'un développement.

Ainsi, il existe une ribambelle de patrons de conception, chacun apportant ses avantages et désavantages (car oui il y en a). Le choix d'un patron doit donc être fait avec réserve et étude de cas afin qu'il convienne à l'utilisation que l'on veut en faire.

Un patron de conception se retrouve souvent dans les frameworks web modernes. Il a d'ailleurs révolutionné la façon de nous organiser et de penser le code, tout en le rendant plus propre et maintenable à grande échelle.

Il s'agit du patron de conception MVC, pour Modèle-Vue-Contrôleur.

↗
Patrons de conception

Présentation de différents patrons de conception (design patterns) ainsi que leur utilité

jmdoudoux.fr

Le patron de conception MVC

MVC est un patron de conception d'architecture, c'est-à-dire qu'il permet d'organiser le code en imposant une architecture à respecter. Cette architecture sépare chaque responsabilité et rend le tout maintenable et simple.

MVC1

Ainsi, le design pattern (anglicisme pour "patron de conception") MVC segmente en trois parties la logique d'une application Web. De cette manière, le tryptique "Modèle/Vue/Contrôleur" interagissent entre elles pour fournir à l'utilisateur une page web - ou plus précisément une réponse à une de ses requêtes.

↗
Modèle-Vue-Contrôleur

Qu'est-ce que le modèle MVC et à quoi ça sert ?

waytolearnx.com

Model

Model représente les données. Il s'agit du lien avec la base de données. Le modèle met à jour les informations en base et s'occupe de récupérer des entités. Ainsi, le modèle représente votre schéma de base de données.

View

View est comme son nom l'indique: la vue. Il s'agit de la section de code qui *s'occupe du * rendu. Ainsi, une vue contient du HTML (ou un langage de templating comme Razor).

Controller

Controller fait le lien entre Model et View. C'est le contrôleur qui reçoit la requête puis qui exécute des opérations (souvent de la logique métier) puis fournit une réponse à l'utilisateur.

Le contrôleur comporte la logique d'une route. On peut penser qu'il s'agit d'une colle entre Modèle et Vue.

MVC2

Créer un projet ASP.Net MVC

↗
Créer un projet MVC

Explique comment créer un projet ASP.Net MVC à partir de Visual Studio

learn.microsoft.com

En pratique

Chaque ressource ci-dessous t'indique la démarche à suivre pour créer des vues et des contrôleurs. Suis-les à la lettre !

Créer un contrôleur

↗
Créer un contrôleur

Explique comment créer un contrôleur avec Visual Studio 2022

learn.microsoft.com

Créer une vue

↗
Créer une vue

Expliquer comment créer une vue avec Visual Studio 2022

learn.microsoft.com

Créer un modèle

↗
Créer un modèle

Explique comment créer un modèle avec Visual Studio 2022

learn.microsoft.com

Challenge

Tu vas réaliser un CRUD, c'est-à-dire une application permettant de créer (CREATE), lire (READ), mettre-à-jour (UPDATE) et supprimer (DELETE) des enregistrements en base de données.

Tu vas faire un CRUD qui permet de créer, lire, mettre-à-jour et supprimer des articles en utilisant le patron de conception Modèle Vue Contrôleur.

L'entité Article définit trois champs:

  1. Un identifiant numérique (clé primaire)
  2. Un titre (chaîne de caractères)
  3. Du contenu (texte)

Critères de validation

  • [x] La solution est partagée via un dépôt GitHub
  • [x] L'entité Article existe et comporte les trois champs définis dans le challenge
  • [x] Un contrôleur ArticleController définit toutes les méthodes d'un CRUD
  • [x] Une vue permet d'interagir avec le CRUD avec une interface Web

Ressources partagées sur cette quête