powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / наблюдатель наоборот
16 сообщений из 16, страница 1 из 1
наблюдатель наоборот
    #38144137
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В паттерне наблюдатель есть 1 наблюдаемый и куча наблюдателей, а если наоборот есть 1 наблюдатель за кучей наблюдаемых это является каким то паттерном общепринятым?
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144152
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
redwhite90В паттерне наблюдатель есть 1 наблюдаемый и куча наблюдателей, а если наоборот есть 1 наблюдатель за кучей наблюдаемых это является каким то паттерном общепринятым?
https://www.google.com.ua/search?q=golden+hammer+antipattern
Паттерны не являются вещью в себе. Они являются типовым решением типовой проблемы. Какая у вас "проблема"?
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144154
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz,

есть светильник, у него есть лампочки.
Когда лампочки исчерпывают свой лимит(перегарают) надо оповестить светильник, чтобы он выкрутил их)
глупо конечно, но так сделано
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144179
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
redwhite90,

Лампочка и Светильник это 2 класса. У них связь как бе 1-к-1. Т.е. каждая лампочка знает свой светильник и оповещает его любым способом.
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144182
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz,

нее, у светильника может быть несколько лампочек)
люстра например
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144187
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
redwhite90нее, у светильника может быть несколько лампочек)
люстра например
Класса только 2. Обычный parent-child. Объекты 1 ко многим. Классы 1 к 1.
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144194
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz,

ну да
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144224
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребят это тот случай когда весь ООП анализ идёт только во вред.
Без доп. условий тут думать нечего и придумывать нечего. Здесь
автомат с состояниями. И больше ничего. Как его реализовать это
вопрос техники или удобства а не паттернов.
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144246
private
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используй паб/саб, это генерализация обсервера (или функциональный стиль)

Код: java
1.
2.
3.
4.
5.
6.
7.
app.on 'burned out', (bulb) ->
  lamp.remove bulb
  lamp.add newBulb
  
class Bulb
  burnedOut ->
    app.emit 'burned out', @
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144262
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
private,
а не проще, при создании лампочки светильником - передать лампочке "чтобы она не забыла про люмтру"?
Код: java
1.
MyЛампа m = new MyЛампа(this);


раз уж нет в кавычках указателей на методы и procedure of object
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144304
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,

так и сделал
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38144305
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
только не при создании, а при вкручивании.
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38145280
private
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В случае с лампочками - проще, если это все что нужно так наверно и лучше сделать.

Но вопрос был более общий - как вообше делать в таких ситуациях. Что будете делать если потом потребуется добавить другие обработчики этого события - например выставить счет за лампочку (в случае с паб/саб нужно просто добавить еще одного слушаетеля)? :)
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38145289
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
private,
почему какие-то лампочки?
Ты спрашиваешь про общепринятое. Вот - ГУИ и есть сабж с миллионами событий.
Бери кнопку и изучай общепринятые подходы.
На сервере, в серверном коде - меньше событий))
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38145302
private
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не спрашивал, я отвечал :)
...
Рейтинг: 0 / 0
наблюдатель наоборот
    #38145333
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
privateНо вопрос был более общий - как вообше делать в таких ситуациях
согласен, просмотрел)
Вот тут тоже чел мучается с "более общими" подходами а-ля Listener)
Рецепт универсального слушателя (listener)
http://habrahabr.ru/post/120643/
PS неблагодарное дело - выводить общие подходы )) LOL
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / наблюдатель наоборот
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]