SlideShare une entreprise Scribd logo
1  sur  27
Télécharger pour lire hors ligne
Clean Code Game
par Mathieu Gandin et Michel Domenjoud
17h - 19h Salle 5
#AgileFrance
Mathieu Gandin
Tech Lead
@octomga
Michel Domenjoud
Artisan codeur
@mdomenjoud
3
Software Craftsmanship
Aujourd’hui, nous pensons qu’être développeur est
une carrière aussi prestigieuse que celle de chef de
projet ou de consultant
Qualité non négociable
Apprentissage
4
Prends soin de ton code
Clean Code
5
Le Livre
6
Lisible
Explicite
Autoportant
Aussi facile à comprendre que de la prose
Clair pour toute l'équipe
Simple et bien structuré
Refactorable facilementTesté
Ne mélange pas les niveaux d'abstraction
Méthodes et classes courtes
Le code clean fait ce qu'il dit et
dit ce qu'il fait
Ne se répète pas
Séparation des responsabilités
Standard
Clean Code
Du code dont on prend soin
7
Culture du code
8
Newspaper style
9
Test Driven
Development
10
Design Emergent
11
BrokenWindow
12
Boy Scout Rule
Clean Code
13
Le Livre
14
Sujets vus
 Clean Code
 Meaningful Names
 Functions
 Comments
 Formatting
 Objects and Data Structures
 Error Handling
 Boundaries
 Unit Tests
 Classes
 Systems
 Emergence
 Concurrency
 Successive Refinement
 JUnit Internals
 Refactoring SerialDate
 Smells and Heuristics
 Concurrency II
Les bonnes pratiques de l’artisan codeur
Etudes de cas
Le Livre
15© OCTO 2012
Leçons apprises
16
Nommage
17
Nommage
18
Commentaires
19
Commentaires
20
Functions
21
Functions
22
Functions
23
Objets
24
Objets
25
Continuez chez vous
https://github.com/octomga/atelierCleanCode
26
Aller + loin
Clean Code Game
Mathieu Gandin
Tech Lead
@octomga
Michel Domenjoud
Artisan codeur
@mdomenjoud
#AgileFrance

Contenu connexe

Tendances

Introduction à la qualité logicielle (1/5)
Introduction à la qualité logicielle (1/5)Introduction à la qualité logicielle (1/5)
Introduction à la qualité logicielle (1/5)Sylvain Leroy
 
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...TelecomValley
 
Soirée du Test Logiciel - Les dernières tendances du test logiciel - B. LEGEA...
Soirée du Test Logiciel - Les dernières tendances du test logiciel - B. LEGEA...Soirée du Test Logiciel - Les dernières tendances du test logiciel - B. LEGEA...
Soirée du Test Logiciel - Les dernières tendances du test logiciel - B. LEGEA...TelecomValley
 
Adoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALMAdoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALMGrégory Ott
 
Y sont pas cher mes tests
Y sont pas cher mes testsY sont pas cher mes tests
Y sont pas cher mes testsNicolas Ledez
 
Industrialisation des développements logiciels
Industrialisation des développements logicielsIndustrialisation des développements logiciels
Industrialisation des développements logicielsSylvain Leroy
 
Altran soirée du test logiciel - assez des c 05-10-17
Altran   soirée du test logiciel - assez des c 05-10-17Altran   soirée du test logiciel - assez des c 05-10-17
Altran soirée du test logiciel - assez des c 05-10-17Marc Hage Chahine
 
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?XP Day CH
 
eXtreme Programming [fr]
eXtreme Programming [fr]eXtreme Programming [fr]
eXtreme Programming [fr]Rémy Coutable
 
Comment transformer un débutant en super-développeur
Comment transformer un débutant en super-développeurComment transformer un débutant en super-développeur
Comment transformer un débutant en super-développeurGauthier Delamarre
 
Contrôle de la qualité logiciel
Contrôle de la qualité logicielContrôle de la qualité logiciel
Contrôle de la qualité logicielSylvain Leroy
 
Extreme programming
Extreme programmingExtreme programming
Extreme programmingBilal ZIANE
 
Développement en méthode agile
Développement en méthode agileDéveloppement en méthode agile
Développement en méthode agilelaurent bristiel
 

Tendances (20)

Introduction à la qualité logicielle (1/5)
Introduction à la qualité logicielle (1/5)Introduction à la qualité logicielle (1/5)
Introduction à la qualité logicielle (1/5)
 
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...
Soirée du Test Logiciel - Intelligence Artificielle dans le test - J. VAN QUA...
 
