Un jeu de tennis qui sent (à peu près) bon

Les software crafters de Lyon

@saby_nastasia

  • Sujets
  • Woody Zuill - Workshop - tiny.cc/pcbs2y​
  • 45 minutes sur un KATA pour produire du code (TDD/Pair programming)

  • Debrief

  • Puis comment l'améliorer (lui donner une bonne odeur)

Entière description : http://codingdojo.org/kata/Tennis/

ETAPE 1 : MARQUER UN POINT AUGMENTE LE SCORE CORRECTEMENT

En tant qu'utilisateur, je veux que le score augmente quand un joueur marque un point

  • Etant donnée le score 0:0
    Quand le serveur marque un point
    Alors le score est 15:0

  • Etant donnée le score 15:15
    Quand le receveur marque un point
    Alors le score est 15:30

  • Etant donnée le score 30:30
    Quand le serveur marque un point
    Alors le score est 40:30

 

http://agilekatas.co.uk/katas/Tennis-Kata

C'est quoi un bad smell ?

Kent beck et Martin fowler se rencontrENT

Corriger ce qui existe déjà

T'étais possédé quand
 t'as fait ce code ?

Euh ...

Un bad smell nommé

Des méthodes pour y remédier

Les bloaters - ce qui est trop gros

Large class : classe trop grosse

 

Extraire une classe, sous-classe ou superclasse

Primitive obsession : trop de primitives

 

  • Créer une classe
  • Liste de paramètres en primitive => objet
  • Array => objet
  • Rendre compte de la valeur unitaire d'un groupe de variables

Object-Orientation abusers - ce qui abuse de la Programmation orientée objet

Dispensables - ce qui n'est pas nécessaire

Commentaires : des commentaires non nécessaires

 

Le meilleur commentaire est un bon nom de méthode ou de classe.

 

  • Extraire des méthodes
  • Extraire des variables
  • Renommer des méthodes et variables

Code dupliqué : du code pareil ou qui se ressemble

 

  • Extraire des méthodes
  • Remonter la méthode ou champ dans une super classe
  • Form template method

Zoom Form Template method

Zoom Form Template method

Change-preventers- ce qui Empêche les changements

Divergent changes

1 changement dans une classe entraîne plein de petits changements dans plusieurs méthodes de cette classe

 

  • Définir le comportement commun et le mettre à part dans une méthode ou classe
  • Peut-être extraire une sous-classe ou super-classe

COuplers-Trop de couplage

Bloaters (trop gros)

Large classe

Primitive obsession

 

Dispensables

Commentaire

Code dupliqué

 

Divergent change (ce qui empêche le changement)

Divergent change

 

https://sourcemaking.com/refactoring

 

 

Ressources/Liens

  • Refactoring: Improving the design of existing code (Martin Fowler)
  • Source Making (site et cours en ligne)

Merci

Transcription Un jeu de tennis qui sent (à peu près) bon

By nastasiasaby

Transcription Un jeu de tennis qui sent (à peu près) bon

  • 155

More from nastasiasaby