When you enroll through our links, we may earn a small commission—at no extra cost to you. This helps keep our platform free and inspires us to add more value.

Udemy logo

Architecture Hexagonale et TDD en TypeScript : bien débuter

La méthode concrète la plus puissante pour développer de meilleurs logiciels plus rapidement et sereinement.

     
  • 4.4
  •  |
  • Reviews ( 98 )
₹449

This Course Includes

  • iconudemy
  • icon4.4 (98 reviews )
  • icon10.5 total hours
  • iconfrench
  • iconOnline - Self Paced
  • iconcourse
  • iconUdemy

About Architecture Hexagonale et TDD en TypeScript : bien débuter

Ce cours t'apprendra à développer de meilleurs logiciels plus rapidement grâce au TDD (Test-Driven Development) et à l'architecture hexagonale avec une application pratique en TypeScript / Node.JS

Tu y verras notamment :

Comment définir des exemples servant de critères d'acceptation et permettant d'éviter les longues discussions autour de quiproquos grâce à l'Example Mapping

Comment structurer un test unitaire dans le code pour éviter qu'il soit fragile et te permettre de refactorer ton code sereinement

L'importance de l'inversion de dépendances, principe SOLID extrêmement important pour t'assurer un logiciel plus facilement maintenable et évolutif

Comment créer des fixtures et des builders pour nos tests unitaires et créer une DSL (Domain Specific Language) pour créer des tests unitaires plus rapidement que tu ne l'as jamais vu !

Comment gérer le code lié à l'infrastructure (base de données, système de fichiers, etc,) sans polluer la logique métier

Comment tester l'infrastructure grâce à des tests d'intégration isolés avec TestContainer

Comment organiser ses fichiers et ses dossiers selon le principe de la Screaming Architecture

Comment bien séparer Data Model et Domain Model avec Prisma et PostgreSQL

Comment utiliser un Presenter pour gérer le retour des use cases de façon découplée, évolutive, et maintenable

Comment se servir d'un framework (NestJS) pour gagner du temps, sans s'y couplerPourquoi et comment implémenter des tests end-to-end

J'y montre pas à pas comment je développe une application avec une architecture hexagonale, en me basant ici sur une version du kata Social Network, un Kata fait pour ressembler à un vrai projet, et pas juste un exercice rapide !

On simulera l'apparition de nouveaux besoins, comme dans la vraie vie d'un projet.

On verra donc comment ajouter la juste dose de complexité nécessaire dans l'architecture sans que ça devienne de la complexité accidentelle.

Je pars de simples fichiers non structurés, sans arborescences de dossiers, exécutable uniquement en ligne de commande, à une application réalisée avec le framework NestJS et exposant une API HTTP. Le tout en TDD, avec des tests d'intégration, et des tests end-to-end.

What You Will Learn?

  • Comment passer deux fois plus de temps à développer de nouvelles fonctionnalités plutôt qu'à corriger des bugs.
  • Comment définir des exemples servant de critères d'acceptation et permettant d'éviter les longues discussions autour de quiproquos grâce à l'Example Mapping.
  • Comprendre ce qu'est une bonne architecture, et comment avoir une approche évolutive pour ne pas sombrer dans la complexité accidentelle.
  • Comment être serein et beaucoup plus rapide grâce au Test-Driven Development (TDD).
  • Comment bien mettre en place une architecture hexagonale en partant de zéro.
  • L'importance de l'inversion de dépendances, principe SOLID extrêmement important pour t'assurer un logiciel plus facilement maintenable et évolutif.
  • Pourquoi et comment itérer de façon très rapide grâce au feedback régulier que permettent le TDD et l'architecture hexagonale.
  • Comment se servir d'un framework (NestJS) pour gagner du temps, sans s'y coupler.
  • Comment tester en isolation l'infrastructure grâce à TestContainers.
  • Comment organiser ses fichiers et ses dossiers selon le principe de la Screaming Architecture.
  • Comment bien séparer Data Model et Domain Model avec Prisma et PostgreSQL.
  • Comment créer des fixtures et des builders pour nos tests unitaires et créer une DSL (Domain Specific Language) pour créer des tests unitaires plus rapidement.
  • Comment utiliser un Presenter pour gérer le retour des use cases de façon découplée, évolutive, et maintenable.
  • Pourquoi et comment implémenter des tests end-to-end.