Middle
Kas ir savienojums?
sobes.tech AI
Atbilde no AI
Koppling (coupling) ir pakāpe, kādā moduļi vai komponenti ir atkarīgi viens no otra programmā. Jo stiprāka ir koplinga, jo ciešāk moduļi ir saistīti, un izmaiņas vienā var ietekmēt otru. Objektorientētajā programmēšanā tiek tiekties uz vāju koplingu (loose coupling), lai uzlabotu koda uzturēšanu un elastību.
Piemēram, ja klase A tieši izmanto klases B iekšējās detaļas, tas ir stiprs koplings. Lai samazinātu koplingu, tiek izmantotas saskarnes, abstrakcijas vai atkarību injekcija.
PHP piemērs ar vāju koplingu:
interface LoggerInterface {
public function log(string $message);
}
class FileLogger implements LoggerInterface {
public function log(string $message) {
// ieraksts failā
}
}
class UserService {
private LoggerInterface $logger;
public function __construct(LoggerInterface $logger) {
$this->logger = $logger;
}
public function createUser() {
// lietotāja izveide
$this->logger->log('Lietotājs izveidots');
}
}
Šeit, UserService ir atkarīgs no LoggerInterface abstrakcijas, nevis no konkrētas realizācijas, kas samazina koplingu.