Sobes.tech
Middle

Nədir qoşulma?

sobes.tech Süni İntellekt

AI-dan cavab

Koppeling (coupling) — proqramın modulləri və ya komponentləri arasındakı asılılıq dərəcəsidir. Koppeling güclü olduqda, modullar daha sıx əlaqəlidir və birindəki dəyişikliklər digərinə təsir edə bilər. Ob’ekt yönümlü proqramlaşdırmada, kodun saxlanması və çevikliyini artırmaq üçün zəif koppeling (loose coupling) məqsəd qoyulur.

Məsələn, əgər A sinfi B sinfinin daxili detalları ilə birbaşa istifadə edirsə, bu güclü koppelingdir. Koppelingi azaltmaq üçün interfeyslər, abstraksiyalar və ya asılılıqların injeksiyası istifadə olunur.

PHP-də zəif koppeling nümunəsi:

interface LoggerInterface {
    public function log(string $message);
}

class FileLogger implements LoggerInterface {
    public function log(string $message) {
        // fayla yazma
    }
}

class UserService {
    private LoggerInterface $logger;

    public function __construct(LoggerInterface $logger) {
        $this->logger = $logger;
    }

    public function createUser() {
        // istifadəçi yarat
        $this->logger->log('İstifadəçi yaradıldı');
    }
}

Burada, UserService LoggerInterface abstraksiyasına bağlıdır və konkret həyata keçirməyə deyil, bu da koppelingi azaldır.