La parole est aux speakers : Pablo Godinez

Publié le

Jusqu’à l’AFUP Day 2025, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

Comprendre et Appliquer le Pattern Repository en PHP

Si vous utilisez Symfony, vous utilisez certainement des repositories dans vos applications. Mais les utilisez-vous réellement comme ils ont été conçus ? Souvent mal compris et mal appliqué, ce pattern souffre de nombreuses idées reçues alimentées par des articles, des documentations et des tutoriels en ligne qui donnent de mauvais exemples.

Cette présentation vise à démystifier le Pattern Repository et à corriger les erreurs courantes. Je commencerai par définir clairement ce qu'est le pattern Repository selon la littérature, puis je confronterai ces concepts théoriques aux pratiques courantes observées dans les projets PHP.

Je montrerai comment les appliquer correctement ces concepts dans vos projets PHP en utilisant des exemples concrets.

Nous examinerons comment les ORM, en particulier Doctrine, sont conçus pour permettre une implémentation fidèle du pattern Repository. Pour ceux qui préfèrent éviter les ORM, nous explorerons des solutions alternatives pour implémenter le pattern Repository, en nous inspirant notamment de l'Event Sourcing.

C.P.E. Lyon
16/05/2025
11:20-12:00

Tu as été bénévole à l’AFUP, tu participes régulièrement à nos événements et maintenant tu passes derrière le pupitre : peux-tu nous parler de ta vision de la communauté, et de ce qu’elle t’apporte ?

La communauté PHP est l’une des grandes forces du langage, en particulier en France grâce à l’AFUP et à la forte présence de Symfony.

Entre 2021 et 2023, j’ai eu l’occasion de travailler avec d’autres technologies comme .NET C# et Python. Cette expérience m’a permis de mieux apprécier les points forts de l’écosystème PHP.

Participer régulièrement à des meetups et conférences a été un réel atout dans ma carrière. C’est ainsi que j’ai découvert des concepts comme le Domain-Driven Design ou l’Event Sourcing. Au-delà des conférences elles-mêmes, les échanges sur place sont une excellente opportunité d’apprentissage.

Un aspect à améliorer serait la visibilité de PHP dans des événements tech plus généralistes, comme Devoxx ou DDD Europe. On a beaucoup à partager et à apprendre des autres communautés, et il serait intéressant d’être plus présent dans ces espaces.

Existe-t-il d’autres langages que PHP où ce pattern est applicable ?

Ce pattern peut être implémenté dans presque tous les langages, en particulier ceux orientés objet. Je manque d’expérience sur les langages fonctionnels pour juger de sa pertinence dans ces cas-là, mais il est probable qu’il puisse s’y adapter sous une forme différente.

Dans un contexte PHP, le terme repository peut faire penser aux ORM comme Doctrine. En quoi ce pattern est-il différent ?

Selon la nature du projet je dirais que oui, ça s’applique. Au moins dans une certaine mesure.

Le pattern Repository est avant tout une spécification, plus qu’une simple implémentation, contrairement à certains design patterns classiques. Il définit une interface permettant d’accéder aux données de manière abstraite.

Les ORMs comme Doctrine implémentent ce pattern. Par exemple, avec $entityManager->getRepository(‘MonEntite’), Doctrine applique directement cette approche. Mon talk explorera justement comment ce pattern est intégré et utilisé dans ce contexte.

Je vous en dis plus le jour J 🙂

Une conférence présentée par

Pablo GODINEZ
Pablo GODINEZ
Développeur PHP depuis plus de 10 ans, Pablo est passionné par l'approche produit et les pratiques de Domain-Driven Design (DDD) et Behavior-Driven Development (BDD). Il aime explorer et implémenter des solutions qui répondent aux besoins réels des utilisateurs. Au quotidien, Pablo s'efforce de promouvoir des bonnes pratiques de développement au sein de son équipe et de la communauté PHP.

Autres intervenants