![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
это как разница между жидкостью и молоком.
Стратегия разрешает использовать объекты по их общему интерфейсу. А мост это паттерн позволящий вместо наследования использовать делегирование. Сам мост в этом случае явлеятся декораторм прикрывющим старатегии)
__________________
Отряд Котовскага Последний раз редактировалось Котяра; 07.03.2012 в 03:14. |
|
|||||
|
Регистрация: Mar 2012
Адрес: г. Санкт-Петербург
Сообщений: 16
|
Идем от другого один поведенческий другой структурный. Правильно?
|
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
Да! Можно и так сказать.
__________________
Отряд Котовскага |
|
|||||
|
Регистрация: Mar 2012
Адрес: г. Санкт-Петербург
Сообщений: 16
|
Так оно так и есть по классическому определению.) Реализация решения очевидна, но вот определение этой реализации...
Добавлено через 2 минуты Если мы говорим об утолении жажды, то согласен, а если о других свойствах нет...))) |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Все же смысл Стратегии в предоставлении алгоритма, даже не метода в широком смысле (алгоритм ничего не знает о внутреннем устройстве клиента и может изменять только те данные, которые дали ему в обработку, в то время как "метод вообще" может оперировать членами класса-клиента/хозяина). А смысл Моста в предоставлении целой иерархии взаимосвязанных классов, "модуля". Скажем, на примере игры: если Вы взяли огнемет, то взяли также бак горючего, систему охлаждения и варежки. Взяли АК47 – взяли набор патронов такого-то калибра, штык-нож и оптический прицел. И огнемет, и АК47 – абстрактно Оружие. Но ситуация выбора/замены здесь это не Стратегия. Это Мост. "Оружие" – это не поведение, это структура. Стратегия – когда из АК47 Вы стреляете разрывными или трассирующими, и абстракция "выстрел" конкретно отображается разными способами. Мост предоставляет систему взаимосвязанных классов, а Стратегия - способ выполнения действия. Диаграммы похожи – ну а с чего им различаться, они показывают только абстрактную схему "выбор и замена". Схема отношений одна, фигуранты – разные.
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Mar 2012
Адрес: г. Санкт-Петербург
Сообщений: 16
|
Здравствуйте!
Цитата:
Не согласен... Цитата:
Мост бы был если бы вы вот этот бак для огнемета хотели прикрутить к АК47 и оптику ко всему... Был бы мост. не согласен это очевидно -------------------------------------------------------------------------------------------------------------- Спасибо! |
|
|||||
|
Имхо перенести во флейм
![]() Насколько я понимаю никакого практического применения топик не имеет, автору всего лишь захотелось пофилософствовать. Или может действительно практическая задача не решится пока не станет ясна разница между паттернами? ![]()
__________________
...я люблю людей!.. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Ага, ожидал такой реакции. Что ж, тогда конкретней. Но не намного))
Рассмотрим последовательность. Персонаж выбирает "оружие", берет "оружие", "прицеливается", "стреляет". Мост: выбратьОружие(Огнемет), взятьОружие(), прицелиться(), стрелять(). Стратегия: выбратьОружие(Огнемет), взятьОружие(Огнемет), прицелиться(Огнемет), стрелять(Огнемет). Так понятней? Цитата:
Цитата:
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Mar 2012
Адрес: г. Санкт-Петербург
Сообщений: 16
|
Закройте тему пожалуйста! Все это лирика... Спасибо!
|
![]() |
![]() |
Часовой пояс GMT +4, время: 16:30. |
|
|
« Предыдущая тема | Следующая тема » |
|
|