Charles Hornick

Ports & Adapters: Beyond the Theory — le workshop

Créez une architecture Java qui résiste à l'IA. Deux jours pour transformer une base de code problématique en une application dont le compilateur défend les frontières — au lieu de compter sur la bonne volonté de l'équipe.

Demander le talk d'intro gratuit

Alistair Cockburn, créateur du pattern, a relayé le premier article de ma série en en saluant l'approche : « an amazing use of Hexagonal Architecture ». Ce workshop en est la version appliquée : votre équipe fait, au lieu de lire.

Votre « Ports & Adapters » n'en est probablement pas

Renommer des packages n'inverse aucune dépendance

La plupart des architectures « hexagonales » sont de la Clean Architecture repeinte : domain/, application/, adapter/ — et tout en public. Chaque classe peut appeler n'importe quoi. La frontière n'existe que sur le diagramme.

L'IA accélère l'érosion

Copilot, Claude, ChatGPT produisent du code qui compile et passe les tests — en passant un champ en public ici, en traversant une frontière là. La dette s'installe en silence, et la revue de code ne suffit plus à la rattraper.

La discipline ne tient pas sous pression

Toute règle qui repose sur « l'équipe fera attention » meurt au premier sprint pressé. Ce qu'il faut, c'est une architecture où la violation échoue à la compilation — bruyamment, avant la prod.

Workshop

Pas des slides : un refactoring réel

On part d'une base Java réaliste — celle que tout le monde écrit, celle qui suit les tutoriels et pourrit quand même — et on la refactore ensemble, module par module, vers une application isolée et vérifiable à la compilation.

Jour 1 — L'intérieur : une application qui se protège d'elle-même

  • Frontière vs organisation : ce que Ports & Adapters garantit vraiment (et ce qu'il ne garantit pas)
  • Package-by-component : package-private par défaut
  • Isolation JPMS : public n'est plus un passe-partout
  • Result plutôt qu'exceptions : des signatures qui disent la vérité

Jour 2 — Wiring, tests, IA

  • Composition Root : le câblage explicite, seul point omniscient
  • Tester sans framework : POJO + lambdas, zéro Mockito
  • AI-Driven Dev : la démonstration où une modification IA qui viole une frontière échoue à la compilation au lieu de pourrir en silence

Jour 3 (optionnel) — Approfondissement

Composition Root avancé (décorateurs, wiring par profil, JPMS opens), stratégies de bascule d'adapters à runtime, et Spring Modulith + Ports & Adapters : le passage à l'échelle modulaire.

À l'issue du workshop, votre équipe sait construire — et surtout maintenir — une base Java où l'érosion architecturale est une erreur de compilation, pas une découverte d'audit.

En entreprise

Pour votre équipe

Dans vos locaux ou à distance. Petits groupes volontairement : du hands-on, pas de l'amphithéâtre. 6 personnes incluses, 8 maximum.

Jour 3 — réservé dans le mois

Approfondissement

1 750 € HTVA

Réservé dans le mois suivant le workshop. La session se planifie ensuite selon vos agendas.

  • 2 250 € HTVA pour 8 personnes

Jour 3 — réservé plus tard

Approfondissement

2 190 € HTVA

Le même jour d'approfondissement, réservé au-delà du mois suivant le workshop.

  • 2 810 € HTVA pour 8 personnes

Commencez par juger sur pièce : un talk d'intro gratuit d'une heure pour votre équipe.

Demander le talk d'intro
Session ouverte

Pour indépendants & développeurs

À distance (visio), 5 à 15 participants. Questions en continu par écrit, réponses en direct.

Jour 3 — réservé dans le mois

Par personne

250 € HTVA

L'approfondissement, réservé dans le mois suivant le workshop.

Jour 3 — réservé plus tard

Par personne

350 € HTVA

Le même jour d'approfondissement, réservé au-delà du mois.

Indépendant ?

TVA récupérable et formation déductible : le coût net réel est nettement inférieur au tarif affiché. Si le workshop vous fait gagner ne serait-ce que quelques euros de TJM, il est remboursé en quelques jours facturés.

Questions fréquentes

Quel niveau est requis ? Java courant et notions de Spring. Le workshop s'adresse à des développeurs en activité — c'est du refactoring de code réaliste, pas une introduction à Java.

Pourquoi maximum 8 en entreprise ? Parce que c'est un atelier, pas une conférence : chacun code, je relis, on confronte les choix. Au-delà, la qualité d'accompagnement chute.

Le contenu vient d'où ? De la série d'articles Ports & Adapters: Beyond the Theory (dev.to), dont Alistair Cockburn, créateur du pattern, a relayé le premier article. Le workshop en est la version appliquée.

Jugez sur du vrai code avant d'engager un budget

Un talk d'intro d'une heure, gratuit, en présentiel ou à distance, pour votre équipe : je montre l'approche sur du code réel — y compris la démonstration IA. Sans engagement.

Réserver le talk d'intro