Основы Python
В данном модуле познакомимся с базовыми темами Python. Разберемся с основными типами данных, научимся управлять потоком выполнения кода при помощи операторов ветвления и циклов. Разберемся как устроены функции в Python и научимся создавать генераторные функции и декораторы. В финале модуля будем работать с файлами при помощи Python
Тема 1: Введение в курс. Подготовка к работе
Тема 2: Базовые типы данных
Тема 3: Управление потоком
Тема 4: Коллекции
Тема 5: Функции. Часть 1
Тема 6: Функции. Часть 2 (Декораторы)
Тема 7: Работа с файлами // ДЗ
Продвинутый Python
Во втором модуле нас ждут модули и импорты, разбиение кода на отдельные модули. Большая тема ООП в Python: инкапсуляция, наследование, полиморфизм, основные дандер-методы, статические и классовые методы, исключения. А так познакомимся с основами тестирования при помощи библиотек Pytest и UnitTest
Тема 1: Основы ООП
Тема 2: Продвинутый ООП. Продолжение
Тема 3: Продвинутый ООП. Исключения
Тема 4: Модули // ДЗ
Тема 5: Знакомство со встроенной библиотекой
Тема 6: Тесты // ДЗ
Тема 7: Практика
Взаимодействие с внешним миром. Создание простейшего API. Сборка проекта
Основы работы с файлами (локально) и сетью (HTTP). Создание API
Тема 1: Знакомство со встроенными модулями
Тема 2: Основы HTTP взаимодействия
Тема 3: Файлы и сеть
Тема 4: Основы фронтенда
Тема 5: Базовый фронтенд
Тема 6: FastAPI — быстрая разработка API: знакомство
Тема 7: FastAPI — быстрая разработка API: тело и роутеры// ДЗ
Тема 8: Системы контроля зависимостей
Тема 9: Docker // ДЗ
Тема 10: Групповая менторская консультация
Работа с базами данных, асинхронное программирование
Знакомство с асинхронным программированием. Знакомство с базами данных: PostgreSQL, Mongo DB, Redis. Знакомство с ORM, асинхронная работа с БД.
Тема 1: Хранение данных в реляционных БД. Язык SQL
Тема 2: ORM: SQLAlchemy
Тема 3: SQLAlchemy: связи между таблицами в БД
Тема 4: Миграции схем: alembic
Тема 5: Сложные связи в БД
Тема 6: Асинхронное программирование в Python
Тема 7: Асинхронная работа с БД // ДЗ
Тема 8: Работа API с БД
Тема 9: Асинхронная работа API с БД
Тема 10: Взаимодействие приложений между контейнерами, docker compose // ДЗ
Тема 11: Групповая менторская консультация
Веб-разработка на Django
Знакомство с Django, Django ORM, Generics. Тестирование веб-приложений, фабрики.
Тема 1: Знакомство с Django
Тема 2: Django ORM// ДЗ
Тема 3: Шаблоны (Templates)
Тема 4: Работа с админкой, кастомные команды
Тема 5: Групповая менторская консультация
Тема 6: Формы в Django // ДЗ
Тема 7: Class-Based Views (CBV)
Тема 8: Тестирование Django-приложений с Pytest//ДЗ
Тема 9: Django и отложенные задачи с Celery и Redis//ДЗ
Тема 10: Выбор темы и организация проектной работы
Тема 11: Групповая менторская консультация
DevOps
Автоматизиция тестирования и деплоя. Знакомство с GitHub Actions, GitLab CI/CD
Тема 1: GitHub Actions // ДЗ
Тема 2: GitLab CI // ДЗ
Тема 3: GitLab CD
Тема 4: Групповая менторская консультация
Проектная работа
Заключительный месяц курса посвящен разработке проекта. В качестве темы выбирается то, что интересно писать студенту и то, что потенциально можно будет потом включить в свое резюме. Участие в разработке некоего open source продукта тоже может рассматриваться в качестве выпускного проекта. При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей.
Тема 1: Карьерная консультация
Тема 2: Консультация по проектам и домашним заданиям
Тема 3: Защита проектных работ