Qu'est-ce que l'accouplement?
sobes.tech IA
Réponse de l'IA
Le couplage (coupling) est le degré de dépendance entre les modules ou composants d’un programme. Plus le couplage est fort, plus les modules sont étroitement liés, et les modifications dans l’un peuvent affecter l’autre. En programmation orientée objet, on vise un couplage faible (loose coupling) pour améliorer la maintenabilité et la flexibilité du code.
Par exemple, si la classe A utilise directement des détails internes de la classe B, c’est un couplage fort. Pour réduire le couplage, on utilise des interfaces, des abstractions ou l’injection de dépendances.
Exemple de couplage faible en PHP:
interface LoggerInterface {
public function log(string $message);
}
class FileLogger implements LoggerInterface {
public function log(string $message) {
// écriture dans un fichier
}
}
class UserService {
private LoggerInterface $logger;
public function __construct(LoggerInterface $logger) {
$this->logger = $logger;
}
public function createUser() {
// création d’un utilisateur
$this->logger->log('Utilisateur créé');
}
}
Ici, UserService dépend de l’abstraction LoggerInterface, et non d’une implémentation concrète, ce qui réduit le couplage.