Soirée du Test Logiciel - Les dernières tendances du test logiciel - B. LEGEA...
Soirée du Test Logiciel - Les dernières tendances du test logiciel - B. LEGEA...Soirée du Test Logiciel - Les dernières tendances du test logiciel - B. LEGEA...
Soirée du Test Logiciel - Les dernières tendances du test logiciel - B. LEGEA...
 
Adoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALMAdoption incrémentale des tests dans VS ALM
Adoption incrémentale des tests dans VS ALM
 
Y sont pas cher mes tests
Y sont pas cher mes testsY sont pas cher mes tests
Y sont pas cher mes tests
 
Qualite1
Qualite1Qualite1
Qualite1
 
Clean code Game
Clean code GameClean code Game
Clean code Game
 
Industrialisation des développements logiciels
Industrialisation des développements logicielsIndustrialisation des développements logiciels
Industrialisation des développements logiciels
 
Assurance qualité
Assurance qualitéAssurance qualité
Assurance qualité
 
Altran soirée du test logiciel - assez des c 05-10-17
Altran   soirée du test logiciel - assez des c 05-10-17Altran   soirée du test logiciel - assez des c 05-10-17
Altran soirée du test logiciel - assez des c 05-10-17
 
Agile Methodologies
Agile MethodologiesAgile Methodologies
Agile Methodologies
 
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?
D1 - Un développeur est-il un numéro, un coût journalier ou un artiste ?
 
Method XP
Method XP Method XP
Method XP
 
Tests Logiciel
Tests LogicielTests Logiciel
Tests Logiciel
 
eXtreme Programming [fr]
eXtreme Programming [fr]eXtreme Programming [fr]
eXtreme Programming [fr]
 
Comment transformer un débutant en super-développeur
Comment transformer un débutant en super-développeurComment transformer un débutant en super-développeur
Comment transformer un débutant en super-développeur
 
Contrôle de la qualité logiciel
Contrôle de la qualité logicielContrôle de la qualité logiciel
Contrôle de la qualité logiciel
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
Xtreme Programming
Xtreme ProgrammingXtreme Programming
Xtreme Programming
 
Développement en méthode agile
Développement en méthode agileDéveloppement en méthode agile
Développement en méthode agile
 

Similaire à Clean code game - Agile France 2013

Les Code Reviews : le guide de survie
Les Code Reviews : le guide de survieLes Code Reviews : le guide de survie
Les Code Reviews : le guide de survieNicolas VERINAUD
 
NDepend 5 en action par son créateur
NDepend 5 en action par son créateurNDepend 5 en action par son créateur
NDepend 5 en action par son créateurMicrosoft
 
Faire du-code-centre-sur-l-humain devoxx
Faire du-code-centre-sur-l-humain devoxxFaire du-code-centre-sur-l-humain devoxx
Faire du-code-centre-sur-l-humain devoxxVISEO
 
2016 octo wp_culture_code_software_craftsmanship
2016 octo wp_culture_code_software_craftsmanship2016 octo wp_culture_code_software_craftsmanship
2016 octo wp_culture_code_software_craftsmanshipChristophe Monnier
 
[Agile Testing Day] Techniques avancées de tests
[Agile Testing Day] Techniques avancées de tests[Agile Testing Day] Techniques avancées de tests
[Agile Testing Day] Techniques avancées de testsCellenza
 
Ratez vos revue de code en 5 lecons devoxx fr 2016
Ratez vos revue de code en 5 lecons   devoxx fr 2016Ratez vos revue de code en 5 lecons   devoxx fr 2016
Ratez vos revue de code en 5 lecons devoxx fr 2016Michel Domenjoud
 
Les craft.wo.men Confiné.e.s - Agile en Seine 2021
Les craft.wo.men Confiné.e.s - Agile en Seine 2021Les craft.wo.men Confiné.e.s - Agile en Seine 2021
Les craft.wo.men Confiné.e.s - Agile en Seine 2021Agile En Seine
 
Comment faire du Data SEO sans savoir programmer ?
Comment faire du Data SEO sans savoir programmer ?Comment faire du Data SEO sans savoir programmer ?
Comment faire du Data SEO sans savoir programmer ?Vincent Terrasi
 
Coding dojo en entreprise
Coding dojo en entrepriseCoding dojo en entreprise
Coding dojo en entrepriseNicolas Ledez
 
10 ans de Code (Agile Bordeaux 2019).pptx
10 ans de Code (Agile Bordeaux 2019).pptx10 ans de Code (Agile Bordeaux 2019).pptx
10 ans de Code (Agile Bordeaux 2019).pptxGuillaume Saint Etienne
 
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...Benoit St-André
 
[Agile Testing Day] Test Driven Development (TDD)
[Agile Testing Day] Test Driven Development (TDD)[Agile Testing Day] Test Driven Development (TDD)
[Agile Testing Day] Test Driven Development (TDD)Cellenza
 
