IT-Столиця

Python Advanced

6 400 UAH за курс
10 занять
Для досвідчених
Python
Цей курс для тих, хто вже вміє програмувати на Python і хоче глибше розібратися в мові. Тут ви навчитеся працювати зі складними структурами даних, ООП, асинхронним програмуванням, базами даних та веб-розробкою. Викладачі-практики допоможуть опанувати необхідні навички для роботи в IT.

Про курс

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

Основи Python та функції

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

Об'єктно-орієнтоване програмування

Тут розбирають створення екземплярів класів та основні принципи ООП - наслідування, інкапсуляцію, поліморфізм. Вивчають область видимості, порядок дозволу методів та magical methods. Студенти вчаться визначати математичні операції для об'єктів, операції порівняння та хеш-функції. Розглядають створення копій екземплярів та пакування даних.

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

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

Проєктування та якість коду

Цей блок присвячений принципам Soft Engineering та мові графічного опису UML. Розглядають SOLID принципи та якість коду. Студенти вивчають шаблони проєктування - синглтон, facade, interface, proxy, абстрактну фабрику, фабричний метод, команду та наглядачів.

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

Тут вчать працювати з модулями та імпортною системою. Розглядають повторне використання пакетів, 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-компанії. Передбачено індивідуальний підхід до навчання кожного студента.

Що включено

Видається диплом/сертифікат
Гнучкий графік
Супровід ментора