Показать сообщение отдельно
Старый 17.08.2014, 01:34
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 8  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
Любые паттерны - это лишь набор рекомендаций (шаблонов), самое главно понять их суть - реализации одного и того же шаблона могут быть самыми разнообразными, тем более в разных языках.
Можно писать-дописывать свои реализации, если так будет удобнее в вашем конкретном случае - главное при этом не исказить смысл до противоположного.
Вернёмся к вашему вопросу о паттерне комманда - весь смысл этого паттерна - обособить действие в отдельный объект. Соответственно результат выполнения команды должен быть спрятан в этом объекте, кроме того, паттерн Команда не говорит ничего, каким должна быть эта команда - синхронная, асинхронная или ёще какая, соответственно никто не гарантирует, что execute может возвратить что-то.
Чаще всего - Команда - это объект, который совершает действия над другими объектами, передаными в качестве параметров конструктора.
Если вы измените это поведение - ничего страшного, но это уже будет другой паттерн.

Добавлено через 3 минуты
Цитата:
Но если шаблон немного не подходит под задачу, то это означает, что нужно от него отказаться или можно его видоизменить или даже компоновать с другими шаблонами?
Этот подход в корне неверен. Нельзя просто так взять и впихнуть конкретный паттерн в невпихуемое. Именно для задачи мы выбираем подходящий шаблон или пишем свой велосипед и никак иначе.

Добавлено через 12 минут
Цитата:
А вот если бы Вы знали, что этот класс Декоратор, а эти Momento и Proxy.
Это очень плохие имена, которые всё равно не внесут ясности. Называть имена по использующимся в них паттернам - упячка, т.к. один и тот же класс может быть одновременно как Декоратором, так и Контроллером, и даже, одновременно с этим, Видом, смотря с какой точки зрения на него посмотреть.
__________________
Отряд Котовскага


Последний раз редактировалось Котяра; 17.08.2014 в 01:52.