Каким образом вы примените паттерн 'фабрика' в своем проекте?

Паттерн «фабрика» используется для создания объектов без явного указания конкретного класса создаваемого объекта. В PHP это удобно, когда нужно создавать объекты разных классов, но использовать их через общий интерфейс.

Короткий ответ

Что ответить на собеседовании

Паттерн «фабрика» используется для создания объектов без явного указания конкретного класса создаваемого объекта. В PHP это удобно, когда нужно создавать объекты разных классов, но использовать их через общий интерфейс.

Подробный разбор

Ответ с пояснениями

Паттерн «фабрика» используется для создания объектов без явного указания конкретного класса создаваемого объекта. В PHP это удобно, когда нужно создавать объекты разных классов, но использовать их через общий интерфейс.

Пример:

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

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

class DatabaseLogger implements Logger {
    public function log(string $message) {
        // Запись в базу данных
    }
}

class LoggerFactory {
    public static function create(string $type): Logger {
        if ($type === 'file') {
            return new FileLogger();
        } elseif ($type === 'database') {
            return new DatabaseLogger();
        }
        throw new Exception('Unknown logger type');
    }
}

// Использование:
$logger = LoggerFactory::create('file');
$logger->log('Сообщение');

Такой подход упрощает расширение и поддержку кода, позволяя менять тип создаваемых объектов без изменения клиентского кода.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее