La parole est aux speakers : Romain Canon

Publié le

Jusqu’à l’AFUP Day 2023, 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

Transformer efficacement du JSON en structure PHP fortement typée

Dans un monde PHP où l'adoption d'un typage fort est de plus en plus fréquente, les outils autour de ce typage se multiplient ; on retrouve notamment des analyseurs statiques comme PHPStan et Psalm, qui améliorent la robustesse de nos applications.

Mais qu'en est-il des données qui proviennent de l'extérieur lors du runtime, qui ne peuvent pas être analysées de manière statique ? Par exemple, il est important de valider la structure d'une requête JSON avant de l'utiliser dans l'application ; cependant, traiter chaque valeur manuellement devient vite rébarbatif.

Découvrons Valinor, une bibliothèque (made in Lyon !) qui permet de valider et transformer facilement n'importe quelle source en une structure fortement typée. Generics, shaped arrays, integer range et bien d'autres : si vous connaissez ces types avancés de PHPStan et Psalm, vous découvrirez comment en tirer parti au runtime.

C.P.E.
12/05/2023
16:20-17:00

Pourquoi le typage est important selon toi ?

Le thème a déjà été traité de nombreuses fois et les réponses ne manquent pas sur les réseaux sociaux, blogs et autres sites qui traitent de ce sujet. Malgré les avancées notoires de PHP dans ce domaine depuis plusieurs années, certain.e.s ne comprennent pas l’utilité d’un changement aussi drastique dans la philosophie du développement. Ma conférence aidera — je l’espère — les indécis.es à comprendre pourquoi et comment ne pas abuser de la flexibilité de PHP qui mène à certaines failles d’architecture logicielle.

Typer son code, c’est le rendre plus robuste. Les erreurs d’exécutions sont plus précises, les bugs plus faciles à corriger. Le code devient plus lisible, les algorithmes plus compréhensibles. Beaucoup d’outils fonctionnent mieux : l’auto-complétion et les analyses de votre IDE préféré, Rector et son moteur de migration automatique, les analyseurs statiques comme PHPStan, Psalm ou SonarQube, et bien d’autres.

Le sujet est évidemment trop vaste pour être détaillé ici. Mais par pitié : arrêtez d’utiliser des tableaux remplis de tout et n’importe quoi partout dans vos applications ! 😄

Qu’est-ce qui t’a motivé à faire de l’open-source ?

En premier temps et au début de ma vie de développeur, l’open source m’a paru comme une source infinie de connaissances dans laquelle piocher pour apprendre et défaire mes idées reçues. La suite logique a été d’apporter ma pierre à l’édifice — quelques contributions par-ci par-là, quelques projets rendus publics. L’OSS a aussi été le moteur de belles rencontres, en ligne comme en personne.

Dans un monde rempli de solutions propriétaires, avec les problèmes qu’elles apportent, il me parait également nécessaire de comprendre la dimension politique de l’open source — sur lequel une partie de l’industrie repose. Utiliser et contribuer à l’open source, c’est aider à faire vivre un monde ouvert et public, qui résiste tant bien que mal depuis plusieurs décennies au modèle capitaliste qui nous entoure.

L’AFUP Day sera ta première conférence de ce genre, comment te sens-tu ?

Honoré, déjà, de pouvoir apporter ma voix dans un événement officiel de l’AFUP. Très heureux, ensuite, que ce sujet ait intéressé au point d’être programmé. Et confiant, enfin, au vu de l’organisation, de l’aide et de la bienveillance de l’équipe qui m’entoure. 🙂

Une conférence présentée par

Romain CANON
Romain CANON
Développeur PHP depuis 10+ ans, passionné de clean code et contributeur OSS.

Autres intervenants