Retour au Blog

Doctrine ORM 3.0 : Une nouvelle version majeure pour les bases de données !

Doctrine ORM 3.0 : Une nouvelle version majeure pour les bases de données !

Dans le domaine des bibliothèques de persistance des bases de données en PHP, peu de noms portent autant de poids que Doctrine ORM. Avec sa sortie le 3 février 2024, la communauté PHP est en effervescence, et pour de bonnes raisons! Plongeons dans ce que représente ORM 3.0 et les améliorations qu'il nous apporte.

Qu’est-ce que Doctrine ORM 3 ? 

Doctrine ORM, ou Mapping Objet-Relationnel, est un outil puissant qui fait le lien entre les bases de données relationnelles et les objets en PHP. Il permet aux développeurs de manipuler des données de manière orientée objet sans avoir à écrire des requêtes SQL directement. En d'autres termes, un ORM simplifie considérablement l'interaction avec la base de données en utilisant des objets et des relations entre euxLes Améliorations de Doctrine ORM 3.0.

graphique qu'est-ce qu'un orm : lien entre base de donnée et code
Qu'est-ce qu'un ORM ?

La version 3.0 de Doctrine ORM nous apporte plusieurs améliorations par rapport aux anciennes versions :

  • Bien plus léger, avec une taille réduite de 326 Ko par rapport aux 400 Ko de la version 2.18.0. Cette réduction de taille contribue à rendre ORM plus efficace et à concentrer les efforts de maintenance sur les fonctionnalités essentielles, ainsi qu’à rendre plus rapide l'exécution et le chargement du code avec php.
  • La couverture de code a été améliorée, passant de 84 % à 89 %. Ce qui garantit une meilleure fiabilité et une plus grande stabilité de l'écosystème Doctrine. Donc plus rassurant aussi pour le bon fonctionnement de nos applications.
  • ORM 3.0 élimine les dépendances à doctrine/cache et à doctrine/common. Ce qui réduit la complexité, améliore la maintenabilité, et rend également Doctrine plus compatible avec d'autres frameworks grâce à l'utilisation de PSR-6 pour la gestion du cache. (Découvrez les PSR ici)

En plus de ces avancées, d'autres améliorations significatives ont été apportées dans la version 3.0 de Doctrine ORM.

Gestion des Associations

L'une des améliorations les plus importantes est celle-ci, puisqu’elle a été optimisée.

  • Une meilleure gestion des associations, avec une détection plus précise du côté propriétaire ou inverse.
  • L'élimination des erreurs cachées grâce à la levée d'exceptions lorsque vous tentez d'accéder à des informations d'association incorrectes.

Chargement des Proxies

Les proxies sont des composants clés pour améliorer les performances de Doctrine ORM. Dans la version 3.0, il y a eu une optimisation du chargement des proxies, pour une gestion plus efficace de la mémoire, accroissant les performances du chargement d’entités.

Génération d'Identifiants

De ce côté ci, l’ORM a été amélioré aussi, avec :

  • Une stratégie de génération automatique des identifiants plus flexible et adaptable.
  • Une mise à jour spécifique pour PostgreSQL, alignant la génération des identifiants avec les normes actuelles de la base de données.

Gestion des Objets Embeddables

Les objets embeddables permettent de regrouper plusieurs champs de base de données dans une seule entité. Dans la version 3.0, une meilleure cohérence a été apportée pour faciliter le développement, et ils ont mis à jour l’interface pour la rendre plus intuitive et avoir une meilleure approche des objets embeddables.

Suppression des Objets Partiels

En effet, ils étaient pratiques car cette fonctionnalité permettait de charger partiellement les données d'une entité. Mais les contributeurs ont préféré simplifier cette approche et améliorer les performances, en éliminant cette fonctionnalité peu utilisée et complexe.

Comment effectuer la mise à niveau ? 

Meme Faire la mise à niveau ORM 3

Bien que la mise à niveau vers une nouvelle version majeure puisse vous paraître complexe, Doctrine propose des ressources complètes pour faciliter le processus. Les développeurs sont encouragés à d'abord effectuer la mise à niveau vers la dernière version de Doctrine ORM 2.18, en traitant les avertissements de dépréciation, avant de passer à ORM 3.0.

Conclusion

Doctrine ORM 3.0 représente une étape importante dans l'évolution de cette bibliothèque de persistance des bases de données en PHP. Avec des améliorations significatives en termes de performance, de qualité du code et de réduction des dépendances, ORM 3.0 offre une expérience de développement plus fluide et efficace.

Faites appel à nos équipes pour vous épauler dans cette migration, en nous contactant ici !

Contactez-nous !
Je veux en savoir plus !