Python — отличный выбор для новичков. Простой, понятный — достаточно основ, чтобы начать программировать. А почему Python 3? Самая востребованная версия языка открывает возможности для успешной карьеры в разных областях — от веб-разработки до искусственного интеллекта. На курсе вы освоите не только язык программирования, но и инструмент для работы с данными — SQL. Получите +100 к конкурентоспособности на рынке и будьте уверены в своём будущем.
- Введение в Python
Почему Python?Python с технической точки зрения.Python 2 vs Python 3.Стандартная библиотека.Редакторы кода для Python.Инсталлируем дистрибутив Anaconda.Введение в Anaconda.Jupyter Notebook не запускается через Anaconda Navigator?Базовые сведения о Python. Тест.
- Функции и модули
Помощь по функциям.Встроенные функции.Основы функций.Лямбды.Вложенные функции и область видимости переменных.Декораторы.Декоратор @wraps.Тест по функциям.Практика по функциям 1–4.Разбор практики по функциям 1–4.Практика. «Игра в палочки».Разбор. «Игра в палочки».
- Дополнительные материалы. Введение в многопоточное программирование
Терминология.Процессы и потоки.Виды процессинга.GIL.
- Основы Python
Обзор основных типов данных.Числа и элементарная математика.Переменные.bool и None.Тип string.Функции string.Форматирование строк.Операторы сравнения.Операции над файлами.Строки и байты: str, bytes, bytearray.Основы Python. Тест.Практика. Python Basics (основы).Разбор. Python Basics (основы).
- Финальная практика
Задания для самопроверки.Задания 1–4. Решения.Задание 5. Решение.Практика. «Парсинг римских чисел».Разбор. «Парсинг римских чисел».Практика. «Виселица».Разбор. «Виселица».Практика. «Верю — не верю».Разбор. «Верю — не верю».
- Ошибки и исключения. Автоматизированные тесты
Основы обработки ошибок.Выброс исключений. Кастомные типы исключений.Основы юнит-тестирования.Работа с ошибками. Тест.
- Модули и пакеты
PyPi и Pip.Модули и пакеты.Ещё раз о __name__ и __main__.Модули и пакеты. Тест.
- Функции и модули
Помощь по функциям.Встроенные функции.Основы функций.Лямбды.Вложенные функции и область видимости переменных.Декораторы.Декоратор @wraps.Тест по функциям.Практика по функциям 1–4.Разбор практики по функциям 1–4.Практика. «Игра в палочки».Разбор. «Игра в палочки».
- DDL . Управляем БД и таблицами
Управляем таблицами.Практика. DDL, №1.Разбор. DDL, №1.Primary Key.Foreign Key.Check.Default.Sequences.Sequences & Tables.INSERT.UPDATE, DELETE, RETURNING.Практика. DDL, №2.Разбор. DDL, №2.
- Что нового в Python 3.8
Обзор нововведений.Устанавливаем Python 3.8 и создаём проект.Walrus-оператор.Навязывание позиционных аргументов.Улучшения в системе type hints.Перегрузка с @overload.Duck Typing и протоколы.Упрощённый вывод значений в интерполированных строках.
- Финальная практика
Задания для самопроверки.Задания 1–4. Решения.Задание 5. Решение.Практика. «Парсинг римских чисел».Разбор. «Парсинг римских чисел».Практика. «Виселица».Разбор. «Виселица».Практика. «Верю — не верю».Разбор. «Верю — не верю».
- Дополнительные материалы. Модуль asyncio
Введение в asyncio.Простейший пример с asyncio.Event Loop. Введение.Event Loop. Демо.Демо с aiohttp.Демо с aiofiles.Futures & Tasks.Демо Task API.Обёртываем Thread через Future.async for.Обработка исключений.Обработка исключений. Демо.Отмена. Введение.Отмена с gather.Отмена с wait. Кооперативная отмена.async IO vs sync IO.
- Дополнительные материалы. Введение в многопоточное программирование
Терминология.Процессы и потоки.Виды процессинга.GIL.
- Коллекции, циклы и логика в Python
list — список.dict — словарь.OrderedDict vs dict.tuple — кортеж.namedtuple — именованные кортежи.Логика с условиями.set — множество.Цикл for.list comprehension.Цикл while, continue, break.Циклы. Практика 1–2.Циклы. Практика 1–2. Решение.Циклы. Практика 3–5.Циклы. Практика 3–5. Решение.Циклы. Практика 6. Определяем Flush.Циклы. Практика 6. Определяем Flush. Решение.Циклы. Практика 7. Палиндром.Циклы. Практика 7. Палиндром. Решение.Практика 8. «Угадай число».Практика 8. «Угадай число». Решение.Практика 9. «Камень, ножницы, бумага».Практика 9. «Камень, ножницы, бумага». Решение.Коллекции и циклы. Тест.
- Что нового в Python 3.8
Обзор нововведений.Устанавливаем Python 3.8 и создаём проект.Walrus-оператор.Навязывание позиционных аргументов.Улучшения в системе type hints.Перегрузка с @overload.Duck Typing и протоколы.Упрощённый вывод значений в интерполированных строках.
- ООП в Python
Основы классов.Атрибуты и методы.Константы. Защищённые и приватные атрибуты. Свойства.Статические методы @staticmethod, @classmethod.Наследование и полиморфизм.Множественное наследование.Миксины.Абстрактный класс и модуль ABC.Магические методы.Задания для самопроверки 1–6.Задания 1–3. Разбор.Задания 4–6. Разбор.Практика. «Крестики-нолики».Разбор. «Крестики-нолики».ООП в Python. Тест.
- Дополнительные материалы. Модуль Threading
Однопоточность. Демо проблемы.Потоки Foreground & Background.Executor API.«Параллельное» исполнение против последовательного.submit-демо.map-демо.Синхронизация потоков.Гонка и Lock.Deadlock.Демо Deadlock.Синхронизация сигналами.Применяем Event.Семафор.Моделируем ночной клуб семафором.Барьер.Атомические операции.Отмена потоков.Отмена убийством процесса.Базовая отмена с флагом.Имплементируем отмену через паттерн Unit of Work.Подытоги.Обработка исключений.Обработка исключений. Демо.
- Ошибки и исключения. Автоматизированные тесты
Основы обработки ошибок.Выброс исключений. Кастомные типы исключений.Основы юнит-тестирования.Работа с ошибками. Тест.
- ООП в Python
Основы классов.Атрибуты и методы.Константы. Защищённые и приватные атрибуты. Свойства.Статические методы @staticmethod, @classmethod.Наследование и полиморфизм.Множественное наследование.Миксины.Абстрактный класс и модуль ABC.Магические методы.Задания для самопроверки 1–6.Задания 1–3. Разбор.Задания 4–6. Разбор.Практика. «Крестики-нолики».Разбор. «Крестики-нолики».ООП в Python. Тест.
- Движемся дальше
Введение в линтеры.Установка «системного» Python.Виртуальное окружение.Установка PyCharm.Создаём проект в PyCharm.Refactoring, Quick Fixes, Debugging в PyCharm.Type Hints.Введение в dataclasses.
- Соединения (Joins)
Знакомство с соединениями.INNER JOIN.LEFT, RIGHT JOIN.SELF JOIN.USING & NATURAL JOIN.AS (псевдонимы).Практика. Joins.Разбор. Joins.
- Введение в SQL
Основные концепции.Реляционная модель и SQL.Почему PostgreSQL?Инсталлируем PostgreSQL.Типы данных в PostgreSQL.Создание БД.Создание таблиц.Отношение «один ко многим».Отношение «один к одному».Отношение «многие ко многим».Создаём Northwind.
- Подзапросы
Введение в подзапросы.WHERE EXISTS.Подзапросы с квантификаторами ANY, ALL.Практика. «Подзапросы».Разбор. «Подзапросы».
- Дополнительные темы
Отладка.Реализуем Stack.datetime — даты и время.Singleton Design Pattern: __new__ и __init__.Pickle — консервирование.repr and str, eq and ne, eval.Deep copy vs Shallow copy.Enum — перечисления.Работаем с JSON.Генераторы.Модуль itertools.Интроспекция.Модуль requests.Управление памятью.Дополнительные темы. Тест.
- Основы Python
Обзор основных типов данных.Числа и элементарная математика.Переменные.bool и None.Тип string.Функции string.Форматирование строк.Операторы сравнения.Операции над файлами.Строки и байты: str, bytes, bytearray.Основы Python. Тест.Практика. Python Basics (основы).Разбор. Python Basics (основы).
- Дополнительные темы
Отладка.Реализуем Stack.datetime — даты и время.Singleton Design Pattern: __new__ и __init__.Pickle — консервирование.repr and str, eq and ne, eval.Deep copy vs Shallow copy.Enum — перечисления.Работаем с JSON.Генераторы.Модуль itertools.Интроспекция.Модуль requests.Управление памятью.Дополнительные темы. Тест.
- Модули и пакеты
PyPi и Pip.Модули и пакеты.Ещё раз о __name__ и __main__.Модули и пакеты. Тест.
- Движемся дальше
Введение в линтеры.Установка «системного» Python.Виртуальное окружение.Установка PyCharm.Создаём проект в PyCharm.Refactoring, Quick Fixes, Debugging в PyCharm.Type Hints.Введение в dataclasses.
- Соединения (Joins)
Знакомство с соединениями.INNER JOIN.LEFT, RIGHT JOIN.SELF JOIN.USING & NATURAL JOIN.AS (псевдонимы).Практика. Joins.Разбор. Joins.
- Введение в Python
Почему Python?Python с технической точки зрения.Python 2 vs Python 3.Стандартная библиотека.Редакторы кода для Python.Инсталлируем дистрибутив Anaconda.Введение в Anaconda.Jupyter Notebook не запускается через Anaconda Navigator?Базовые сведения о Python. Тест.
- Дополнительные материалы. Модуль Threading
Однопоточность. Демо проблемы.Потоки Foreground & Background.Executor API.«Параллельное» исполнение против последовательного.submit-демо.map-демо.Синхронизация потоков.Гонка и Lock.Deadlock.Демо Deadlock.Синхронизация сигналами.Применяем Event.Семафор.Моделируем ночной клуб семафором.Барьер.Атомические операции.Отмена потоков.Отмена убийством процесса.Базовая отмена с флагом.Имплементируем отмену через паттерн Unit of Work.Подытоги.Обработка исключений.Обработка исключений. Демо.
- Дополнительные материалы. Модуль asyncio
Введение в asyncio.Простейший пример с asyncio.Event Loop. Введение.Event Loop. Демо.Демо с aiohttp.Демо с aiofiles.Futures & Tasks.Демо Task API.Обёртываем Thread через Future.async for.Обработка исключений.Обработка исключений. Демо.Отмена. Введение.Отмена с gather.Отмена с wait. Кооперативная отмена.async IO vs sync IO.
- Введение в SQL
Основные концепции.Реляционная модель и SQL.Почему PostgreSQL?Инсталлируем PostgreSQL.Типы данных в PostgreSQL.Создание БД.Создание таблиц.Отношение «один ко многим».Отношение «один к одному».Отношение «многие ко многим».Создаём Northwind.
- Простые запросы с SELECT
Полная выборка.Выборка и элементарные арифметические операции.DISTINCT.COUNT.Практика. «Простые выборки», №1.Разбор. «Простые выборки», №1.WHERE.AND, OR.BETWEEN.IN & NOT IN.ORDER BY.MIN, MAX, AVG.Практика. «Простые выборки», №2.Разбор. «Простые выборки», №2.LIKE.LIMIT.Check on NULL.GROUP BY.HAVING.UNION, INTERSECT, EXCEPT.Практика. «Группировка, сопоставление, сортировка».Разбор. «Группировка, сопоставление, сортировка».
- Подзапросы
Введение в подзапросы.WHERE EXISTS.Подзапросы с квантификаторами ANY, ALL.Практика. «Подзапросы».Разбор. «Подзапросы».
- DDL . Управляем БД и таблицами
Управляем таблицами.Практика. DDL, №1.Разбор. DDL, №1.Primary Key.Foreign Key.Check.Default.Sequences.Sequences & Tables.INSERT.UPDATE, DELETE, RETURNING.Практика. DDL, №2.Разбор. DDL, №2.
- Коллекции, циклы и логика в Python
list — список.dict — словарь.OrderedDict vs dict.tuple — кортеж.namedtuple — именованные кортежи.Логика с условиями.set — множество.Цикл for.list comprehension.Цикл while, continue, break.Циклы. Практика 1–2.Циклы. Практика 1–2. Решение.Циклы. Практика 3–5.Циклы. Практика 3–5. Решение.Циклы. Практика 6. Определяем Flush.Циклы. Практика 6. Определяем Flush. Решение.Циклы. Практика 7. Палиндром.Циклы. Практика 7. Палиндром. Решение.Практика 8. «Угадай число».Практика 8. «Угадай число». Решение.Практика 9. «Камень, ножницы, бумага».Практика 9. «Камень, ножницы, бумага». Решение.Коллекции и циклы. Тест.
- Простые запросы с SELECT
Полная выборка.Выборка и элементарные арифметические операции.DISTINCT.COUNT.Практика. «Простые выборки», №1.Разбор. «Простые выборки», №1.WHERE.AND, OR.BETWEEN.IN & NOT IN.ORDER BY.MIN, MAX, AVG.Практика. «Простые выборки», №2.Разбор. «Простые выборки», №2.LIKE.LIMIT.Check on NULL.GROUP BY.HAVING.UNION, INTERSECT, EXCEPT.Практика. «Группировка, сопоставление, сортировка».Разбор. «Группировка, сопоставление, сортировка».
-
Цена - 1 990 руб.
- Продолжительность курса составляет 46 часов