Світ Сучасної Освіти

Python Pro



  • 39 600 грн за курс

Про курс

Курс «Python Pro»

Тривалість: 84 години, (28 занять по 3 години)

🔥 Актуальні дати початку занять

На курсе Python Pro Ви вивчите просту, потужну та зручну у використанні мову програмування Python. Цією мовою добре пишеться майже все, вона відмінно почуває себе у вебі та є майже незамінною в сучасних галузях ІТ. Окрім десктопного ПЗ та сайтів, її використовують у програмуванні контролерів, смарт технологій та Data Science, де вона закономірно вважається найкращою.

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

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

Програмне забезпечення, необхідне для навчання на курсі:

  1. Python. Для опанування мови вам знадобиться інтерпретатор Python. 
  2. PyCharm або VSCode. Це так зване інтеграційне середовище розробки, призначене для повного циклу написання й тестування програми певною мовою.

Аудиторія

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

Чому ви навчитеся?

  1. Розуміти, як влаштоване програмування, і чому в нього немає нічого спільного з чаклунством
  2. Створювати грамотну структуру програми
  3. Писати правильний і робочий код без помилок, який буде зрозумілим для стороннього розробника
  4. Створювати невеликі інструментальні програми на Python (наприклад, калькулятор або простий рандомайзер) і більш складні програми
  5. Усіх необхідних знань для того, щоб претендувати на позицію Junior Python Developer

В рамках курсу ви будете працювати в групах над реальними проектами. Це буде захоплююче та ефективно!

Більше інформації про Python

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

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

  • програмування як творчий процес
  • архітектура комп’ютера
  • у чому суть програмування?
  • процес «спілкування» з python
  • інтерпретатор і компілятор
  • процес написання програм
  • що ж таке програма?
  • принципи програмування
  • парадигми програмування
  • вправи

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

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

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

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

4. Ітерації

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

5. Функції і модулі

  • виклик функції
  • вбудовані функції
  • функції приведення типів
  • випадкові числа
  • математичні функції
  • додавання нових функцій
  • визначення і використання
  • параметри функції
  • модульні тести
  • імена файлів і шляхи
  • створення власних модулів і пакетів
  • ініціалізація пакета
  • обробка аргументів командного рядка
  • визначення параметрів середовища виконання
  • створення віртуальних середовищ
  • автоматична ініціалізація пакетів
  • вправи

6. Рядки

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

7. Основи роботи з системою контролю версій8. Файли

  • вступ
  • відкриття файлів
  • текстовий файл і рядки
  • читання файлів
  • пошук через файл
  • оператор with
  • запис файлів
  • вправи

9. Колекції

  • що таке колекція в python
  • типи колекцій
  • масиви і методи роботи з ними
  • списки і методи роботи з ними
  • кортежі й методи роботи з ними
  • множини й незмінні множини
  • словники, методи роботи зі словниками
  • цикли по колекціям
  • практика

10. Елементи функціонального програмування

  • функція об’єкт першого класу
  • функції, залежні від функцій
  • замикання
  • каррування
  • лямбда-функції
  • декоратори
  • вправи

11. Функції

  • типи даних
  • вбудовані контейнери
  • оператори контролю виконання
  • обробка помилок (try … except …)
  • оператори циклів
  • comprehensions (list, dict, set)
  • створення функції і процедур
  • аргументи функцій
  • рекурсивні функції
  • functors, currying
  • декоратори
  • lambda-функції
  • pep8

12. Об’єктно-орієнтований підхід

  • визначення класу
  • поля і методи класу
  • інкапсуляція
  • спадкування
  • поліморфізм
  • “качина” типізація
  • вправи
  • оголошення класу та створення екземпляру
  • принципи ооп (наслідування, інкапсуляція, поліморфізм) в python
  • область видимості (namespaces, scope, правило legb)
  • method resolution order (mro)
  • магічні методи
  • визначення математичних операцій для об’єктів python
  • визначення операцій порівняння для об’єктів python
  • визначення операцій хешування для об’єктів python
  • створення копії екземпляру класу, deep copy, shallow copy
  • інкапсуляція (setters and getters)

