Convention over Configuration

Architecture 🟡 Mid

Definition

Privilegier des conventions sensees par defaut plutot que de forcer une configuration explicite. Le developpeur ne configure que ce qui devie de la convention.

Analogie

Une reunion hebdo toujours lundi 9h : pas besoin de reinviter chaque semaine, seules les exceptions sont signalees.

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 : reduire le boilerplate de configuration.

Anti-pattern

Trop de magie implicite rend le debug difficile quand la convention ne convient pas.

Termes lies

#architecture#interview#principle