Продвинутый курс Python

Старт обучения
Берестейская Дату уточните у администрации
Позняки Дату уточните у администрации
ВДНХ 16.01.2020
54 час. по 2-3 раза в неделю

Описание курса

Курс предназначен для тех, кто уже владеет основами разработки на Pythonи желает освоить продвинутые умения и навыки программирования на Python.

Курс также будет полезен уже квалифицированным пользователям. Программа построена по принципу 20% лекционного материала, 80% лабораторные работы.

После курса вы сможете:

  • Разрабатывать программы на языке Python

Вместе дешевле

Продвинутый курс Python
+
Веб-разработка на Python/Django
=

19800 грн.

16850 грн.

Продвинутый курс Python
+
Python/R for Data science
=

21000 грн.

17850 грн.

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

  • Функции.
    • Типы данных
    • Встроенные контейнеры
    • Операторы контроля выполнения
    • Обработка ошибок (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

* Примечание: указанные скидки не суммируются с другими действующими акциями и специальными предложениями. Скидка применяется только к новым заявкам и при условии полной оплаты. Если у Вас возникли вопросы, обращайтесь за консультацией к нашим менеджерам!

spinner-it