Контейнер зависимостей (Dependency Injection Container) в контексте объектно-ориентированного программирования (ООП) — это паттерн проектирования, который позволяет управлять зависимостями между объектами. Он помогает инкапсулировать создание объектов и их зависимости, что делает код более модульным, тестируемым и поддерживаемым. Давайте создадим простой контейнер зависимостей на PHP, чтобы продемонстрировать основные принципы. phpКопировать кодinterface LoggerInterface {
public function log(string $message);
} phpКопировать кодclass FileLogger implements LoggerInterface {
public function log(string $message) {
// Логика записи сообщения в файл
echo "Logging to file: $message\n";
}
} phpКопировать кодclass UserService {
protected $logger;
public function __construct(LoggerInterface $logger) {
$this->logger = $logger;
}
public function createUser(string $name) {
// Логика создания пользователя
$this->logger->log("User