Bonnes pratiques résumées en 5 acronymes


Apéro PHP 25/03/2021

1. DRY : Don’t Repeat Yourself

Éliminer les duplications de code ⇒ factoriser

  • Ne pas réinventer la roue
  • Bugs / améliorations sont appliqués pour tout

2. KISS : Keep It Simple, Stupid

Ne pas faire trop “malin” ou “magique”

  • On passe plus de temps à lire du code qu’à en écrire
  • Code simple = plus facile à comprendre, donc à maintenir

3. LoD : Law of Demeter

On demande au chien de nous suivre, pas à ses pattes

Une méthode doit utiliser uniquement les méthodes de ces objets :

  • sa classe
  • ses paramètres
  • instanciés par elle
  • propriétés de sa classe
  • variables globales

Law of Demeter : infractions

Law of Demeter : corrections

4. S.O.L.I.D.

  • Single Responsibility Principle
  • Open / Closed Principle
  • Liskov Substitution Principle
  • Interface Segregation Principle
  • Dependency Inversion Principle

Single Responsibility Principle

un module, une classe ou une méthode doit avoir une et une seule responsabilité

Open / Closed Principle

une classe / fonction / module doit être ouverte à l'extension, mais fermée à la modification

Open / Closed Principle : exemple

Liskov Substitution Principle

si Fille extends Mère alors Mère doit pouvoir être remplacé par Fille sans aucun soucis

Interface Segregation Principle

créer une interface pour chaque usage plutôt qu’une interface générale

Dependency Inversion Principle

il faut dépendre des abstractions, pas des implémentations

5. TDD : Test Driven Development

Se laisser porter jusqu’à la solution, puis l’améliorer

Ecrire test > Ecrire code > Refactoriser > Répéter

Merci !

Des questions ?