Formation Améliorer le code legacy avec le Test Driven Development


  • PASSER DU CODE LEGACY AU CODE PROPRE
REFERENCE
 
 
TDDC
DUREE
 
 
3 jours
TARIFS
 
 
1940 € HT
Niveau : Débutant
Cours à distance: Non
OBJECTIFS :
 

Le code legacy désigne du code présent dans nos applications, difficile à maintenir, souvent de mauvaise qualité et n'ayant pas été testé automatiquement. Cette formation enseigne aux développeurs les bonnes pratiques qui leur permettront de maintenir et de faire évoluer du code legacy sans risque, afin d'instaurer une haute qualité tant dans leur code que dans leur méthode.

Concrètement, à l'issue de ce cours vous aurez acquis les connaissances et compétences nécessaires pour :

  • Comprendre les problèmes de qualité du code et appliquer les techniques de refactoring de code
  • Trouver les points d’entrée pour améliorer du code legacy en limitant les risques
  • Mettre en place des tests automatisés autour de code legacy
  • Évaluer les risques et définir une stratégie de réduction de la dette technique adaptée.
PRÉ-REQUIS :
 

Pour aborder cette formation dans de bonnes conditions, il vous faut avoir certaines connaissances et compétences en programmation et génie logiciel, ainsi qu'une expérience en développement piloté par les tests (TDD) et la programmation orientée.
Il est également demandé d'avoir suivi la Formation « Optimiser la qualité du développement avec Test Driven Development » (TDQD).

PUBLIC :
 

Ce cours s'adresse aux Chefs de projets en développement, Développeurs, Testeurs ayant une fibre développement, Architectes et Technical Leaders.

PROGRAMME :
 

Anti pattern : legacy code

Définir le code legacy : du code reçu en héritage, qui a une valeur pour l’entreprise mais qu’il faut modifier
Quatre raisons de modifier un code legacy
Couvrir les tests avec un harnais de tests unitaires
Améliorer le délai de feedback du code sur le développeur
Difficultés du Test Driven Development (TDD) sur du code legacy
Le dilemme du code legacy

Exercice pratique

« Racontez une session de travail durant laquelle vous avez renoncé à écrire un test sur du code existant. »

Stratégie de modification d’un code legacy

Identifier un point de changement
Trouver les points de test
Casser les dépendances
Ecrire des tests
Effectuer le changement et refactorer
Types de raccords : préprocesseur, faux collaborateurs

Bilan du jour 1

Pattern : test de caractérisation

Problème : le code est non testé, la documentation est absente ou obsolète
Solution : écrire des tests qui caractérisent le système tel qu’il est
Démarche :
- Appeler un morceau de code depuis un harnais de test
- Ecrire une assertion dont vous savez qu’elle échouera
- En échouant le test indique quel est le comportement du code
- Modifier le test de façon à ce qu’il attende le comportement que produit le code
- Répéter
Heuristique générale
Test de caractérisation sur un bug

Exercice pratique

« Installer la base de code TriviaGame – examiner les classes – écrire des tests de caractérisation. »
Débrief toutes les 25 minutes

Pattern : diagramme d’effet

Problème : étudier l’impact d'un changement sur le code

Solution : tracer les effets de chaque variable sur les méthodes impactées

Exercice pratique

« Sur le code de Trivia Game, rechercher les effets d’un changement en traçant un diagramme d’effet. »

Bilan du jour 2

Pattern : Extract Interface

Problème : une classe collabore avec une classe posant une dépendance extérieure
Solution : extraire une interface de la classe posant la dépendance
Autres patterns de rupture de dépendances extérieures

Exercice pratique

« Sur un code sélectionné dans vos projets, effectuer des tests de caractérisations, puis du refactoring, en utilisant la stratégie vue précédemment. »
Débrief toutes les 25 minutes

Bilan et clôture de la session

TRAVAUX PRATIQUES :
 

Ce stage repose sur de nombreux exercices pratiques. Les participants apprendront à utiliser des outils immédiatement exploitables dans leurs projets en cours.
Ils échangeront sur leurs contextes respectifs et bénéficieront de retours d’expérience du formateur, complétés d’apports théoriques.

S'INSCRIRE À CETTE
FORMATION CRAFTSMANSHIP
Cliquez sur une date pour vous inscrire
Information pratiques sur
LA FORMATION
Lieu de la formation Paris - LA DEFENSE
Nous contacter 01 43 34 90 94
CETTE FORMATION SUR-MESURE Ce cours est réalisable en intra-entreprise, dans vos locaux ou nos salles de cours CONTACTER NOTRE SERVICE INTRA
D'autres formations
SUR LE MÊME THÈME

3 j

 

Développement

Maîtriser Clean Code
Le terme « Clean Code » désigne les pratiques, principes et standards qui définissent un code de qualité. Les équipes suivent cette méthode pour...

1 j

 

Développement

Revue de code
La Revue de code est à présent reconnue comme l'une des meilleures pratiques pour améliorer la qualité du développement. Elle apporte de nombreuses...

3 j

 
Le Test Driven Development (TDD), développement dirigé par les tests est une technique de programmation simple, élégante et efficace. Cette pratique des équipes...
Plus de formations sur le même thème

Des questions ?

ON VOUS RAPPELLE

 

0

Formations
Informatique
et Management
en ligne à ce jour

+ 0

Stagiaires dans nos
salles de cours sur
l'année

0%

De participants
satisfaits ou très
satisfaits de nos
formations

0

Formateurs experts
validés PLB