Separation of Concerns
Architecture 🟢 JuniorDefinition
Decoupe un programme en sections distinctes, chacune traitant une preoccupation specifique. Minimise le chevauchement de responsabilites.
Analogie
Les rayons d'un supermarche : fruits, viande, boissons — chaque rayon a sa specialite.
Exemple de code
// Separe: route, validation, business, persistence
router.post('/users', validate(schema), async (req, res) => {
const user = await userService.create(req.body);
res.json(user);
});
Cas d'usage
Fondement de toute architecture en couches : UI, logique, donnees.
Anti-pattern
Composant qui fait requete HTTP + validation + logique metier + rendu HTML.