Знакомство. Введение в разработку ПО на Python: Git, IDE, настройка окружения
> Знакомство с курсом и языком Python.
> Немного истории и роль Python в современном мире.
> Установка Python и настройка окружения
> Основы работы в IDE (Редакторе)
> Структура программы, первая программа "Hello world"
> Основы синтаксиса Python
> Переменные, их типы данных и присваивание.
> Числовые типы данных. Математические операции.
> Решаем линейное уравнение на Python
Введение в Git и GitHub
> Основы системы контроля версий Git.
> Установка Git и настройка окружения.
> Создание репозитория и коммиты.
> Взаимодействие с удаленными репозиториями на GitHub.
Условные операторы и циклы
> Условный оператор if, elif, else.
> Тернарный оператор.
> Цикл for и его использование.
> Цикл while и операторы break и continue.
> Блок else для циклов.
Работа с Функциями
> Понятие функций и их базовые понятия.
> Создание и использование функций.
> Параметры функций и возвращаемые значения.
> Документирование функций и использование докстрингов.
> Локальные и глобальные переменные, понятие side-effects.
Структуры данных: Списки | Кортежи | Множества | Словари
> Основы списков (list) и их методы.
> Операции с кортежами (tuple).
> Итерация по спискам и кортежам.
> Практические задачи с использованием списков и кортежей.
> Множества (set) и их основные операции.
> Словари (dict) и их применение.
> Функция zip и работа с генераторами.
> Выражения-генераторы и их применение.
Модули, Библиотеки
> Импорт модулей с использованием оператора from … import.
> Пути поиска модулей и работа с пакетами.
> Введение в библиотеки random, math, time, datetime.
Работа с Файлами: JSON и CSV
> Основы работы с файлами в Python.
> Режимы чтения и записи файлов.
> Чтение и запись текстовых файлов.
> Работа с JSON-файлами.
> Работа с CSV-файлами.
Строки и работа с текстом
> Работа со строками: индексы, срезы.
> Методы строк.
> Форматирование строк.
> Работа с Unicode и кодировками.
Объектно-ориентированное программирование (ООП). Часть 1
> Понятия ООП: классы, экземпляры, методы, атрибуты.
> Инкапсуляция, наследование и полиморфизм.
> Основные магические методы и их роль в Python.
> Создание объектов и работа с ними.
Обработка Исключений и Основы Тестирования
> Введение в обработку исключений и использование оператора assert.
> Что такое исключение в программировании.
> Как вызывать и обрабатывать исключения.
> Основы тестирования и PyTest.
Объектно-Ориентированное Программирование (ООП). Часть 2
> Magic methods и их использование.
> Свойства (properties) и декораторы.
> Статические методы и методы класса.
> Шаблоны проектирования в Python.
> Применение ООП на практике.
Продвинутые темы в Python
> Генераторы и генераторные выражения.
> Декораторы и их использование.
> Множественное наследование и абстрактные классы.
> Метаклассы и их роль в Python.
> Генераторы контекстов и менеджеры контекстов.
> Дополнительные продвинутые фичи языка Python.
SQL и Основы Реляционных Баз Данных
> Введение в реляционные базы данных.
> SQL и основы работы с базами данных.
> Создание, изменение и удаление таблиц.
> Работа с данными: SELECT, INSERT, UPDATE, DELETE.
> Индексы и оптимизация SQL-запросов.
> Безопасность и предотвращение SQL-инъекций
Работа с Python и SQLite
> Работа с SQLite в Python.
> Создание и управление базами данных и таблицами.
> Выполнение SQL-запросов из Python.
> Транзакции и обработка ошибок.
> Практические задачи работы с базой данных.
ORM и использование SQLAlchemy
> Введение в ORM (Object-Relational Mapping).
> Установка и настройка SQLAlchemy.
> Определение моделей и отображение на базу данных.
> Запросы к базе данных с использованием SQLAlchemy ORM.
> Миграции и обновление схемы базы данных.
Веб-парсинг и HTTP запросы
> Введение в веб-парсинг.
> Библиотека BeautifulSoup для парсинга HTML.
> Использование библиотеки Requests для HTTP запросов.
> Принципы работы с API.
> Получение данных с помощью HTTP запросов.
> OAuth авторизация при работе с API.
Многопоточность и Асинхронное Программирование
> Основы многопоточности и параллелизма.
> Создание и управление потоками.
> Синхронизация потоков и проблемы с ней.
> Применение многопоточности в практических задачах.
> Введение в асинхронное программирование с использованием async/await.
Введение в веб-разработку с использованием FastAPI
> Клиент-серверная архитектура веб-приложений
> Обзор популярных фреймворков для веб-разработки на Python: Flask, Django, FastAPI
> Знакомство с Flask: установка, импорты, создание приложения
> Маршрутизация и представления в Flask
> Запуск Flask приложения и дебаг
FastAPI: Разработка REST API
> Понятие REST и RESTful API
> Создание REST API с FastAPI: работа с роутами и запросами
> Сериализация данных в JSON
> Работа с базами данных в FastAPI с помощью SQLAlchemy
> Модели данных и миграции базы данных
FastAPI: Фронтенд и шаблоны
> HTML шаблоны в FastAPI с использованием Jinja2
> Наследование шаблонов, передача данных в шаблоны
> Разработка frontend с использованием HTML и CSS
> Формы в FastAPI
> Валидация данных формы на backend
Тестирование и развертывание FastAPI приложений
> Тестирование API и модулей приложения
> Интеграционное тестирование с FastAPI тестовым клиентом
> Развертывание FastAPI приложения
> Мониторинг и оптимизация производительности
Завершение проекта и его презентация
> Подготовка презентации проекта
> Обзор основных этапов разработки приложения
> Демонстрация работы готового веб-приложения
> Обсуждение планов дальнейшего развития навыков