Skip to content

Architecture et Backend

DelimeThibault edited this page Mar 15, 2023 · 18 revisions

Architecture

Blank diagram

Les utilisateurs interragissent avec le site d'E-commerce via leurs appareils. Le Frontend est la partie visible du site et tourne sur un serveur situé dans le Backend. Le serveur web gère les requêtes Http et renvoie les pages HTML. L'API fournit des Endpoints qui permettent aux clients de récupérer des données ou d'effectuer des actions. La base de données stocke les données du site telle que les informations produits, les utilisateurs, les commandes, etc.

Backend

Nous utilisons Node JS et Express pour le backend

  1. Justification du choix

Étant donné que le client utilise cette technologie et qu'il souhaite faire la maintenance du site lui même, nous devons utilisé cell-ci. De plus, il est très performant pour gérer les entrées/sorties de manière asynchrone. Il permet également d'avoir la possibilité qu'il y ai beaucoup de trafic sur le site.

  1. Spécificités de la technologie par rapport à Python et Ruby

Avantages de Node JS et Express :

  • Conçu pour gérer des applications web légères et hautement évolutives contrairement à python.
  • Utilise une approche orientée événements pour une gestion efficace des demandes entrantes et sortantes alors que Python et Ruby sont orienté objet.

Désavantages :

  • Gestion des erreurs asynchrones peut-être difficile hors avec Python et Ruby, il y a une gestion des erreurs solide.
  1. Diagramme de classes UML

[Diagramme de classes] [Explication textuelle du diagramme de classes]

  1. Fonctionnement

[Explication du fonctionnement du backend. Par exemple : Explication du "voyage" d'une requête entre la réception de la requête sur une route donnée et l'envoi d'une réponse]

Base de données

[Technologie choisie]

  1. Justification du choix

  2. Diagrammes

[Schémas EA / Relationnel de la DB] [Texte expliquant les diagrammes et justifiant les choix de conception]

Clone this wiki locally