Actualités WEB et WordPress, thèmes, plugins. Ici, nous partageons des conseils et les meilleures solutions de sites Web.

Une manière orientée objet de travailler avec des modèles et des applications Web

6

Lorsque nous parlons du concept de modèles dans la programmation orientée objet, nous faisons généralement référence à une classe qui est une représentation des données stockées dans la base de données.

Autrement dit, lorsque les informations sont stockées dans des lignes et des colonnes, nous remplissons une classe, ses attributs, etc. avec ces informations afin que nous puissions les transmettre dans l’application, les manipuler au besoin, puis éventuellement sérialiser le données vers la base de données.

Mais dans une application Web, il est juste de supposer que le modèle devra peut-être être utilisé par le frontal. Autrement dit, imaginez une requête frontale faisant un appel au serveur, demandant un modèle (ou une collection de modèles), puis les rendant sur le frontal.

Bien que cet article particulier ne soit pas orienté code, je pense toujours qu’il vaut la peine de réfléchir au processus de traduction d’un modèle à partir du serveur, puis de le rendre sur le front-end de l’application Web.

Travailler avec des modèles et des applications Web

Imaginez un instant que votre application dispose d’un modèle Employee. Ce modèle peut inclure une variété d’attributs, mais il est prudent de supposer que tous les employés auraient :

  • un prénom,
  • un nom de famille,
  • un identifiant d’employé,
  • et une adresse e-mail

La façon dont ces informations sont stockées dans la base de données n’est pas totalement hors de propos, mais ce n’est pas si important pour cette discussion.

Par exemple, il existe peut-être un seul enregistrement contenant toutes ces informations stockées dans une chaîne JSON. D’un autre côté, il y a peut-être une table d’employés où chaque ligne représente un employé, puis chaque colonne représente un attribut.

Les détails sur la manière dont les informations sont traduites de la base de données (ou, plus généralement, du magasin de données) à la classe ne sont pas aussi importants.

Habituellement, cependant, nous verrons quelque chose comme ceci:

  1. Il y a une classe qui demande l’information,
  2. Les informations sont transmises à une Usine Simple ,
  3. La Simple Factory instancie le Model ,
  4. Le modèle est ensuite transmis à la classe tierce qui l’a demandé.

D’un point de vue pictural, vous pouvez le voir comme ceci :

À partir de ce point, le modèle est transmis à travers l’application. Mais c’est là que le point initial de cet article entre en jeu : comment passer une instance de Model (ou une collection de Models) au front-end de l’application ?

Le flux de l’application Web

Par souci de simplicité, supposons que nous allons utiliser un seul modèle, puis, si je réexamine ce concept du point de vue du code, nous pourrons plonger un peu plus.

Le flux général d’une application Web ressemblera cependant à ceci :

  1. Un utilisateur déclenche une action qui demande une instance du modèle,
  2. Le frontal fait un appel à un point de terminaison sur le serveur,
  3. Le serveur lit les requêtes et vérifie qu’elles sont valides,
  4. Envoie ensuite une représentation du modèle au frontal.

D’autres développeurs peuvent ne pas être d’accord (ce qui est toujours le bienvenu et mérite d’être discuté, à mon avis), mais j’ai constaté que la sérialisation de l’instance du modèle en JSON facilite beaucoup le travail sur le front-end en raison de la fonctionnalité JavaScript car il se rapporte à, ahem, JSON.

Une manière orientée objet de travailler avec des modèles et des applications Web

Autrement dit:

  1. on prend le modèle,
  2. sérialisez-le en JSON,
  3. l’envoyer à travers le fil,
  4. puis désérialisez-le sur le front-end en une représentation JavaScript de lui-même.

Cela nous permet de le manipuler comme nous le ferions côté serveur ; cependant, nous avons affaire à un objet JavaScript. De plus, cela nous permet également d’apporter certaines modifications et de renvoyer les informations au serveur dans un état différent à partir duquel elles ont été envoyées.

En fin de compte, cela nous permet de sauvegarder les données dans la base de données.

Une perspective de haut niveau

Et c’est le cycle de vie de haut niveau consistant à transmettre des informations d’une base de données à un modèle vers le front-end et vice-versa.

Souvent, cependant, il est utile de voir cela dans le code, alors peut-être que dans un prochain article, je fournirai une série d’articles qui expliqueront comment procéder.

En attendant, cependant, il ne devrait pas être difficile de traduire vos implémentations dans le flux de travail Model-Serialization-Request-Send, comme indiqué dans cet article.

Source d’enregistrement: tommcfarlin.com

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More