Курс Python Pro

Сейчас набор на этот курс закрыт. Просмотрите другие курсы

  • Online
  • Для начинающих
  • Python
Образовательный центр: ITEA – IT Education Academy
Формат:Курс
Длительность обучения:4 месяцев
Начало курса:20.01.2024
Стоимость обучения:19 800 UAH за курс

Можлива оплата частинами

На курсі вивчається як влаштоване програмування, створення грамотної структури програми та написання правильного робочого коду без помилок, який буде зрозумілим навіть для стороннього розробника. Протягом навчання створите невеликі інструментальні програми на Python, а також зможете використовувати в роботі прийоми об’єктно-орієнтованого програмування та розбиратися в просунутих аспектах мови.

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

Навіщо потрібні комп'ютерні програми?

  • Програмування як творчий процес
  • Архітектура комп’ютера
  • У чому суть програмування?
  • Процес «спілкування» з Python
  • Інтерпретатор і компілятор
  • Процес написання програм
  • Що ж таке програма?
  • Принципи програмування
  • Парадигми програмування
  • Вправи

Змінні, вирази та інструкції Python

  • Поняття «значення» і «тип»
  • Змінні
  • Імена змінних і ключові (зарезервовані) слова
  • Оператори
  • Оператори і операнди
  • Вирази
  • Порядок операцій
  • Операції з рядками
  • Ввід даних
  • Коментарі
  • Вправи

Управління потоком виконання

  • Логічні вирази
  • Логічні оператори
  • Умовне виконання
  • Послідовність умов
  • Вкладені умови
  • Перехоплення винятків з використанням try та except
  • Вправи

Ітерації

  • Оновлення змінної
  • Інструкція while
  • Нескінченні цикли
  • «Нескінченні цикли» і break
  • Завершення ітерації за допомогою continue
  • Списки
  • Визначення циклів за допомогою for
  • Обхід списків за допомогою циклу for
  • Вправи

Функції й модулі

  • Виклик функції
  • Вбудовані функції
  • Функції приведення типів
  • Випадкові числа
  • Математичні функції
  • Додавання нових функцій
  • Визначення і використання
  • Параметри функції
  • Модульні тести
  • Імена файлів і шляхи
  • Створення власних модулів і пакетів
  • Ініціалізація пакета
  • Обробка аргументів командного рядка
  • Визначення параметрів середовища виконання
  • Створення віртуальних середовищ
  • Автоматична ініціалізація пакетів
  • Вправи

Рядки

  • Рядок – це послідовність
  • Отримання довжини рядка з використанням len
  • Обхід рядка за допомогою циклу
  • Зріз рядка
  • Рядки є незмінними
  • Оператор in
  • Порівняння рядків
  • Малі методи
  • Розбір (parsing) рядків
  • Оператор форматування
  • Регулярні вирази
  • Вправи

Основи роботи з системою контролю версій

Файли

  • Вступ
  • Відкриття файлів
  • Текстовий файл і рядки
  • Читання файлів
  • Пошук через файл
  • Оператор with
  • Запис файлів
  • Вправи

Колекції

  • Що таке колекція в 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

Модулі й пакети

  • Розробка модулів (визначення та запуск)
  • Система імпорту
  • Навчання розробці повторно використовуваних пакетів
  • Менеджер пакетів 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)
  • NSERT
  • 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 frameworks
  • Мова шаблонів Jinja2
  • Основи API
  • Стандарти API (REST, XML-RPC, Swagger, JSON API)
  • Архітектурний підхід API First
  • Основи роботи з Flask

Як скласти резюме і пройти співбесіду

  • Структура резюме
  • FAQ
  • Як поводитися на співбесіді
  • Основні помилки на співбесіді
  • Бонусне заняття з англійської мови
  • Урок пошуку роботи

Особливості курсу

  • Заняття 2 рази на тиждень (Вт, Пт з 19:00-22:00)
  • Робота над реальними проєктами у команді
  • Доступ до матеріалів протягом року
  • Мінікурс з soft skills
  • Два заняття з англійської
  • Сертифікат про закінчення навчання
  • Підготовка до пошуку роботи

Викладачі курсу

  • Олексій Шиян - Python і С/С++ Developer
  • Михайло Панарін - Python Software Engineer
  • Денис Замятін - Експерт в області розробки ПЗ (C, Python, Web)

Категории курса

Читайте нас в Telegram, чтобы не пропустить анонсы новых курсов.

Похожие курсы

Учебный центр
Foxminded
Формат
Online
Начало обучения
Будь-який момент
Длительность
10 месяцев
Уровень
Для начинающих
Язык обучения
Ukrainian
Стоимость
53 925 UAH за курс
Учебный центр
Optima Academy
Формат
Online
Начало обучения
Будь-який момент
Длительность
3 месяцев
Уровень
Для детей
Язык обучения
Ukrainian
Стоимость
1 600 UAH за месяц
Учебный центр
DAN IT Education
Формат
Online
Начало обучения
31.10.2025
Длительность
5 месяцев
Уровень
Для начинающих
Язык обучения
Ukrainian
Стоимость
6 100 UAH за месяц
Учебный центр
Optima Academy
Формат
Online
Начало обучения
Будь-який момент
Длительность
1 месяцев
Уровень
Для детей
Язык обучения
Ukrainian
Стоимость
1 950 UAH за курс