Formations
Clean Architecture, TDD, Java, Spring

Objectifs

Pour réussir un projet Java, il faut mettre en valeur les use cases, et non les détails d'implémentations techniques comme Spring, JDBC, bibliothèques d'authentification etc.

Une bonne architecture Backend doit présenter un fort découplage entre ces détails d'implémentations et le coeur des algorithmes métiers.

Ainsi, vous allez apprendre les fondamentaux du concept de "Clean Architecture" à travers des exemples réalistes et en live coding utilisant le langage Java.

Dans un second temps, vous allez découvrir les différents types de tests attendus pour toute application, dont les plus fameux : les tests unitaires.

Vous prendrez ainsi le temps de pratiquer et d'apprécier la discipline rigoureuse qu'est Test-Driven Development (TDD) à travers de nombreux challenges, afin de gagner en productivité dans tous vos projets aussi bien à court terme qu'à long terme et serez ainsi pleinement conscients du rôle indispensable de cette pratique.

Enfin, vous réaliserez une application Java de type entreprise "from scratch" afin de mettre à l'épreuve vos compétences et valider vos acquis.

À l'issue de cette formation, vous maîtriserez les fondamentaux permettant de réaliser des applications Backend Java, évolutives, fiables, robustes et plaisantes à réaliser.

Programme

Clean Architecture

  • Introduction au concept de Separation of Concerns.
  • Présentation et démonstration du concept d'inversion de dépendances, indispensable pour respecter le Separation of Concerns.
  • Mise en pratique du concept de Separation of Concerns à travers la Clean Architecture.

Acceptance Test-Driven Development (ATDD)

  • Introduction.
  • Présentation de Gerkhin.
  • Présentation de Cucumber.
  • Exercices de mise en pratique de Cucumber parsant un fichier exemple de Gherkin.

Les tests unitaires avec l'approche 100% TDD

  • Introduction.
  • Démonstration des avantages du TDD au niveau de la productivité à court terme.
  • Exercices de mise en pratique de TDD à travers plusieurs Kata de complexité croissante.

Les tests d'intégration

  • Introduction.
  • Exercices de mise en pratique de tests d'intégration s'assurant de la bonne collaboration avec une base de données.

Les tests end-to-end

  • Introduction
  • Exercices de mise en pratique de tests d'intégration s'assurant du bon fonctionnement de Rest APIs avec Spring-Boot.

Réalisation d'application from scratch

  • Définition des Gherkins relatifs à l'application.
  • Mise en pratique de Cucumber, ATDD, TDD et tests complémentaires au sein d'une application Backend réaliste utilisant Spring IOC, Spring Boot, base de données et une API d'envoi de mail, avec corrigés en live coding.

Java

Spring


Par Michaël AZERHAD

Pré-requis

  • Compétences en programmation logicielle orientée objet
  • Bonnes notions de Java 5+

Durée

4 jours

Lieu

Paris / Île-De-France

Personnes par session

5 à 12 maximum

Prix "entreprise"

2000 euros HT / personne

Prix "particulier"

400 euros TTC