Contenu de cette formation Domain-Driven Design en PHP7

Durée de la formation Domain-Driven Design en PHP7
Participants à cette formation Domain-Driven Design en PHP7
développeurs, chefs de projets
Pré-requis de cette formation Domain-Driven Design en PHP7
bonne connaissance de PHP7 orienté objet.
Travaux pratiques de cette formation Domain-Driven Design en PHP7
les participants réaliseront l'implémentation d'une application web en mode Domain Driven Design
Programme de cette formation Domain-Driven Design en PHP7
introduction au Domain Driven Design
- importance du Domain Driven Design
- les 3 pilliers du Domain Driven Design
- opter pour Domain Driven Design
- les points délicats
- le point de vue stratégique
- Microservices et sytèmes auto-contenus
- synthèse
Styles Architecturaux
- Avant...
- Multi-couches
- Sources d'évènements
- synthèse
Objets de Valeur
- définition
- Objet de Valeur vs. Entité
- Devise et Argent
- Caractéristiques
- Types de Base
- Tester les OV
- Persistance des OV
- Sécurité
- synthèse
Entités
- introduction
- Objets vs. types primitifs
- Opération identité
- persistance
- test
- validation
- entités et événements du domaine
- synthèse
Services
- services de l'application
- servies du domaine
- services de domaine et d'infrastructure
- tester
- Modèles pauvres vs. riches
Evenements de Domaine
- Définition et Caractéristiques
- Modélisation des Evenements
- Evenements Doctrine
- Evenements de domaine persistants
- Publication des évènements du modèle de domaine
- Propagation aux Contextes distants
- synthèse
Modules
- Aperçu général
- Tirer parti des modules en PHP
- Contexte Borné et Application
- Structurer le code en Modules
- synthèse
Agrégats
- Introduction et Concepts Clés
- Qu'est-ce qu'un Agrégat ?
- Pourquoi utiliser des Agrégats ?
- Anatomie d'un Agrégat
- Règles de Conception d'un Agrégat
- Transactions
- synthèse
Fabrique (factory)
- Méthode Fabrique et Racine Agrégat
- Service Fabrique
- Tester les Fabriques
- synthèse
Référentiels (repositories)
- Définition
- Référentiel vs. DAO
- Référentiel orienté Collection
- Référentiel orienté Persistance
- Requêter un Référentiel
- Gérer les Transactions
- Tester un Référentiel
- Tester un Service avec implémentation en mémoire
- synthèse
Application
- Requêtes
- Anatomie du Service
- Test du Service
- Transactions
- Sécurité
- Evenements du Domaine
- Gestionnaires de Commande
- synthèse
Intégration des Contextes Bornés (Bounded Contexts)
- Intégration par Data Store
- Relations d'intégration
- Implémenter les Intégrations du Contexte Borné
- synthèse
Architecture Hexagonale en PHP
- Introduction
- Référentiel et Persistance
- Découpler Métier et Persistance
- Migrer la Persistance vers Redis
- Découpler Métier et Framework Web
- Evaluer une Idée via l'API
- Evaluation Console APP
- Tester le Use Case
- Tester l'Infrastrucure
- Dépendances
- Hexagone Services - Notifications
- Architecture Hexagonale
- Points clés