![rLCoKeGXQhGL7iK4CpjZkg photo rLCoKeGXQhGL7iK4CpjZkg Программирование [Сурен Хоренян] [merion academy] Python Advanced. Продвинутый курс (2024)](https://img001.prntscr.com/file/img001/rLCoKeGXQhGL7iK4CpjZkg.png)
ОПИСАНИЕ:
Слив курса Python Advanced. Продвинутый курс (2024) [merion academy] [Сурен Хоренян]
Освойте асинхронное и метапрограммирование, изучите аннотацию типов, профилирование и напишите собственное приложение на FastAPI.
Улучшите свои навыки Python, чтобы совершить быстрый рост вашего грейда до уровня middle.
Кому подойдет курс:
1. Python-разработчик
Узнайте, что у Python под капотом: метаклассы, генераторы, декораторы, потоки (threading) и многопоточность (multiprocessing) для быстрого продвижения к уровню middle.
2. Data Scientist
Python отлично подходит для дата-сайентистов благодаря обширной экосистеме библиотек и фреймворков. FastAPI и SQLAlchemy будут особенно полезны для создания API и работы с базами данных в ваших проектах.
3. Сменить профессию
Для Frontend разработчика – повышение рыночной стоимости, Backend разработчика – расширение скиллсета и кругозора, а для QA-инженеры – отличный шанс перейти в автоматизаторы.
Содержание:
Блок 1 – Углубленная работа с декораторами
- Вводное занятие: Сравнение multithreading и multiprocessing
- Вложенные декораторы
- Классы-декораторы и декораторы классов
Блок 2 – Сложные простые типы
- Строки и байты – в чем разница. Кодировки.
- Числа с плавающей точкой и проблемы, которые они приносят
- Тестирование по блоку 1 и 2
Блок 3 – Функциональное программирование в Python и его минусы
- Сравнение помощников map, filter с comprehensions. Лямбда функции
- Рекурсия, стек, переполнение стека, хвостовая рекурсия
Блок 4 – Генераторы и итераторы
- Как связаны итераторы и генераторы
- Создание генератора
- Создание итератора
- Генераторы в обратную сторону (передача данных в генератор), корутины
Блок 5 – Знакомство с асинхронной работой (asyncio)
- Введение в асинхронное программирование. Зачем нужно асинхронное программирование. Группы задач
- Асинхронные запросы в сеть
- Цикл событий альтернативный (сторонний) цикл
- Асинхронное взаимодействие с файлами
- Тестирование по блоку 3, 4 и 5
Блок 6 – Классы изнутри
- Метаклассы
- “Протоколы. Абстрактные классы
- Дескрипторы
- Слоты в классах
- Как работает super
- Сокрытие имени (name mangling)
Блок 7 – Работа с ссылками, внимание к памяти
- Как работает сборщик мусора
- Сильные и слабые ссылки
Блок 8 – Аннотации типов. Системы контроля зависимостей. Интроспекция
- Как описывать аннотации типов, зачем они нужны
- Работа с mypy
- Системы контроля зависимостей
- Интроспекция, генерация новой сигнатуры
- Тестирование по блоку 6, 7 и 8
Блок 9 – Тестирование
- Unittest
- Покрытие кода (coverage)
- Pytest, плагины
- Фикстуры
- Параметризация и метки
- Конфигурация тестов
Блок 10 – Очереди задач
- Встроенные очереди задач
- Асинхронные очереди задач
- Сервисы для очередей задач. Celery. RabbitMQ
- Интроспекция, генерация новой сигнатуры
- Тестирование по блоку 9 и 10
Блок 11 – Профилирование
- Что такое профилирование и зачем нужно. Инструменты для профилирования
- Блок 12 – Ускорение обработки задач
- Threading, GIL
- Multiprocessing
Блок 12 – Ускорение обработки задач
- Threading, GIL
- Multiprocessing
Блок 13 – Низкий уровень
- Компиляция кусков кода. Чтение и анализ байт-кода. Как работает виртуальная машина Python
- Тестирование по блоку 11, 12 и 13
Блок 14 – Работа с базой данных через SQLAlchemy
- Знакомство с SQLAlchemy 2.0Лекция
- Асинхронная работа с базой данных на SQLAlchemy
Блок 15 – Веб-разработка на FastAPI
- Знакомство с FastAPI
- FastAPI настройки git: commit, remote, push
- Работа с базой данных через SQLAlchemy в веб-приложении
- Развитие приложения на FastAPI
- Взаимодействие между приложениями
- Тестирование по блоку 14 и 15
Финальное тестирование
- Финальное тестирование
ПРОДАЖНИК:
СКАЧАТЬ: