Python Просунутий курс в Києві ᐈ CyberBionic Systematics
7 жовтня розігруємо книгу “Head First. Програмування на JavaScript”! Подробиці
Записатися на курс
Будь ласка зачекайте...
Ваша заявка прийнята! Менеджер навчального центру зв'яжеться з Вами найближчим часом.

Курс Python Advanced в Києві

Старт курсу
15 жовтня (19:00-21:00, 3 рази на тиждень) Українська

Для кого цей курс

Курс розрахований на учнів, які вже мають досвід роботи з мовою Python, а також на професіоналів, які бажають закріпити теоретичні знання на практиці.

Попередні вимоги

• Базові знання мови Python.

Курс Python Advanced в Києві

Старт курсу
15 жовтня (19:00-21:00, 3 рази на тиждень) Українська
Тривалість:
16 год.
Кількість уроків:
8 занять
Вартість навчання:
104 USD
UAH
USD

Форма навчання

Денне навчання
Онлайн навчання
Корпоративное

Опис курсу
Python Advanced

Курс "Python Advanced" буде корисним усім, хто має базові знання мови Python і бажає довести володіння ним до просунутого рівня. Під час навчання ви дізнаєтеся про елементи функціонального програмування, особливості роботи з мережею (TCP/UDP/HTTP) та такі формати даних, як JSON/CSV/XML, а також опануєте роботу з СУБД SQLite. Курс дасть розуміння багатопотокового та асинхронного програмування. Крім того, частина курсу присвячена вивченню типізованого Python та модульного тестування, які необхідні для підтримання високої якості кодової бази для розробки комерційних рішень. Останній урок присвячений практиці, де кожен учень зможе використати набуті знання у створенні підсумкового проекту. Заняття проводять сертифіковані викладачі з комерційним досвідом як розробник, які вміють добре пояснювати навчальний матеріал, супроводжуючи його зрозумілими прикладами. Уроки містять лише важливу інформацію без зайвих ліричних відступів. Після проходження курсу, виконання всіх домашніх завдань, а також успішного складання фінального тесту Ви будете володіти мовою Python на професійному рівні. Це дозволить Вам створювати ефективні програми, що, безумовно, підвищить Ваші шанси на працевлаштування в IT-компанії.

