Sobes.tech
Middle

Чӣ тавр пайваст кардан?

sobes.tech AI

Ҷавоб аз AI

Куплинг (coupling) — это степень зависимости между модулями или компонентами программы. Чем сильнее куплинг, тем теснее связаны модули, и изменения в одном могут повлиять на другой. В объектно-ориентированном программировании стремятся к слабому куплингу (loose coupling), чтобы повысить поддерживаемость и гибкость кода.

Например, если класс A напрямую использует внутренние детали класса B, это сильное куплинг. Чтобы снизить куплинг, используют интерфейсы, абстракции или внедрение зависимостей.

Пример слабого куплинга в PHP:

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

class FileLogger implements LoggerInterface {
    public function log(string $message) {
        // запись в файл
    }
}

class UserService {
    private LoggerInterface $logger;

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

    public function createUser() {
        // создание пользователя
        $this->logger->log('Пользователь создан');
    }
}

Здесь, UserService зависит от абстракции LoggerInterface, а не от конкретной реализации, что снижает куплинг.