Тёмный

Шаблоны Java. State (Состояние) 

Eugene Suleimanov
Подписаться 29 тыс.
Просмотров 16 тыс.
50% 1

proselyte.net/

Опубликовано:

 

5 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 21   
@ДенисЩурин-щ1к
@ДенисЩурин-щ1к 5 лет назад
Писать код, спать, читать и тренироваться. Да это же идеальный программист )))
@stas4985
@stas4985 4 года назад
совсем ку ку? идеально это вместо писанины кода играть во что то и вместо чтения смотреть аниму на роботе
@maksimivanov8728
@maksimivanov8728 2 года назад
Робот какой-то а не человек)
@ecclesiastes2000
@ecclesiastes2000 4 года назад
Я недоволен этой реализацией, если будет больше условий и изменения состояний не линейные, как у вас в примере, т.е. я могу вернуться обратно в предыдущее состояние или вообще перескочить, то у вас будет огромный вложенный if в одном месте. А паттерн должен этот if разбивать на классы. В общем, условия должны перетечь в классы реализации активити и в них же должно меняться состояние активити. Чтобы было яснее, нарисуйте детерминированный конечный автомат чуть сложнее вашего и примера и станет ясно, где ошибка
@EugeneSuleimanov
@EugeneSuleimanov 4 года назад
Спасибо за комментарий, я попробую реализовать по вашему описанию.
@КинобийОбиван
@КинобийОбиван 3 года назад
добрый день, а можно пример как паттерн должен этот "if" разбивать на классы?
@АлексейПерцух
@АлексейПерцух 3 года назад
Спасибо за видео! Изучаю паттерны по вашим роликам, все ясно и понятно.
@EugeneSuleimanov
@EugeneSuleimanov 3 года назад
Спасибо за отзыв :)
@mansurnashaev6486
@mansurnashaev6486 7 лет назад
Вы говорите что шаблон применяется когда много условных операторов. При таком подходе, который вы описали, получается что к условным операторам прибавилось столько же классов. Во первых, условные операторы остались в методе changeActivity() класса Developer, во вторых, если нужно добавить новое состояние, нам нужно не просто сделать новую проверку, а еще и добавить новый класс для нужного состояния.
@EugeneSuleimanov
@EugeneSuleimanov 7 лет назад
Вы немного не том сделали акцент - главное - это то, что выбор ветви зависит от состояния объекта. Если добавить сюде стремление следовать SOLID - то данный шаблон крайне полезен (при уместном его использовании).
@mansurnashaev6486
@mansurnashaev6486 7 лет назад
Забыл отметить что только учусь. Поэтому могу ошибаться.
@EugeneSuleimanov
@EugeneSuleimanov 7 лет назад
Как и все мы :)
@raz_dva_
@raz_dva_ 4 года назад
Спасибо за материалы. Сжато и быстро! Idea Preferences / Editor / File and Code Templates / Includes / File Header (adjusting the header of the class) or Idea Preferences / Editor / File and Code Templates / Class (removing the whole header of the class)
@vladsaichenko1946
@vladsaichenko1946 11 месяцев назад
Анжумания делат, пресс качат, бегит
@alexanderstepin
@alexanderstepin Год назад
А не лучше было бы прописать прямо в конкретных реализациях activity у каждого действия его следующее действие? И код получился бы кучи if else
@Andrzej3935
@Andrzej3935 2 года назад
Thank's a million
@EugeneSuleimanov
@EugeneSuleimanov 2 года назад
Thanks!
@ЕвгенийБелых-к9э
@ЕвгенийБелых-к9э 2 года назад
Добрый вечер. Спасибо за урок. Есть вопрос. Такой подход ведь нарушает принцип единой ответственности. Когда один объект начинает уметь выполнять разные вещи. Или здесь "центральный объект" служит перекрестком для других объектов, которые как раз таки и удовлетворяют приницпу единой ответственности. То есть как бы не объект может делать много вещей, а он вмещает в себя функционал разных объектов. Я правильно понимаю?
@maslus
@maslus 3 года назад
Насколько я понимаю, этот шаблон также реализуется через enum. А в Java17 - через sealed классы
@azminseo
@azminseo 3 года назад
Спасибо)
@kirillnizhnik2192
@kirillnizhnik2192 Год назад
Это же FSM как понимаю?
Далее
Шаблоны Java. Strategy (Стратегия)
5:53
Шаблоны Java. Visitor (Посетитель)
9:54
Шаблоны Java. Prototype (Прототип)
7:32
Шаблоны Java. Состояние (State)
18:41
Шаблоны Java. Proxy (Прокси)
7:01
Просмотров 27 тыс.