Програма курсу
  • 1
    Елементи функціонального програмування
    Огляд, мета та призначення уроку
    Після завершення уроку учні матимуть уявлення про основи парадигми функціонального програмування, навчаться використовувати деякі її принципи у програмах Python (наприклад, створювати свої декоратори, які, по суті, є функціями вищого порядку), лямбда-вирази, модулі, пов'язані з функціональним програмуванням.

    Опанувавши матеріал даного заняття, учень зможе:
    • Мати уявлення про основи парадигми функціонального програмування
    • Використовувати її принципи в програмах Python
    • Використовувати функції як об'єкти першого класу
    • Використовувати лямбда-вирази
    • Створювати функції вищого ладу, власні декоратори
    • Використання функцій filter, map, reduce
    • Використовувати модулі functools, operator, itertools

    Зміст уроку
    • Функції як об'єкти першого класу (first-class citizens)
    • Лямбда-вирази
    • Замикання
    • Функції вищого ладу, карирування функцій
    • Декоратори
    • Функції filter, map, reduce
    • Модулі functools, operator, itertools
  • 2
    Робота з мережею
    Після завершення уроку учні зможуть писати мережеві програми мовою Python, отримають базові знання мережевої моделі OSI та її рівнів, а також навчаться створювати власні socket-сервера/клієнти; вивчать протокол HTTP, та його особливості, а також навчяться обробляти HTTP повідомлення з використанням мови Python.

    Опанувавши матеріал даного заняття, учень зможе:
    • Розуміти основи мережі OSI.
    • Розробляти UDP/TCP socket-сервер.
    • Розробляти UDP/TCP socket-клієнти як для власних, так і для сторонніх socket-серверів.
    • Розуміти протокол HTTP.
    • Розуміти типи запитів, їх особливості та обмеження.
    • Формувати запити до HTTP серверів та обробляти відповіді від них.
    • Використовувати стандартну бібліотеку urllib.
    • Використовувати сторонню бібліотеку requests.
    • Створювати програми мовою Python, що дозволяють автоматизувати обробку відповідей.

    Зміст уроку
    1. Основи мережевої моделі OSI та її рівнів.
    2. Поняття адресації (IP та Port) і що таке socket.
    3. Опис протоколу UDP.
    4. Створення UDP клієнта/сервера.
    5. Створення TCP клієнта/сервера та порівняння з UDP.
    6. Блокуючі та неблокуючі режими роботи socket.
    7. ООП підхід при створенні socket-серверів використовуючи бібліотеку socketserver.
    8. Створення простого socket-сервера засобами фреймворку Twisted.
    9. Що таке протокол HTTP, як використовувати і основні типи запитів.
    10. Поняття заголовків та статус кодів.
    11. Типи HTTP запитів та їх особливості.
    12. Створення socket для демонстрації заголовків та відповідей сервера.
    13. Стандартна бібліотека мови Python-urllib.
    14. Бібліотека запитів.
    15. Конфігурація бібліотеки urllib: розмір pull-у з'єднань та режими роботи.
  • 3
    Сховища даних
    Після завершення уроку учні матимуть уявлення про такі формати даних: CSV, XML, JSON, отримають базові знання даних форматів та вивчать стандартну бібліотеку мови Python. Ці формати використовуються для зберігання та обміну даними між компонентами мережі або програмами. Вивчать особливості даних форматів та провести порівняння для того, щоб студент зміг вибрати певний формат для вирішення конкретних завдань, основи роботи з бібліотекою sqlite3 та використання даної СУБД як сховища даних. Також будуть розглянуті особливості цієї бібліотеки з практичним ухилом.

    Вивчивши матеріал даного заняття, учень зможе:
    • Мати повне розуміння даних форматів
    • Створювати та обробляти формати даних CSV, XML, JSON
    • Використовувати стандартні бібліотеки Python для роботи з даними форматами
    • Здійснювати пошук даних у форматі XML, використовуючи мову XPATH
    • Дозволяє використовувати SQLite у вирішенні своїх завдань.
    • Дозволяє створювати власні типи даних та використовувати їх у сховищі.
    • Створювати користувацькі агрегатні та звичайні функції, розширюючи стандартні можливості SQL.
    • Безпечно працювати зі сховищем, вивчить таке поняття як SQL-ін'єкції та як убезпечити свою програму.

    Зміст уроку
    1. Визначення формату CSV та його особливостей
    2. Формат CSV засобами Python.
    3. Визначення формату XML та його особливостей.
    4. Опис структури DOM та тегів.
    5. Формат XML у Python.
    6. Бібліотека lxml.
    7. Визначення формату JSON та його особливостей.
    8. Формат JSON у Python.
    9. Основні поняття та особливості СУБД SQLite.
    10. sqlite3 бібліотека в Python.
    11. Створення власних типів, функцій та агрегацій.
    12. SQL-ін'єкції.
  • 4
    SQLite. Синтаксис та запити
    Огляд, мета та призначення уроку
    Після завершення уроку учні матимуть уявлення про основи роботи з мовою запитів SQL, як можна неофіційно класифікувати команди на підмови. Що таке мова запитів даних (DQL), мова визначення даних (DDL), мова керування даними (DCL) та мова керування даними (DML). Сфера застосування SQL, основні операції під час роботи з даними. Вивчать основи роботи з бібліотекою sqlite3 та використання даної СУБД. На занятті буде розглянуто особливості даної бібліотеки з практичним ухилом.

    Вивчивши матеріал даного заняття, учень зможе:
    • Використовувати SQLite у вирішенні своїх завдань.
    • Створювати користувацькі агрегатні та звичайні функції, розширюючи стандартні можливості SQL.
    • Дізнатися про основні запити для роботи з SQLite.

    Зміст уроку
    1. Основні поняття та особливості СУБД SQLite.
    2. sqlite3 бібліотека в Python.
  • 5
    Асинхронне програмування в Python
    Після завершення уроку учні познайомляться з поняттям співпрограми/корутини та ключовими словами async/await. Розуміють призначення циклу подій (Event Loop). Також будуть розглянуті приклади роботи з модулем Asyncio.

    Вивчивши матеріал даного заняття, учень зможе:
    • Розуміти загальну схему роботи асинхронності та її особливостей.
    • Створювати асинхронні програми за допомогою async/await/yield from.
    • Використовувати Event Loop для запуску власних програм.
    • Використовувати модуль asyncio для створення та запуску співпрограм.

    Зміст уроку
    1. Основні поняття асинхронності.
    2. Супрограми/корутини та ключові слова async/await.
    3. Модуль asyncio та запуск циклу подій.
    4. Запуск співпрограм у циклі подій. Приклади та різні варіанти.
    5. Приклади сторонніх бібліотек та фреймворків: aiohttp, gevent та tornado.
  • 6
    Багатопоточне програмування в Python
    Після завершення уроку учні познайомляться з основами багатопоточності, отримають досвід роботи з модулем threading у Python, розглянуть способи синхронізації роботи потоків, розберуться з поняттям GIL у Python та обмеження, які накладаються на еталонну реалізацію мови Python – CPython. Також буде розглянуто приклади роботи з модулем concurrent.futures.

    Вивчивши матеріал даного заняття, учень зможе:
    • Створювати багатопотокові програми.
    • Розуміти обмеження CPython, що накладаються GIL при написанні багатопотокових програм.
    • Використовувати модулі threading та concurrent.futures.

    Зміст уроку
    1. Основні поняття багатопоточності.
    2. GIL у Python.
    3. Вивчення модуля threading: Thread, Lock, RLock, Event, Semaphore, Timer.
  • 7
    Типізований Python. Модульне тестування
    Після завершення уроку учні ознайомляться з можливостями використання типізації в Python, отримають навички використання модуля typing, бібліотеки mypy для перевірки програм, що використовують типізацію. Також отримають знання у галузі модульного тестування та вивчать бібліотеки мови Python для завдань тестування.

    Вивчивши матеріал даного заняття, учень зможе:
    • Створювати типізовані змінні та функції
    • Використати модуль typing
    • Використовувати модуль mypy для перевірки створених типізованих модулів
    • Розуміти основні цілі модульного тестування.
    • Створювати модульні тести для наявних програмних модулів.
    • Вміння використовувати бібліотеку unittest.
    • Створювати заглушки для деяких ділянок коду, використовувати механізм MOCK.

    Зміст уроку
    1. Статична та динамічна типізація.
    2. Плюси та мінуси статичної типізації.
    3. Модуль типування.
    4. Встановлення та використання модуля mypy
    5. Основні поняття та цілі модульного тестування.
    6. Пояснення принципу створення та використання модульних тестів.
    7. Приклади бібліотек написання модульних тестів.
    8. Приклад створення модульних тестів з використанням бібліотеки unittest.
    9. Бібліотека pytest та приклади тестів для проекту Django.
  • 8
    Практика
    Практичне застосування отриманих знань

