Показать сообщение отдельно
Старый 11.04.2012, 13:25
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 55  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
gloomyBrain, сделать-то конечно можно по-разному. Автор в начале темы тоже вполне рабочий вариант предлагал. Но меня интересовал скорее теоретический вопрос про сферический Декоратор в вакууме, а не применительно к данной задаче. Но получилось что и к данной задаче он вполне подходит. Хотя я по-прежнему считаю что сэкономить память он не поможет. Как бы цели слегка не те у паттернов. Они же для облегчения разработки, а не веса экземпляров)). Ну да, когда система отлажена, создание самих декораторов элегантно и прозрачно. Не совсем понятно, стоит ли разворачивать такую систему для трех-четырех бонусов. А если их будет 40, то и с каждым новым декоратором будет наслаиваться 40 новых геттеров-ретрансляторов ради изменения одного свойства((.

Добавлено через 2 часа 6 минут
Цитата:
Сообщение от alatar Посмотреть сообщение
Можно вынести в отдельный интерфейс для декораторов. Тогда шапки и штаны останутся чистенькими
Блин, я тупица! Я так и пытался, но не в ту сторону делал наследование интерфейсов)) Теперь все получилось идеально: только декоратор реализует IDecoratorsChain (который наследует IEnchantable, а не наоборот))), и его сеттер и геттер item имеет тип IDecoratorsChain. Шапкам и штанам оно действительно не потребовалось))
Большое спасибо, alatar!
__________________
Reality.getBounds(this);