Middle
Kas yra sujungimas?
sobes.tech AI
Atsakymas iš AI
Koplingas (coupling) yra priklausomybės laipsnis tarp programos modulių ar komponentų. Kuo stipresnis koplingas, tuo glaudžiau susiję moduliai, ir pakeitimai viename gali paveikti kitą. Objektinio programavimo srityje siekiama silpno koplingo (loose coupling), kad pagerintų kodo priežiūrą ir lankstumą.
Pavyzdžiui, jei klasė A tiesiogiai naudoja klasės B vidines detales, tai yra stiprus koplingas. Norint sumažinti koplingą, naudojami sąsajos, abstrakcijos arba priklausomybių injekcija.
PHP pavyzdys su silpnu koplingu:
interface LoggerInterface {
public function log(string $message);
}
class FileLogger implements LoggerInterface {
public function log(string $message) {
// įrašymas į failą
}
}
class UserService {
private LoggerInterface $logger;
public function __construct(LoggerInterface $logger) {
$this->logger = $logger;
}
public function createUser() {
// naudotojo kūrimas
$this->logger->log('Naudotojas sukurtas');
}
}
Čia, UserService priklauso nuo LoggerInterface abstrakcijos, o ne nuo konkrečios realizacijos, kas sumažina koplingą.