Text Editor
Я думаю, многие из вас сталкивались с такой проблемой: работаешь в текстовом редакторе, сохраняешь документ и закрываешь редактор. А на следующий день перечитываешь текст и понимаешь, что одна из предыдущих версий была лучше, но вернуть её уже никак нельзя. С этой проблемой прекрасно справляются системы контроля версий (например, git), но в основном ими пользуются разработчики, а не обычные люди, работающие с текстом. В этой миссии вы поможете этим людям, создав прототип текстового редактора с возможностью сохранять различные версии текста, а затем возвращаться к любой из...
Ваша задача - реализовать 2 класса: Text и SavedText. Первый будет отвечать за работу с текстом (добавление, изменение шрифта и т.д.), а второй - за сохранение и управление версиями.
Класс Text должен иметь следующие методы:
Класс SavedText должен иметь следующие методы:
В этой миссии вам может помочь такой шаблон проектирования, как