Модуль 3
Классы | Абстракция
Мини-проект
Мини-проект | Создаём проект в PyCharm
Бонусы
Эфир про pytest, test-coverage и selenium
Эфир про Docker
Модуль 4
Методы в list
Декораторы
Простой декоратор
Модуль 5
Дополнительная практика методов в классах
Подытожим основную часть
Модуль 6 - Проект
Изменяемый тип для аргумента по умолчанию
Модуль 7
Рекурсия # 1
Модуль 8 - Проект
Сохранение/загрузка
Модуль 9 - GitHub
Заливаем проект на GitHub
Docker Deployment
Обзор архитектуры
Cloud Deployment
Деплоим back-end в Cloud
Модуль 10 - библиотеки
requests - работа с API
Заключение и сертификат
Классы | Абстракция
- Введение в ООП
- Понятие абстракции
- Зачем нужны классы и как их применять
- Создание классов с опциональными атрибутами
- Практические задания по созданию классов и объектов
- Понятие инкапсуляции
- Методы в классах
- Использование созданных объектов
- Практические задания по созданию классов и объектов
- Понятие наследования
- Создание и использование дочерних классов
- Обращение к родительскому классу из дочернего
- Практические задания по созданию классов и объектов
- Понятие полиморфизма
- Для чего нужен полиморфизм и как им пользоваться на практике
- Понятие исключений
- Примеры исключений и что с ними делать
- Как можно обойтись без исключений
- Как можно самостоятельно использовать исключения
Мини-проект
Мини-проект | Создаём проект в PyCharm
- Создание проекта и виртуальной среды в PyCharm
- Повторение классов
- Делаем вместе мини-проект по расчёту расходов на автомобиль с применением всех принципов ООП
- Ещё раз соберём вместе знания о классах
- Повторим принципы ООП для закрепления
Бонусы
Эфир про pytest, test-coverage и selenium
Эфир про Docker
Модуль 4
Методы в list
- list - это тоже класс
- Заглядываем внутрь класса list
- Методы, доступные в листе
- Манипуляции с элементами листа
- Обращение к элементам по их индексу
- Сходство list и str
- Срезы листов и строк
- dict - это тоже класс
- Заглядываем внутрь класса dict
- Методы, доступные в dict
- Манипуляции с элементами
- for - вместо тысячи строк
- Примеры использования циклов
- Как лучше всего использовать цикл
- Как управлять циклом
- break
- continue
- return
- for и range - цикл с индексами
- enumerate - нумерация объектов цикла
- Задачки про Олега
- Когда именно используется цикл while
- Бесконечный цикл
- Ожидание событий
Декораторы
Простой декоратор
- Что такое декораторы и как их использовать
- Как создать свой декоратор
- Шаблон декоратора
- Как использовать декоратор
- Статические методы в классах
- Как создать декоратор, принимающий параметры
- Шаблон декоратора, который вы можете использовать
- Делаем аналог @pytest.mark.parametrize
Модуль 5
Дополнительная практика методов в классах
- Мини-проект - банк со счетами и клиентами
- Ещё больше практических заданий по классам и принципам ООП
- Методы в str: split, strip, replace, startswith, endswith
- Как получить нужную информацию из текста
- Парсинг (распознавание) текста
- Подробное объяснение сложной задачи
Подытожим основную часть
- Конец основной части - переходим к проекту
Модуль 6 - Проект
Изменяемый тип для аргумента по умолчанию
- Почему именно не стоит использовать mutable как значение по умолчанию
- Почему именно не стоит использовать mutable как значение по умолчанию
- Описание проекта (ТЗ)
- Структура данных tree (дерево)
- Создаём базовый кирпичик нашего приложения
- Наглядно поясним, зачем именно нужна инкапсуляция (и что будет без неё)
- Указатель одного объекта на другой
Модуль 7
Рекурсия # 1
- Когда, зачем и как применять рекурсию
- Понятие глубины рекурсии
- Ищем файлы в файловой системе компьютера с помощью рекурсии
- Применяем рекурсию в нашем проекте
- Что общего между dict и JSON
- Как используется JSON в REST API
- classmethod - зачем нужен и как применяется
- Сериализация/десериализация объектов
- Как открыть и прочитать файл с помощью Python
- Как сохранить файл на жесткий диск с помощью Python
- Режимы открытия файлов
- Контекстный менеджер with
- Особенность сохранения файлов, содержащих кириллицу
- Как сохранить JSON-файл
- Как прочитать JSON-файл
Модуль 8 - Проект
Сохранение/загрузка
- Применяем полученные знания к проекту
- Продолжаем проект - создаём управляющий элемент нашего приложения
- Что такое библиотеки
- Для чего они нужны
- Какие библиотеки есть на Python
- Как их устанавливать и как пользоваться
- Что такое виртуальные среды
- Что такое фреймворки
- Для чего они нужны
- Какие фреймворки есть на Python
- Как их устанавливать и как пользоваться
- Устанавливаем Flask
- Hello World на Flask
- Создаём точки входа API
- Связываем логику нашего приложения с Flask, чтобы получить веб-сервер
- Проверяем наш веб-сервер в связке с фронт-эндом
Модуль 9 - GitHub
Заливаем проект на GitHub
- Как опубликовать проект на GitHub, используя командную строку (Git Bash)
- Как опубликовать проект на GitHub из PyCharm
- Как работать над изменениями при помощи git
- Зачем нужен файл requirements.txt
- Как начать работать с новым проектом, взяв его из git
Docker Deployment
Обзор архитектуры
- Обзор архитектуры headless веб-приложения
- Как сделать сайт с бэк-эндом и фронт-эндом
- Dockerfile и docker-compose.yaml
- Запуск Python Flask приложения через Docker
- Строим фронт-энд с помощью docker
- Сервируем файлы фронт-энда с помощью nginx
- Соединяем фронт-энд и бэк-энд через docker-compose
- Создаём веб-сервер в reg.ru
- Заливаем код через GitHub на удалённый сервер
- Соединяем front-end и back-end в облаке
Cloud Deployment
Деплоим back-end в Cloud
- Делаем наше приложение доступным всем через сеть Интернет
- Деплой в облако Heroku
- После этого урока ваш код Python будет выполняться в облаке и будет доступен через интернет
- Запускаем фронт-энд локально
- Соединяем локальный фронт-энд с удалённым бэк-эндом (в облаке)
- Деплоим фронт-энд в облако
- Соединяем бэк-энд с фронт-эндом в облаке
- После этого урока у вас будет готовое Fullstack приложение в облаке, доступное через сеть Интернет
Модуль 10 - библиотеки
requests - работа с API
- Описание библиотеки
- Использование requests для работы с API
- Описание библиотеки
- Использование pydantic для создания удобных классов и работы с данными
Заключение и сертификат
- Заключительный урок
- Место для отзыва и небольшой опрос о курсе
- Ваш сертификат о прохождении курса с указанием количества выполненных заданий и уникальным номером