дизайн вопрос:Создание одной копии одноточечного
У меня есть одиночки (в Objective-C, но это действительно не имеет значения)
Одноэлементный класс (объект), который на самом деле структура данных, доступная многим классам, и одна (отсюда - одиночный)
Теперь я хочу добавить возможность отмены, которая фактически сохраняет моментальный снимок состояния объекта, поэтому я могу вернуться к Это.
Что мне действительно нужно сделать, так это сломать одноэлементность объекта (нужна одна его копия). Но это не позволит мне делиться ею между всеми классами.
Идеи?
Вы должны изучить NSUndoManager; он сохраняет стек сообщений и аргументов для восстановления состояния, что намного эффективнее, чем копирование всей модели. На мой взгляд, копирование - это концепция, которая не очень хорошо вписывается в одноэлементный узор. – Jef