Бывалым и начинающим питонистам тяжело на карантине. Ведь нужно продолжать самосовершенствование, а кофе попить не с кем и на стенах коллективно не порисуешь. Тренируем дыхание и прокачиваем мозги, ныряя в Python поглубже!
Посмотрите подкаст от MoscowPython с участием Алексея
Никита Соболев
Посетит вас на карантине, принесёт апельсинчики
CTO и сооснователь Drylabs Никита Соболев даст комментарии и задаст вопросы Алексею по темам вебинаров.
А тут Python-стрим про Python-карантин
Программа и регистрация
5 вебинаров за 2 недели по вторникам и пятницам в 19 часов по Московскому времени Цена каждого вебинара - 2000 рублей Предусмотрены скидки для клиентов и партнёров Drylabs. По итогам вебинаров предоставляются записи и дополнительные материалы!
1 декабря, вторник
1. Метапрограммирование (junior/middle)
Классы, классы классов, метаклассы — код пишет код. Чем меньше кода напишешь руками, тем не хуже будет проекту! И потом, все взрослые фреймворки делают это!
Учимся создавать классы на лету, наполнять их атрибутами и поведением: всё это поможет описывать предметно-ориентированные конструкторы для быстрого написания типового кода. А ещё знакомство с метапрограммированием поможет лучше понять то, как работает "обычное" ООП в Python.
Простые пакеты и модули мы знаем. Но есть ещё неявные пространства имён, да и модули на лету создавать можно, в том числе — из воздуха!
Разбираемся с тем, как Python загружает модули и как можно повлиять на процесс поиска модулей, как можно дополнить загруженные модули своим содержимым: всё это может сильно помочь при сложном и объёмном рефакторинге. Создание же модулей на лету может значительно облегчить конфигурирование сложных проектов.
"Главный паттерн Пайтона", фреймворк для потоковой обработки данных, что ещё? Может быть, многозадачность без потоков? Сделаем!
Учимся описывать роботу с потоками данных эффективно, используя богатый встроенный инструментарий и дополняя его своими функциями. Разбираемся с тем, что же находится под капотом асинхронщины и как в подобном стиле структурировать свой код, чтобы он выглядел как многопоточный, но чтобы процессом его выполнения можно было легко и предсказуемо управлять.
Ключевые слова: generators, iterators, coroutines, data flow
Одни говорят, "лишь бы крякало как утка". Другие хотят указать конкретный тип. Можно ли и на конкретных уток код не завязывать, и совсем без типов не остаться? Учимся структурной типизации по-питоновски.
Учимся использовать модуль abc не только в виде абстрактных классов. Узнаём, как добиться гибкости динамической типизации в сочетании с проверкой типов и при этом не завязывать описание доменной области на одно лишь наследование.
5. "Python — медленный!" или пишем ускорялки (junior/middle)
Всё, что в мире Python работает быстро, написано на Си. Такое можно услышать там и тут. Но только ли Си-кодом можно ускорять Пайтон или есть ещё варианты? Как вообще всё это делается?
Учимся добавлять к Python-коду компилируемые из других языков куски, укладывать полученный артефакт в Python-пакеты. Рассматриваем разные подходы к ускорению Пайтона — чистый C, Cython, C FFI.
Хотите зарегистрироваться на все вебинары сразу или зарегистрировать несколько человек? Пишите нам - мы это организуем (и дадим скидос)! Не можете быть на вебинаре в указанное время? Зарегистрируйтесь и получите видос.
Команда технологических евангелистов и просто тех, кто любит писать красивый код. Наш продукт - это повторимый процесс разработки программного обеспечения.