architecture héxagonale

Post on 15-Feb-2017

13 Views

Category:

Engineering

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

ARCHITECTUREARCHITECTUREHÉXAGONALEHÉXAGONALE

HUMAN TALKS LYONHUMAN TALKS LYON11 OCTOBRE 11 OCTOBRE 20162016

EN 10 MINUTES !EN 10 MINUTES !

JEAN DETOEUFJEAN DETOEUFDÉVELOPPEURDÉVELOPPEUR

Passionné de nouvelles technologies

#jvm #docker #craftsmanship #rpi #diy

Qui a déjà tenté de changer de framework (DI, ORM, ...) ?

C'est galère ?

Code framework au milieu du code métierDifficulté pour changer de frameworkTests trop lourds

ARCHITECTURE EN COUCHEARCHITECTURE EN COUCHESimple à comprendreMontre le flux de données

ARCHITECTURE EN COUCHEARCHITECTURE EN COUCHESimple avec une couche de présentation et une couche depersistenceLes couches se mélangent dans le code

ARCHITECTURE HÉXAGONALEARCHITECTURE HÉXAGONALEPermet d'isoler le code métier du code d'infrastructureAgnostique : amenez votre langage préféréFramework killer

LANCEMENT D'UN PROJETLANCEMENT D'UN PROJETReporter les choix techniquesConnaissance métier limitée en début de projet

Temps

Connaissancemétier

CONCEPTCONCEPTCode métier sans bibliothèque ni frameworkCode technique dans des modules séparés

Métier

API REST

BDD Oracle BDDCassandra

IHM

Alertes

Messaging

TESTS SIMPLIFIÉSTESTS SIMPLIFIÉSDécoupage des taches simplifiéTDD : dev/test métier, puis autres modulesTests métier sans avoir à gérer l'infraValidation rapide du métier

ON COMMENCE QUAND ?ON COMMENCE QUAND ?nouveau projet : simple à mettre en placeprojet existant : démêlage de spaghettis

PERSPECTIVESPERSPECTIVESChanger de frameworkChanger de BDDMigrer une partie des données (ie. SQL vers NoSQL)Ajouter une interface (API, messaging, autre IHM)

PERMÉABILITÉPERMÉABILITÉImpossible d'utiliser du code "infra" dans le module"métier"Rien n'empêche d'avoir du code "métier" qui se retrouvedans les modules "infra"

RETOUR D'EXPÉRIENCERETOUR D'EXPÉRIENCEC'est le code "métier" qui va diriger le code "infra"Penser à la performance (ie requête SQL dans une boucle)

DANS QUELS CAS NE PAS L'UTILISERDANS QUELS CAS NE PAS L'UTILISERFrameworkLibrairieModule technique

PREMIER PAS VERS LE DDDPREMIER PAS VERS LE DDDFaire communiquer plusieurs héxagones, chacunreprésentant un métier séparéUn amateur pour faire une présentation du DDD ?

QUESTIONS ?QUESTIONS ?

MERCI POUR VOTRE ÉCOUTEMERCI POUR VOTRE ÉCOUTE

Cette présentation :

@thebignetthebignet

talk-archi-hexa

top related