ИВЕНТЫ - ЭТО РЕШЕНИЕ! EVENT-DRIVEN АРХИТЕКТУРА В ПИТОНЕ

  Рет қаралды 4,297

Андрей Иванов | Python

Андрей Иванов | Python

Күн бұрын

Пікірлер: 19
@Thestarter100
@Thestarter100 8 ай бұрын
Кратко, ясно и по делу. Спасибо!
@maxim.samokhval
@maxim.samokhval 2 жыл бұрын
Спасибо большое за видео и качественный разбор . Продолжайте в том же духе !
@Lehan111
@Lehan111 7 ай бұрын
Ещё слышал про команды в связке с евент драйвен, есть ли они здесь?
@bonessnap
@bonessnap 8 ай бұрын
где-то я уже видел такое руководство
@valentino-sm
@valentino-sm Жыл бұрын
callable это функция для проверки что объект Callable. В тайпхинтингах это то же самое что сделать вместо Any - any
@Lehan111
@Lehan111 7 ай бұрын
А где этот main с register handler будет в фастапи например? А в ручках апи, юз кейсах?
@НектоСударь
@НектоСударь 2 жыл бұрын
Найс разбор. Качественные пояснения
@ДаниилСоловьев-э6ш
@ДаниилСоловьев-э6ш 2 жыл бұрын
Когда только начал смотреть видео, подумал, что логику с отправкой email вынесут вообще в отдельное выполнение, как с Celery. А тут оказалось в другом смысл. Не слышал о такой штуке раньше, возьму на заметку. Действительно удобно и абстрактно)
@al.e.k
@al.e.k 2 жыл бұрын
Название видео действительно наводит на мысль, что тут будет нечто масштабное, хотя по сути разобран паттерн Observer.
@xxnn674
@xxnn674 2 жыл бұрын
А как передать в dispatch различные аргументы для разных функций?
@PythononPapyrusRU
@PythononPapyrusRU 2 жыл бұрын
Можно все собирать в словаре data, либо через args и kwargs, а оттуда уже брать что нужно. Но вообще лучше сделать так чтобы сам event в себе нес все нужные данные
@xxnn674
@xxnn674 2 жыл бұрын
@@PythononPapyrusRU Спасибо за обратную связь, разобрался
@vrabosh
@vrabosh 2 жыл бұрын
От вашей задачи зависит, можно доп данные так передавать reg_hendlers("name_hend", func, args) и словарь расширить с функцие и аргументами.
@VitaliyStepnoFF
@VitaliyStepnoFF Жыл бұрын
Ещё как вариант NamedTuple/dataclass. По сути это какой-то DTO между эвентами с известным интерфейсом (например, для сравнения: какой интерфейс у словаря?). Попробуйте так Ещё можно сделать в БД новую табличку UserRegisteredEvents, а в dipatch просто передавать id эвента. Тогда вы сможете сделать soft realtime на очередях и так далее, но это уже фантазия...
@user-bot-asds
@user-bot-asds 2 жыл бұрын
Explicit is better than implicit! А тут получается что мы можем оставить кучу пустых вызовов в коде без ошибок, но при этом чтоб удостовериться что они действительно "пустые" нужно чуть ли не в дебаггере неймспейсы просматривать
@PythononPapyrusRU
@PythononPapyrusRU 2 жыл бұрын
Я про это в конце сказал
@david_shiko
@david_shiko 2 жыл бұрын
Прикольно, но почему словарь, а не класс "event_register" или events.register? Тогда и параметры можно будет нормально передавать.
@YntymakPlay
@YntymakPlay 2 жыл бұрын
Потому что это простой пример реализации ивентов, для учебного примера усложнения ни к чему
@david_shiko
@david_shiko 2 жыл бұрын
@@YntymakPlay имхо, нужно сразу правильный пример показывать. Говорю как человек, который проходил все это.
ЭТОТ ПАТТЕРН ВЕЗДЕ! БАЗЫ ДАННЫХ В МИКРОСЕРВИСАХ
15:19
Андрей Иванов | Python
Рет қаралды 5 М.
人是不能做到吗?#火影忍者 #家人  #佐助
00:20
火影忍者一家
Рет қаралды 20 МЛН
小丑女COCO的审判。#天使 #小丑 #超人不会飞
00:53
超人不会飞
Рет қаралды 16 МЛН
It works #beatbox #tiktok
00:34
BeatboxJCOP
Рет қаралды 41 МЛН
EVENTS IS THE SOLUTION. EVENT-DRIVEN ARCHITECTURE IN PYTHON
16:15
Andrey Ivanov | Python
Рет қаралды 9 М.
EVENT SOURCING НА ПИТОНЕ. САМАЯ ПРОСТАЯ РЕАЛИЗАЦИЯ
24:48
Андрей Иванов | Python
Рет қаралды 1,4 М.
Что такое EVENT SOURCING за 14 минут
14:39
Listen IT
Рет қаралды 5 М.
10 признаков того, что вы новичок в Python
4:59
Фабричный метод
15:48
Volodya Mozhenkov
Рет қаралды 60 М.
КАК ПИСАТЬ ХОРОШИЙ КОД? SOLID В ПИТОНЕ
24:38
Андрей Иванов | Python
Рет қаралды 9 М.
人是不能做到吗?#火影忍者 #家人  #佐助
00:20
火影忍者一家
Рет қаралды 20 МЛН