Middle
Čo je to spojenie?
sobes.tech AI
Odpoveď od AI
Kopplung (coupling) je miera зависимости medzi modulmi alebo komponentami programu. Čím je silnejšie kopplovanie, tým sú moduly úzko prepojené, a zmeny v jednom môžu ovplyvniť druhý. V objektovo orientovanom programovaní sa usiluje o slabé kopplovanie (loose coupling), aby sa zvýšila udržiavateľnosť a flexibilita kódu.
Napríklad, ak trieda A priamo používa interné detaily triedy B, ide o silné kopplovanie. Na zníženie kopplovania sa používajú rozhrania, abstrakcie alebo injekcia závislostí.
Príklad slabého kopplovania v PHP:
interface LoggerInterface {
public function log(string $message);
}
class FileLogger implements LoggerInterface {
public function log(string $message) {
// zápis do súboru
}
}
class UserService {
private LoggerInterface $logger;
public function __construct(LoggerInterface $logger) {
$this->logger = $logger;
}
public function createUser() {
// vytvorenie používateľa
$this->logger->log('Používateľ vytvorený');
}
}
Tu, UserService závisí od abstrakcie LoggerInterface, nie od konkrétnej implementácie, čo znižuje kopplovanie.