Расширенный курс Python
Курс предназначен для тех, кто уже владеет основами разработки на Python и желает освоить продвинутые умения и навыки программирования на Python.
Курс также будет полезен уже квалифицированным пользователям. Программа построена по принципу 20% лекционного материала, 80% лабораторные работы.
После курса вы сможете:
- Разрабатывать программы на языке Python
- Функции.
- Типы данных
- Встроенные контейнеры
- Операторы контроля выполнения
- Обработка ошибок (try ... except ...)
- Операторы циклов
- Comprehensions (list, dict, set)
- Создание функции и процедур
- Аргументы функций
- Рекурсивные функции
- Functors, Currying
- Декораторы
- Lambda-функции
- PEP8
- Объектно-ориентированный подход
- Объявление класса и создание экземпляра
- Принципы ООП (подражание, инкапсуляция, полиморфизм) в Python
- Область видимости (Namespaces, Scope, правило LEGB)
- Method Resolution Order (MRO)
- Магические методы
- Определение математических операций для объектов Python
- Определение операций сравнения для объектов Python
- Определение операций хеширования для объектов Python
- Создание копии экземпляра класса, deep copy, shallow copy
- Инкапсуляция (Setters and getters)
- Управление созданием экземпляров класса
- Doc strings
- Meta-классы
- Abstract Bases-классы
- __new__
- __init__
- Context-managers
- Использованием декораторов с классами
- Контейнеры, созданные путем наследования (UserList, UserDict, UserString)
- Контейнеры, созданные путем агрегации
- Методы доступа к элементам контейнера
- Iterators, Generators
- Приемы объектно-ориентированного программирования
- Software Engineering как процесс
- Язык UML
- Принципы SOLID
- Метрики качества кода
- Design Patterns (категории, примеры использования)
- Singletone
- Facade
- Interface
- Proxy
- Abstract Factory
- Factory Method
- Command
- Observer
- Модули и пакеты
- Разработка модулей (определение и запуск)
- Система импорта
- Разработка повторно используемых пакетов
- Менеджер пакетов pip и виртуальные среды virtualenv
- Setup.py
- Написание документации к пакету, модулю
- Создание приложений на основе пакетов
- Работа с файлами
- Работа с системой контроля версий Git
- Форматирования строк
- Context-managers
- Работа с файловой системой (os, os.path, shutil)
- Сериализация с помощью pickle
- Управление порядком сериализации/десериализации объектов Python
- Сериализация данных в json
- Сериализация данных в xml
- Встроенные пакеты Python.
- Работа с datetime и calendar
- Работа с collections (очереди, именуемые кортежи, вложенные словари)
- Работа с heapq, array, enum
- Работа с числовыми данными (numbers, math, decimal, random)
- Работа с contextlib
- Работа с functools
- Logging
- Unittest
- Networking
- Sockets (основы работы, примеры серверов)
- Socket server
- Socket Client
- HTTP
- HTML, парсинг HTML-файлов
- XML
- Многопоточность в Python
- Global Interpreter Loc (GIL)
- Создание потоков в Python
- Контроль доступа к ресурсам
- Синхронизация потоков
- Создание потоков с помощью пакета concurent
- Пул потоков
- Процессы в Python
- Пакет multiprocessing
- Interprocess communication
- Очереди задач
- Создание процессов с помощью пакета concurent
- Пул процессов
- Отсрочка задач с помощью пакета sched
- Асинхронное программирование
- Asyncio
- Пакет Twisted
- Асинхронный фреймворк Aiohttp
- Сбор данных с помощью фреймворка Scrapy
- SQL
- Основы реляционных баз данных
- ER-диаграммы
- Стандарт PEP249
- Работа с СУБД SQLite, PostgreSQL
- Основы языка SQL (SELECT, LIKE, ORDER BY, LIMIT)
- INSERT
- UPDATE
- DELETE
- JOIN (INNER, LEFT, OUTER)
- GROUP BY
- Функции SQL (mean, min, max, avg, count)
- Subqueries
- Object Relational Mapping
- Основы работы с SQLAlchemy
- Механизм сессий в SQLAlchemy
- Создание базы данных с помощью моделей SQLAlchemy
- Миграции баз данных с помощью Alembic
- NoSQL-базы данных
- CAP теорема
- Типы NoSQL баз данных
- Работа с Redis
- Работа с Memcached
- Работа с MongoDB
- Брокер сообщений RabbitMQ
- Основы работы с Celery
- Web-разработка
- Классификация web frameworks
- Язык шаблонов Jinja2
- Основы API
- Стандарты API (REST, XML-RPC, Swagger, JSON API)
- Архитектурный подход API First
Основы работы с Flask
- Базовые знания языка Python в рамках курса «Базовый курс Python»
Запись на курс
Код курса | EA-PytADV |
---|---|
Длительность | 5д (40ч) |
Код экзамена | |
Стоимость без НДС | 20 000 грн. |