Назад к вопросам
Junior — Middle
99
Каким образом вы примените паттерн 'фабрика' в своем проекте?
Ответ от нейросети
sobes.tech AI
Паттерн «фабрика» используется для создания объектов без явного указания конкретного класса создаваемого объекта. В 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('Сообщение');
Такой подход упрощает расширение и поддержку кода, позволяя менять тип создаваемых объектов без изменения клиентского кода.