Шаблоны Java. Observer (Наблюдатель)

  Рет қаралды 28,166

Eugene Suleimanov

Eugene Suleimanov

Күн бұрын

Пікірлер: 44
@АлексейОверченко-ц7и
@АлексейОверченко-ц7и 4 жыл бұрын
Всё по существу, поставленная речь. приятно и смотреть и слушать. Спасибо большое!
@EugeneSuleimanov
@EugeneSuleimanov 4 жыл бұрын
Спасибо за отзыв!
@МайкиТи-в7м
@МайкиТи-в7м 3 жыл бұрын
Объясняете невероятно хорошо, смотрю 4 ваше видео про паттерны. Большое Вам спасибо!
@simple_6230
@simple_6230 8 жыл бұрын
Super kanal! Mnogo interesnoi informacii! Spasibo Eugene!
@EugeneSuleimanov
@EugeneSuleimanov 8 жыл бұрын
Пожалуйста ) Спасибо за отзыв.
@zeretteompany3094
@zeretteompany3094 4 жыл бұрын
Отличный урок. Рекомендую его всем Желаю автору канала не забрасывать его.
@alexeysamsonov792
@alexeysamsonov792 8 жыл бұрын
Спасибо за видео.! То что нужно!
@EugeneSuleimanov
@EugeneSuleimanov 8 жыл бұрын
Пожалуйста, Алексей.
@azerphoenix
@azerphoenix 3 жыл бұрын
Отличный урок! Спасибо)
@dreamer_vi905
@dreamer_vi905 3 жыл бұрын
Всё четко!
@SplashDmg2011
@SplashDmg2011 4 жыл бұрын
Подскажите пожалуйста название вашего плагина для отображения UML-диаграмм.
@EugeneSuleimanov
@EugeneSuleimanov 4 жыл бұрын
Это стандартный плагин, который входит в ultimate версию intellij idea. В community, насколько я знаю, его нет.
@КириллПешин
@КириллПешин 4 жыл бұрын
@@EugeneSuleimanov А не подскажете где его искать... Может конечно его попросту нет в Ultimate Beta, но, что-то не нахожу...
@Pakmen_gamer
@Pakmen_gamer 6 ай бұрын
+вайб, респект
@EugeneSuleimanov
@EugeneSuleimanov 6 ай бұрын
Спасибо за поддержку!
@buchs4819
@buchs4819 4 жыл бұрын
в методе main в первых двух случаях, когда мы добавляем вакансии (addVacancy) метод notifyObservers не реализуется, потому что ни одного observer еще не существует в списке. Я правильно понимаю, что здесь мы должны обрабатывать ошибку nullPointerException??
@kafychannel
@kafychannel 3 жыл бұрын
Нет, Nullpointer мог выскочить, если бы мы сделали так List observers; Не проиниуиализировав наш список, а проверку на пустоту подписчиков ты можешь проверять через метод size, к примеру, notifyObservers(List) { if(observerd.size == 0) { println("Подписчиков нету, некого уведомлять о новых вакансиях " ) } else ( Проходимся через цикл for each, как в видео и у каждого обсервера вызываем onHandleEvent(vacancies) ) }
@Revolted14
@Revolted14 Ай бұрын
Спасибо :)
@EugeneSuleimanov
@EugeneSuleimanov Ай бұрын
@@Revolted14 спасибо за отзыв!
@Andrzej3935
@Andrzej3935 2 жыл бұрын
Большое спасибо
@vladder2312
@vladder2312 5 жыл бұрын
А если у меня всё-таки один-ко-многим связь, мне в классах наблюдателях нужно везде создавать новый объект класса наблюдаемого?
@TheKifsif
@TheKifsif 5 жыл бұрын
Классы, на которые подписываются, называются субъектами (Subject), а не наблюдаемыми. Подробнее здесь: на pcask.ru/programmirovanie/pattern-observer/
@Михаил-д5ж6ю
@Михаил-д5ж6ю 2 жыл бұрын
у этого паттерна корреляция с Медиатором есть. Чем-то схожи в функциональности.
@AndreyDeveloper
@AndreyDeveloper 8 жыл бұрын
Очень хорошее видео. А мог бы автор ещё отснять ролик по шаблону проектированию делегат? Очень надо.
@yevhenshevtsov6056
@yevhenshevtsov6056 5 жыл бұрын
зачем в методах постоянно указывать this?
@EugeneSuleimanov
@EugeneSuleimanov 5 жыл бұрын
Своего рода - игра в капитана очевидность ) А на самом деле - и без этого будет работать - вы правы
@ДенисЩурин-щ1к
@ДенисЩурин-щ1к 5 жыл бұрын
@@EugeneSuleimanov я думал может это так принято делать, чтобы акцентировать внимание на этом. Но походу в реальных проектах никто лишнее this не будет писать.
@Олег-п6ш3ч
@Олег-п6ш3ч 4 жыл бұрын
@@EugeneSuleimanov thanks
@Alex-gn6xb
@Alex-gn6xb 3 жыл бұрын
@@ДенисЩурин-щ1к не будет тк путает
@serik3818
@serik3818 4 жыл бұрын
Как срабатывает notifyObservers?)))
@dreamer_vi905
@dreamer_vi905 3 жыл бұрын
когда добавляется или удаляется вакансия, происходит вызов notifyObservers(). Этот метод вызывает у всех наблюдателей метод handleEvent().
@aleksei4604
@aleksei4604 4 жыл бұрын
Очень похож на медиатор
@Sk-gb2hx
@Sk-gb2hx 3 жыл бұрын
+
@olletred536
@olletred536 4 жыл бұрын
не стучи так по клаве кнопки сломаешь
@EugeneSuleimanov
@EugeneSuleimanov 4 жыл бұрын
Постараюсь )
@АзатАбдуллин-ш6в
@АзатАбдуллин-ш6в 6 жыл бұрын
Хороший ролик. Только по клаве бьешь аж уши режет)
@ionelvaselescu6604
@ionelvaselescu6604 3 жыл бұрын
Громче! Надо еще громче стучать по этим долбаным клавишам, потому что еще есть куда сильнее бесить.
@rossnobody
@rossnobody 7 жыл бұрын
Чем данная реализация лучше от элементарного расширение интерфейсом Observer docs.oracle.com/javase/7/docs/api/java/util/Observer.html и переопределении метода update?
@EugeneSuleimanov
@EugeneSuleimanov 7 жыл бұрын
Василий Решетняк Данная реализация не должна быть лучше какой-либо. Ее цель - показать основные аспекты шаблона проектирования "Наблюдатель".
@rossnobody
@rossnobody 7 жыл бұрын
моя ошибка) Не корректно поставил вопрос. Чем может быть лучше в плане поддержки и расширении кода? У меня задача "наблюдать" за несколькими полями объекта, которые изменяются не всегда все сразу, а в зависимости от бизнес логики. В дальнейшем необходимо вести обновление записи в локальной БД с учетом измененного состояния поля
@EugeneSuleimanov
@EugeneSuleimanov 7 жыл бұрын
В данном случае, конечно же, лучше использовать уже готовые реализации.
@qwerty-hc7od
@qwerty-hc7od 5 жыл бұрын
Коммент больше не к автору комментария, а больше для тех, кто смотрит в 2019 году и позже. Обратите внимание, что интерфейс Observer и класс Observable являются deprecated, начиная с Java9. Они рекомендуют (это прямо написано в комментарии в коде JDK), что стоит использовать, например, очереди из пакета java.util.concurrent. docs.oracle.com/javase/9/docs/api/java/util/Observable.html Хорошие и при этом простые, на мой взгляд, примеры, как использовать очереди в паттерне Издатель-Подписчик (он же Наблюдатель) в многопоточных приложениях есть, например, вот тут www.mkyong.com/java/java-blockingqueue-examples/
@КириллПешин
@КириллПешин 4 жыл бұрын
@@qwerty-hc7od Привет из 2020 :-) даже в этом году, может потребоваться этот шаблон :-) Для того, что бы знать, что он есть... Или если ты до сих пор на Java8 в продакшене :-)
Шаблоны Java. State (Состояние)
6:53
Eugene Suleimanov
Рет қаралды 15 М.
Observer Design Pattern in Java
14:34
Telusko
Рет қаралды 175 М.
Hoodie gets wicked makeover! 😲
00:47
Justin Flom
Рет қаралды 138 МЛН
Кто круче, как думаешь?
00:44
МЯТНАЯ ФАНТА
Рет қаралды 6 МЛН
FOREVER BUNNY
00:14
Natan por Aí
Рет қаралды 31 МЛН
Шаблоны Java. Memento (Хранитель)
9:36
Eugene Suleimanov
Рет қаралды 10 М.
Шаблоны Java. AbstractFactory (Абcтрактная фабрика)
14:34
Шаблоны Java. FactoryMethod (Фабричный метод)
12:22
Eugene Suleimanov
Рет қаралды 96 М.
Паттерн Декоратор
20:33
Volodya Mozhenkov
Рет қаралды 30 М.
Шаблоны Java. Visitor (Посетитель)
9:54
Eugene Suleimanov
Рет қаралды 15 М.
Паттерн Observer, С#, unity,  gamedev,
15:04
Sergey Kazantsev
Рет қаралды 9 М.
Многопоточность глазами разработчика
1:36:04
ЭТОТ Паттерн Спрашивают на 99% Собесов
14:19
Java. Методы equals и hashCode.
15:05
Sergey Arkhipov Java Tutorials
Рет қаралды 39 М.
Новинки года: Java 22
46:58
JPoint, Joker и JUG ru — Java-конференции
Рет қаралды 7 М.
Hoodie gets wicked makeover! 😲
00:47
Justin Flom
Рет қаралды 138 МЛН