Format : Stage pratique
Niveau Avancé
 
 
 
 
Répartition du temps : 20% exposés
70% pratique
10% échanges

La formation en détails

Description

Le code legacy est une métaphore pour parler de ce code existant dans nos applications, difficile à maintenir, souvent de mauvaise qualité et non testé automatiquement.

Ce module forme les développeurs aux pratiques permettant de maintenir et de faire évoluer du code legacy sans risque, et ainsi trouver les trajectoires de retour à une haute qualité. Ce sera l'occasion d'apprendre à mettre en place des tests automatisés quelles que soient les possibilités initiales du code.
 

Objectifs

  • Savoir appréhender des problèmes de qualité du code et appliquer les techniques de refactoring de code
  • Identifier les points d'entrée pour faire évoluer du code legacy en minimisant les risques
  • Appliquer les techniques pour mettre en place des tests automatisés autour de code legacy
  • Evaluer les risques pour choisir une stratégie adaptée de réduction de la dette technique

Public cible

  • Chef de projet en développement
  • Développeur
  • Testeur ayant une fibre développement
  • Architecte
  • Technical Leader

Prérequis

  • Compétences en programmation et génie logiciel.
  • Une expérience dans le développement piloté par les tests (TDD) et la programmation orientée objet est un plus.
  • Avoir suivi la formation « Qualité des développements avec Test Driven Development : optimiser son développement logiciel par les tests » (TDD01).

Modalités pédagogiques

Formation principalement composée d'exercices pratiques qui fourniront aux participants des outils qu'ils pourront mettre en pratique immédiatement dans leurs projets actuels.

Echanges sur les contextes des participants et retours d'expérience du formateur, complétés d'apports théoriques.

Profil du formateur

Toutes nos formations sont animées par des consultants-formateurs expérimentés et reconnus par leurs pairs.
 

Modalités d'évaluation et de suivi

L'évaluation des acquis se fait tout au long de la session au travers des ateliers et des mises en pratique. Une évaluation à chaud sur la satisfaction des stagiaires est réalisée systématiquement en fin de session et une attestation de formation est délivrée aux participants mentionnant les objectifs de la formation, la nature, le programme et la durée de l'action de formation ainsi que la formalisation des acquis.

Programme détaillé

Jour 1

ANTI PATTERN : LEGACY CODE
  • Du code que nous avons reçu en héritage, qui a une valeur pour l’entreprise, et qu’il faut modifier
  • Les 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 TDD sur du code legacy
  • Le dilemme du code legacy

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

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

MISE EN PRATIQUE

CLÔTURE DU JOUR 1

Jour 2

PATTERN : DIAGRAMME D’EFFET
  • Problème : on souhaite étudier l’impact que pourrait avoir un changement sur le code
  • Solution : tracer les effets de chaque variable sur les méthodes impactées

MISE EN PRATIQUE

CLÔTURE DU JOUR 2

Jour 3

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

MISE EN PRATIQUE

BILAN ET CLÔTURE DE LA FORMATION
4.40 / 5

Satisfaction moyenne des participants

Sur la base de 23 avis, collectés en fin de formation durant les 12 derniers mois.

Nos autres formations du domaine « Qualité du logiciel » Toutes les formations du domaine

MCODE Culture code : manager la qualité
Mettre en place des actions favorisant l'amélioration continue de la qualité du code
Durée : 7 h / 1 j
Avancé
 
 
 
 
Prochaine session : 12 décembre 2022
REVCO Revue de code
Améliorer son code et créer des standards de qualité partagés par l'équipe avec Code Review
Meilleure vente
Durée : 7 h / 1 j
Avancé
 
 
 
 
Prochaine session : 14 mars 2023
TDD01 Qualité des développements avec Test Driven Development
Optimiser son développement logiciel par les tests
Durée : 21 h / 3 j
Avancé
 
 
 
 
Prochaine session : 20 mars 2023
TDD03 Clean Code
Concevoir et écrire un code propre ou améliorer un code existant
Meilleure vente
Durée : 14 h / 2 j
Avancé
 
 
 
 
Prochaine session : 13 décembre 2022
DEAPP Design applicatif
Architecturer une application pour ses besoins présents et futurs
Meilleure vente
Durée : 14 h / 2 j
Avancé
 
 
 
 
Prochaine session : 06 mars 2023
DDD01 DDD : Domain-Driven Design
Acquérir les pratiques d’une conception logicielle orientée métier
Meilleure vente
Durée : 14 h / 2 j
Fondamentaux
 
 
 
 
Prochaine session : 16 mars 2023

Besoin d'aide pour trouver votre formation ?

Contactez-nous

Sessions & Inscriptions

Session partagée avec d'autres organisations

Prochaines sessions
  • du 27 au 29/03/2023
    Distanciel
    2 050,00 € HT
  • du 19 au 21/06/2023
    Présentiel, Paris
    2 050,00 € HT
  • du 09 au 11/10/2023
    Présentiel, Paris
    2 050,00 € HT
Durée
21 h / 3 j

Demander un devis Nous contacter
Télécharger le programme

Organiser une session dédiée à votre organisation

Durée
21 h / 3 j

Vous avez plusieurs collaborateurs à former ?

Cette formation peut être organisée
sous la forme de sessions dédiées
aux membres de votre organisation.

Demander un devis Nous contacter Télécharger le programme

Personnaliser cette formation

Cette formation vous intéresse
et vous souhaitez l'adapter pour
vos collaborateurs ?

Nos formateurs et notre équipe pédagogique sont à
votre disposition pour en discuter
et vous proposer un programme sur-mesure.

Nous contacter Télécharger le programme

OCTO Academy respecte votre vie privée

Ce site web stocke des informations vous concernant via le dépôt de cookie afin de mesurer l’audience du site. Ces données de navigation sont anonymisées.

En cliquant sur « OK pour moi », vous manifestez votre consentement pour le dépôt de ces cookies.

Lire la politique de confidentialité

À propos des cookies

Sur ce site, nous utilisons des cookies pour mesurer notre audience, entretenir la relation avec vous et vous adresser de temps à autre du contenu qualitif ainsi que de la publicité. Vous pouvez sélectionner ici ceux que vous autorisez à rester ici.

Cookies