IT-Столиця

Python Advanced

6 400 UAH за курс
10 занятий
Для опытных
Python
Этот курс для тех, кто уже умеет программировать на Python и хочет глубже разобраться в языке. Здесь вы научитесь работать со сложными структурами данных, ООП, асинхронным программированием, базами данных и веб-разработкой. Преподаватели-практики помогут освоить необходимые навыки для работы в IT.

О курсе

Программа курса

Основы Python и функции

На этом курсе начинают с основ - типов данных и контейнеров. Студенты учатся работать с list, dict и set. Далее переходят к операторам контроля выполнения и обработки ошибок через try/except. Рассматривают создание функций и процедур, включая рекурсивные функции. Закрепляют знания о functors, currying и декораторах. Завершают модуль изучением стандарта кодирования PEP8.

Объектно-ориентированное программирование

Здесь разбирают создание экземпляров классов и основные принципы ООП - наследование, инкапсуляцию, полиморфизм. Изучают область видимости, порядок разрешения методов и magical methods. Студенты учатся определять математические операции для объектов, операции сравнения и хеш-функции. Рассматривают создание копий экземпляров и упаковку данных.

Работа с классами и контейнерами

Модуль охватывает управление экземплярами классов через docstring, мета-классы и abstract bases-классы. Студенты осваивают контекстные менеджеры и декораторы. Учатся создавать контейнеры путем наследования и агрегации, получают доступ к их элементам различными методами. Завершают модуль изучением итераторов и генераторов.

Проектирование и качество кода

Этот блок посвящен принципам Soft Engineering и языку графического описания UML. Рассматривают SOLID принципы и качество кода. Студенты изучают шаблоны проектирования - синглтон, фасад, интерфейс, прокси, абстрактную фабрику, фабричный метод, команду и наблюдателей.

Модули, пакеты и работа с данными

Здесь учат работать с модулями и импортной системой. Рассматривают повторное использование пакетов, pip и virtualenv. Студенты учатся писать setup.py и документацию. Модуль включает работу с файлами, систему контроля версий Git, форматирование строк и сериализацию через pickle, Json и XML.

Встроенные пакеты и тестирование

Студенты осваивают работу с основными пакетами - datetime, calendar, collections, heapq, array, enum, contextlib, functools. Изучают модуль Unittest для тестирования кода. Получают практические навыки работы с числовыми данными.

Сетевое программирование и многопоточность

Модуль начинается с основ работы с Sockets, HTTP, HTML и XML. Далее переходят к многопоточности - синхронизации потоков через GIL, созданию потоков и контролю доступа к ресурсам. Студенты учатся создавать потоки с помощью пакета concurrent и осваивают multiprocessing.

Асинхронное программирование

Этот блок посвящен асинхронному подходу. Рассматривают фреймворк Twisted и асинхронный фреймворк Aiohttp. Студенты знакомятся с Scrapy как инструментом для сбора данных.

Базы данных: SQL и NoSQL

Сначала изучают реляционные базы данных, ER-диаграммы и работу с SQLite и PostgreSQL. Рассматривают операцию Join, функционал SQL и вложенные запросы. Далее переходят к объектно-реляционному отображению через SQLalchemy, механизм сессий и создание баз данных. Изучают миграцию с помощью Alembic и CAP теорию. Завершают модуль работой с NoSQL базами - Redis, Memcached, MongoDB и основами Celery.

Веб-разработка

Финальный модуль охватывает веб-разработку. Студенты изучают язык шаблонов Jinja2, основы и стандарты API. Получают практические навыки работы с фреймворком Flask для создания веб-приложений.

Особенности обучения

Курс ведут преподаватели-практики с реальным опытом работы. Доступно корпоративное обучение для команд. Занятия проводятся в выходные дни для удобства студентов. Выпускники имеют возможность трудоустройства в ведущие IT-компании. Предусмотрен индивидуальный подход к обучению каждого студента.

Что включено

Выдается диплом/сертификат
Гибкий график
Сопровождение ментора