Recherche lead technique désespérément
Recherche lead technique désespérémentRecherche lead technique désespérément
Recherche lead technique désespérémentAgile Montréal
 
Agilité, Tests Et Industrialisation
Agilité, Tests Et IndustrialisationAgilité, Tests Et Industrialisation
Agilité, Tests Et IndustrialisationPHPPRO
 
Le design du code de tous les jours
Le design du code  de tous les joursLe design du code  de tous les jours
Le design du code de tous les joursyannick grenzinger
 
Le métier de Product Owner
Le métier de Product OwnerLe métier de Product Owner
Le métier de Product OwnerFlorent Boyer
 
12+1 Patterns opérationnels de transition agile
12+1 Patterns opérationnels de transition agile12+1 Patterns opérationnels de transition agile
12+1 Patterns opérationnels de transition agileChristophe Addinquy
 
Pratiques de développement pour équipes Agile
Pratiques de développement pour équipes AgilePratiques de développement pour équipes Agile
Pratiques de développement pour équipes AgileAgile Tour 2009 Québec
 

Similaire à Clean code game - Agile France 2013 (20)

Les Code Reviews : le guide de survie
Les Code Reviews : le guide de survieLes Code Reviews : le guide de survie
Les Code Reviews : le guide de survie
 
NDepend 5 en action par son créateur
NDepend 5 en action par son créateurNDepend 5 en action par son créateur
NDepend 5 en action par son créateur
 
Faire du-code-centre-sur-l-humain devoxx
Faire du-code-centre-sur-l-humain devoxxFaire du-code-centre-sur-l-humain devoxx
Faire du-code-centre-sur-l-humain devoxx
 
2016 octo wp_culture_code_software_craftsmanship
2016 octo wp_culture_code_software_craftsmanship2016 octo wp_culture_code_software_craftsmanship
2016 octo wp_culture_code_software_craftsmanship
 
Bref
BrefBref
Bref
 
[Agile Testing Day] Techniques avancées de tests
[Agile Testing Day] Techniques avancées de tests[Agile Testing Day] Techniques avancées de tests
[Agile Testing Day] Techniques avancées de tests
 
No code low code
No code low codeNo code low code
No code low code
 
Ratez vos revue de code en 5 lecons devoxx fr 2016
Ratez vos revue de code en 5 lecons   devoxx fr 2016Ratez vos revue de code en 5 lecons   devoxx fr 2016
Ratez vos revue de code en 5 lecons devoxx fr 2016
 
Les craft.wo.men Confiné.e.s - Agile en Seine 2021
Les craft.wo.men Confiné.e.s - Agile en Seine 2021Les craft.wo.men Confiné.e.s - Agile en Seine 2021
Les craft.wo.men Confiné.e.s - Agile en Seine 2021
 
Comment faire du Data SEO sans savoir programmer ?
Comment faire du Data SEO sans savoir programmer ?Comment faire du Data SEO sans savoir programmer ?
Comment faire du Data SEO sans savoir programmer ?
 
Coding dojo en entreprise
Coding dojo en entrepriseCoding dojo en entreprise
Coding dojo en entreprise
 
10 ans de Code (Agile Bordeaux 2019).pptx
10 ans de Code (Agile Bordeaux 2019).pptx10 ans de Code (Agile Bordeaux 2019).pptx
10 ans de Code (Agile Bordeaux 2019).pptx
 
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
Gérer l'inconnu avec peu de moyens par le développement itératif - L'agili...
 
[Agile Testing Day] Test Driven Development (TDD)
[Agile Testing Day] Test Driven Development (TDD)[Agile Testing Day] Test Driven Development (TDD)
[Agile Testing Day] Test Driven Development (TDD)
 
Recherche lead technique désespérément
Recherche lead technique désespérémentRecherche lead technique désespérément
Recherche lead technique désespérément
 
Agilité, Tests Et Industrialisation
Agilité, Tests Et IndustrialisationAgilité, Tests Et Industrialisation
Agilité, Tests Et Industrialisation
 
Le design du code de tous les jours
Le design du code  de tous les joursLe design du code  de tous les jours
Le design du code de tous les jours
 
Le métier de Product Owner
Le métier de Product OwnerLe métier de Product Owner
Le métier de Product Owner
 
12+1 Patterns opérationnels de transition agile
12+1 Patterns opérationnels de transition agile12+1 Patterns opérationnels de transition agile
12+1 Patterns opérationnels de transition agile
 
Pratiques de développement pour équipes Agile
Pratiques de développement pour équipes AgilePratiques de développement pour équipes Agile
Pratiques de développement pour équipes Agile
 

Clean code game - Agile France 2013