Задание № 1435

Студент

Волобой Борис

Задача

Логгер с различным поведением

Состояние

Открыто

Назначено

16.10.2018, 08:42

Справка

Паттерн стратегия

Задача

1. Реализовать класс логгер. Примерный интерфейс:

class LoggerStrategy {
public:
    virtual void write(const std::string &message) = 0;
};

2. Реализовать 3 типа поведения (стратегий)

  • ConsoleLogger - выводит сообщение в консоль
  • SimpleFileLogger - выводит сообщение в файл
  • TimedFileLogger - выводит текущее время + сообщение в файл

3. Реализовать класс, который будет использовать одну из стратегий

class Logger {
public:
    void set_strategy(LoggerStrategy& strategy);

    void log_message(const std::string &message);
};

Действия