Convention over Configuration
Architecture 🟡 MidDefinition
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.