Продвинутый курс Python подготовлен для тех, кто уже знает основы программирования на Python и хочет улучшить свои навыки и умения.
Курс также подойдет и уже квалифицированным разработчикам. Он дает возможность овладеть практическими навыками создания программ. Язык программирования Python используется в качестве фундамента для самых разнообразных проектов, а также подходит для создания программ и приложений.
Python активно используют веб-разработчики. Популярен также и фреймворк Django, который работает на основе Python. Он используется на таких известных платформах как Mozilla, Instagram, Pinterest.
Программа курса построена по принципу «20% лекционного материала и 80% практическая работа».
После курса Вы сможете разрабатывать более сложные программы на языке программирования Python.
Курсы Python. Advanced: учебная программа курса.
Функции.
- Данные и их типы.
- Реализация структуры данных с помощью контейнеров.
- Контроль выполнения с помощью операторов.
- Обработка ошибок с использованием try и except.
- Циклы и их операторы.
- Понимание list, dict, set.
- Функции, процедуры и их создание.
- Рекурсивные функции.
- Понятия «functors», «currying».
- Декораторы и их роль в программировании.
- Лямбда-функции.
- Код PEP8.
Объектно-ориентированный подход.
- Создание экземпляра.
- Подражание, инкапсуляция, полиморфизм в Python.
- Область видимости.
- Порядок разрешения методов.
- Magical methods.
- Математические операции для объектов Python.
- Определение операций сравнения и хеширования для Python.
- Создание копии экземпляра класса.
- Упаковка данных в единый компонент.
Управление экземплярами классов.
- Строковая переменная docstring.
- Meta-классы.
- Классы Abstract Bases.
- Контекстные менеджеры в Python.
- Декораторы.
- Контейнеры, созданные путем наследования и агрегации.
- Доступ к элементам контейнера с помощью разных методов.
- Итераторы и генераторы.
Объектно-ориентированное программирование и приемы.
- Soft Engineering.
- Язык графического описания UML.
- SOLID.
- Качество кода.
- Шаблоны проектирования программного обеспечения.
- Синглтон.
- Façade, Interface, Proxy.
- Абстрактная фабрика и фабричный метод.
- Команда.
- Наблюдатели.
Пакеты и модули.
- Запуск модулей.
- Импортная система.
- Повторное использование пакетов.
- Пакеты pip и виртуальная среда virtualenv.
- Setup.py.
- Как писать документацию к пакету и модулю.
- Файлы и работа с ними.
- Система контроля версий Git.
- Форматирование программных строк.
- Файловая система и работа с ней.
- Сериализация путем pickle.
- Сериализация и десериализация объектов Python.
- Сериализация данных в json и xml.
Встроенные пакеты.
- Работа с datrtime, calendar, collections, heapq, array, enum.
- Работа с числовыми данными, contextlib, functools.
- Вход.
- Модуль Unittest.
Сеть.
- Основы работы Sockets.
- HTTP, HTML, XML.
- Многопоточность.
- Синхронизация потоков с помощью GIL.
- Создание потоков.
- Контроль доступа к ресурсам.
- Потоки и их синхронизация.
- Создаем потоки с помощью пакета concurrent.
Процессы в языке программирования.
- Multiprocessing.
- Очередность задач.
Асинхронное программирование.
- Фреймворк Twisted.
- Aiohttp – ассинхронный фреймоворк.
- Scary – помощник в сборе данных.
SQL и его основы.
- Реляционные базы данных и их основы.
- ER-диаграммы.
- Работа с SQLite, Postgre SQL.
- Операция JOIN.
- Функционал SQL.
- Вложенные запросы.
- Объектно-реляционное отображение.
Основы работы с SQLAlchemy, механизм сессии, создание базы данных.
- Миграция баз данных с помощью Alembic.
- CAP теория.
Типы баз данных NoSQL.
- Работа с Redis, Memcached, MongoDB.
- Основы работы с Celery.
Веб-разработка.
- Язык шаблонов Jinja2.
- Основы и стандарты API.
- Основы работы с FLASK.