13. Управління створенням екземплярів класу

  • doc strings
  • meta класи
  • abstract bases класи
  • __new__
  • __init__
  • context-managers
  • використанням декораторів з класами
  • контейнери, створені шляхом успадкування (userlist, userdict, userstring)
  • контейнери, створені шляхом агрегації
  • методи доступу до елементів контейнера
  • iterators, generators

14. Прийоми об’єктно-орієнтованого програмування

  • software engineering як процес
  • мова uml
  • принципи solid
  • метрики якості коду
  • design patterns (категорії, приклади використання)
  • singletone
  • facade
  • interface

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

  • розробка модулів (визначення та запуск)
  • система імпорту
  • навчання розробці повторно використовуваних пакетів
  • менеджер пакетів pip і віртуальні середовища virtualenv
  • setup.Py
  • написання документації до пакета, модулю
  • створення додатків на основі пакетів

16. Робота з файлами

  • робота із системою контролю версій git
  • форматування рядків
  • context-managers
  • робота з файловою системою (os, os.Path, shutil)
  • серіалізація за допомогою pickle
  • управління порядком серіалізації / десеріалізації об’єктів python
  • серіалізація даних у json
  • серіалізація даних у xml

17. Вбудовані пакети python

  • робота з datetime і calendar
  • робота з collections (черги, іменовані кортежі, вкладені словники)
  • робота з heapq, array, enum
  • робота з числовими даними (numbers, math, decimal, random)
  • робота з contextlib
  • робота з functools
  • logging
  • unittest

18. Networking

  • sockets (основи роботи, приклади серверів)
  • socket server
  • socket client
  • http
  • html, парсинг html-файлів
  • xml

19. Багатопотоковість у python

  • global interpreter loc (gil)
  • створення потоків у python
  • контроль доступу до ресурсів
  • синхронізація потоків
  • створення потоків за допомогою пакету concurent
  • пул потоків

20. Процеси в python

  • пакет multiprocessing
  • interprocess communication
  • черги завдань
  • створення процесів за допомогою пакету concurent
  • пул процесів
  • відтермінування завдань за допомогою пакета sched

21. Асинхронне програмування

  • asyncio
  • пакет twisted
  • асинхронний фреймворк aiohttp
  • збір даних за допомогою фреймворку scrapy sql
  • основи реляційних баз даних
  • er-діаграми
  • стандарт pep249

22. Робота з субд sqlite, postgresql

  • основи мови sql (select, like, order by, limit)
  • nsert
  • update
  • delete
  • join (inner, left, outer)
  • group by
  • функції sql (mean, min, max, avg, count)
  • subqueries

23. Object relational mapping

  • основи роботи з sqlalchemy
  • механізм сесій в sqlalchemy
  • створення бази даних за допомогою моделей sqlalchemy
  • міграції баз даних з використанням alembic

24. Nosql-базы данных

  • cap теорема
  • типи nosql баз даних
  • робота з redis
  • робота з memcached
  • робота з mongodb
  • брокер повідомлень rabbitmq
  • основи роботи з celery

25. Веб-розробка

  • класифікація web frameworks
  • мова шаблонів jinja2
  • основи api
  • стандарти api (rest, xml-rpc, swagger, json api)
  • архітектурний підхід api first
  • основи роботи з flask

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

  • розуміння основних понять у програмуванні
  1. невеликий розмір груп: 5 - 8 чол.
  2. час занять: 10:00 - 13:00 двічі на тиждень
  3. тривалість курсу: 30 годин (10 занять)
  4. документ про закінчення курсу: сертифіка

---

    Категорії курсів

    Залишити коментар
    Будь ласка, введіть ваше ім’я
    Будь ласка, введіть коментар.
    1000 символів

    Будь ласка, введіть email
    або Відмінити

    Дивіться також усі онлайн-курси, репетиторів онлайн, онлайн-тренінги.