Single Responsibility Principle

PHP 🟡 Mid

Definition

Une classe ne doit avoir qu'une seule raison de changer. Chaque classe se concentre sur une seule responsabilite metier.

Analogie

Comme un employe specialise : le cuisinier cuisine, le serveur sert, le caissier encaisse.

Exemple de code

// Mauvais: une classe qui fait tout
// class User { save(), sendEmail(), generatePDF() }

// Bon: responsabilites separees
class UserRepository { public function save(User $u) {} }
class UserMailer { public function welcome(User $u) {} }
class UserExporter { public function toPDF(User $u) {} }

Cas d'usage

Toujours : chaque classe creee doit avoir une responsabilite claire et unique.

Anti-pattern

La God Class de 2000 lignes qui gere les donnees, l'affichage, les emails et les logs.
#core#interview#solid