Null Object
Architecture 🟢 JuniorDéfinition
Remplace les vérifications null par un objet neutre qui implémente l'interface attendue avec un comportement par défaut (no-op).
Analogie
Un chauffeur fantôme dans un taxi autonome : le siège conducteur est occupe par quelque chose qui ne fait rien mais le système fonctionne.
Exemple de code
class NullLogger {
log() {} // no-op
error() {} // no-op
}
// Au lieu de: if (logger) logger.log(...)
Cas d'usage
Éviter les vérifications null répétitives pour des dépendances optionnelles.
Anti-pattern
Retourner null au lieu d'un objet neutre, forçant des checks partout.