Що ви отримаєте на курсі Python

Робоче місце з ноутбуком і навчальними матеріалами

Практичні заняття і перевірка дз

Безкоштовний відеокурс

Онлайн тестування і сертифікація

По завершенню курсу ви будете вміти
  • Створювати мережеві додатки на основі TCP/UDP протоколів
  • Розбиратися та використовувати формати даних CSV/XML/JSON, працювати із СУБД SQLite, яка вбудовується
  • Створювати багатопоточні та асинхронні програми, використовувати GIL в Python
  • Розуміти призначення метакласів, побачивши їх реальне застосування на практиці
  • Використовувати бібліотеку Numpy для розв`язання математичних задач
  • Використовувати типізацію в Python та створювати типізовані програми, які надають більш швидке та зручне налагодження помилок
  • Розуміти задачі та цілі модульного тестування, а також писати тести для перевірки працездатності власного коду
  • Розуміти та використовувати рекомендації щодо стандарту оформлення коду на Python - PEP8
Сертифікат

По проходженню курсу

Наявність сертифіката Навчального Центру CyberBionic Systematics свідчить про Ваш володінні новими знаннями і навичками, а значить, дозволяє вигідно виділитися на тлі інших кандидатів і збільшує шанси на успішне працевлаштування або просування по кар'єрних сходах. Для отримання сертифікату після закінчення навчання, необхідно успішно пройти тестування за відповідним курсом на Testprovider.com

ВИКЛАДАЧІ КУРСУ Python

Цей курс входить до спеціальності
Курс з спеціальності
Python Developer
Старт навчання за спеціальністю:
18 жовтня, 09:00-11:00 (GMT+3), Міжнародна
Online

18 жовтня, 09:00-11:00 (GMT+3), Українська
Online

18 жовтня, 19:00-21:00 (GMT+3), Міжнародна
Online

18 жовтня, 19:00-21:00 (GMT+3), Українська
Online
Тривалість занять:
2 години
Графік:
3 рази на тиждень
Тривалість:
4 міс. / 88 годин
В одній групі:
Від 6 до 25 осіб

Відгуки наших студентів

Python Advanced
Старт курсу
15 жовтня (19:00-21:00, 3 рази на тиждень) Українська
Трива
лість:
16 год.
Кількість уроків:
8 занять
Вартість навчання:
104 USD
Записатися
на курс
Будь ласка зачекайте...
Ваша заявка прийнята! Менеджер навчального центру зв'яжеться з Вами найближчим часом.

В українській групі навчання здійснюється українською мовою

В міжнародній групі навчання російською або англійською мовою

Записатися
на пробний урок
Будь ласка зачекайте...
Ваша заявка прийнята! Менеджер навчального центру зв'яжеться з Вами найближчим часом.