En ce qui concerne le terme plus générique hydrater
L'hydratation d'un objet consiste à prendre un objet qui existe en mémoire, qui ne contient pas encore de données de domaine (données "réelles"), puis à le remplir de données de domaine (provenant par exemple d'une base de données, du réseau ou d'un système de fichiers).
D'après les commentaires d'Erick Robertson sur cette réponse :
désérialisation == instanciation + hydratation
Si vous n'avez pas besoin de vous soucier de performances fulgurantes et que vous ne déboguez pas les optimisations de performances qui se trouvent dans les internes d'une API d'accès aux données, alors vous n'avez probablement pas besoin de vous occuper explicitement de l'hydratation. Vous utiliserez généralement désérialisation à la place, ce qui vous permet d'écrire moins de code. Certaines API d'accès aux données ne vous offrent pas cette option et, dans ce cas, vous devez également appeler explicitement l'étape d'hydratation vous-même.
Pour un peu plus de détails sur le concept d'hydratation, voir Réponse d'Erick Robertson sur cette même question.
Vous avez posé une question sur ce cadre spécifique, alors je l'ai examiné.
Pour autant que je sache, je ne pense pas que ce projet ait utilisé le mot "hydrate" dans un sens très générique. Je vois son utilisation dans le titre comme un synonyme approximatif de "sérialisation". Comme expliqué ci-dessus, cet usage n'est pas tout à fait exact :
Voir : http://en.wikipedia.org/wiki/Serialization
traduire les structures de données ou l'état des objets dans un format qui peut être stocké [...] et reconstruit ultérieurement dans le même environnement informatique ou dans un autre.
Je ne peux pas trouver la raison derrière leur nom directement sur la FAQ de l'Hydrate mais j'ai eu des indices sur leurs intentions. Je pense qu'ils ont choisi le nom "Hydrate" parce que l'objectif de la bibliothèque est similaire à celui de la populaire imitation sonore Cadre Hibernate mais il a été conçu dans l'optique d'un flux de travail exactement inverse.
La plupart des ORM, y compris Hibernate, adoptent une approche orientée modèle objet en mémoire, la base de données passant au second plan. La bibliothèque Hydrate adopte au contraire une approche orientée schéma de base de données, préservant vos structures de données relationnelles et permettant à votre programme de travailler sur elles de manière plus propre.
Métaphoriquement parlant, toujours en ce qui concerne le nom de cette bibliothèque : Hydratez c'est comme "rendre quelque chose prêt à l'emploi" (comme réhydrater Aliments séchés ). Il s'agit d'un opposé métaphorique de Hibernate ce qui revient plutôt à "mettre quelque chose de côté pour l'hiver" (comme L'hibernation des animaux ).
La décision de nommer la bibliothèque Hydrate, pour autant que je sache, n'était pas liée au terme générique de programmation informatique "hydrate".
Lorsque l'on utilise le terme générique de programmation informatique "hydrate", les optimisations de performances sont généralement la motivation (ou le débogage des optimisations existantes). Même si la bibliothèque prend en charge le contrôle granulaire du moment et de la manière dont les objets sont remplis de données, le timing et les performances ne semblent pas être la motivation première du nom ou de la fonctionnalité de la bibliothèque. La bibliothèque semble plus soucieuse de permettre le mappage de bout en bout et la préservation des schémas.
4 votes
Veuillez également consulter cette question, dont la réponse est excellente. Ce n'est pas tout à fait la même question, donc je ne vais pas voter pour la fermer. Mais elle explique bien l'hydratation : stackoverflow.com/questions/4929243/
0 votes
Je pense que c'est la même question : "que veut dire hydrate". Le vote est terminé.
0 votes
Cela répond-il à votre question ? Clarification de la terminologie - Que signifie "hydrater" une entité JPA ou Hibernate lors de la récupération de l'entité dans la base de données ?