Convention over Configuration

Architecture 🟡 Mid

Définition

Privilégier des conventions sensées par défaut plutôt que de forcer une configuration explicite. Le développeur ne configure que ce qui dévie de la convention.

Analogie

Une réunion hebdo toujours lundi 9h : pas besoin de réinviter chaque semaine, seules les exceptions sont signalées.

Exemple de code

// Convention NestJS: UserController -> /users
@Controller('users') // convention: nom du controleur = route
class UserController {
  @Get() findAll() { ... } // GET /users
}

Cas d'usage

Frameworks comme Rails, NestJS, Spring Boot : réduire le boilerplate de configuration.

Anti-pattern

Trop de magie implicite rend le debug difficile quand la convention ne convient pas.
#architecture#interview#principle

En entretien

  1. Explique le principe "Convention over Configuration".

    Il s'agit de privilégier des conventions sensées par défaut plutôt que de forcer une configuration explicite, le développeur ne configurant que ce qui dévie de la convention. Des frameworks comme NestJS ou Rails l'utilisent pour réduire le boilerplate de configuration.

  2. Quel est le risque de ce principe ?

    Trop de magie implicite peut rendre le debug difficile le jour où la convention ne convient pas au cas particulier.

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre