Подробнее
Что нужно для старта
- Что нужно знать для старта:
- Базовый Python: переменные, условия, циклы, функции, списки и словари. Если писали простые скрипты или проходили введение в Python — этого достаточно.
- Основы ООП: классы, объекты, наследование. Достаточно понимать концепцию.
- Иметь начальные знания HTML, CSS.
- Уверенное владение компьютером: умение устанавливать программы, работать с файлами, пользоваться браузером.
- Что будет плюсом, но не обязательно:
- Общее представление о работе веб-сайтов (что такое сервер, клиент, запрос).
- Опыт работы в командной строке (заходить в папки, запускать файлы).
- Технические требования:
- Компьютер (Windows, macOS или Linux) с выходом в интернет.
- Возможность устанавливать программы (все бесплатные).
- 4 ГБ оперативной памяти (8 ГБ — комфортно, но можно и на 4 ГБ).
- Самое главное: желание разбираться, терпение и готовность пробовать снова, если что-то не получается с первого раза. Остальному мы научим! 🚀
Что вы получите
- Проектировать базы данных и писать SQL-запросы любой сложности: от простых выборок до оконных функций, транзакций и оптимизации.
- Работать с системами контроля версий Git и GitHub: управлять ветками, разрешать конфликты, проходить код-ревью.
- Разрабатывать веб-приложения на Django 5: модели, представления, шаблоны, формы, админ-панель, авторизация.
- Создавать полноценные проекты: блог, интернет-магазин, системы комментариев, лайков, тегирования.
- Применять продвинутые возможности Django: ORM с индексами PostgreSQL, кастомные менеджеры, сигналы, middleware.
- Строить REST API на Django REST Framework: сериализаторы, ViewSet, JWT-аутентификация, фильтрация, документация.
- Добавлять современный функционал: асинхронный чат через WebSocket, фоновые задачи Celery, кэширование Redis.
- Разрабатывать через тестирование (TDD) и писать unit-тесты для Django-приложений.
- Упаковывать проекты в Docker и разворачивать на реальном сервере с Nginx, Gunicorn, PostgreSQL и HTTPS.
Для кого этот курс
- 👨💻 Новички в программировании и те, кто меняет профессию.
- Пройдете полный путь с нуля до junior-разработчика: от первых SQL-запросов до деплоя Django-проекта на сервер.
- 🐍 Python-разработчики, не знакомые с Django.
- Систематизируете знания и освоите самый востребованный веб-фреймворк на Python с полным стеком современных технологий.
- 💻 Начинающие Django-разработчики.
- Закроете пробелы, углубитесь в продвинутые темы (ORM, тестирование, Docker, Celery) и добавите в портфолио 5 полноценных проектов.
- 🔧 Backend-разработчики на других языках.
- Быстро войдете в экосистему Python и Django, изучив best practices и современные подходы к разработке API.
- 🎓 Студенты и выпускники IT-специальностей.
- Получите практические навыки, которых так не хватает в вузах, и соберете проекты для уверенного старта карьеры.
- 🚀 Выпускники онлайн-курсов по Python.
- Перейдете от теории к практике: научитесь создавать полноценные веб-приложения, которые можно показать работодателю.
- 👥 Разработчики, желающие работать на фрилансе.
- Освоите востребованный стек для коммерческой разработки: от админок для сайтов до сложных API под мобильные приложения.
Программа курса
- Знакомство
- О курсе
- Обзор систем контроля версий
- Установка и настройка Git
- Первый репозиторий
- Первый коммит
- Индекс
- Подробнее о коммита
- Откат изменений
- Удаление файлов
- Переименование/перемещение файлов
- Просмотр изменений
- История коммитов
- Машина времени (изменение истории)
- Игнорирование файлов
- Домашнее задание
- Создание удаленного репозитория
- Клонирование репозитория
- SSH аутентификация
- Копирование чужого репозитория (fork)
- GitHub Copilot
- Файл Readme.md и разметка Markdown
- Альтернативы GitHub
- Домашнее задание
- Введение в ветки
- Переключение между ветками
- Создание, просмотр, удаление веток
- Слияние веток
- Конфликты при слиянии
- Экстренное переключение между задачами
- Безопасное обновление репозитория
- Поиск автора кода
- Запросы на слияние (Pull Request)
- Большая шпаргалка
- О курсе
- Установка MySQL сервера
- Работа в терминале
- Графические IDE (Workbench, DBeaver)
- Взаимодействие с сервером
- Контрольные вопросы
- Решаем задачи. Пишем SQL код
- Первичные ключи
- Особенности типов данных и именование объектов
- Руководство по стилю SQL · SQL Style Guide
- Индексы
- Внешние ключи
- Подробнее про ALTER TABLE
- Особенности синтаксиса MySQL
- Виды связей между таблицами (1х1, 1хМ, МхМ)
- Таблицы-справочники
- ER-диаграмма
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
- Команда INSERT
- Команда SELECT
- Команда UPDATE
- Команда DELETE
- Бонус: Сервисы для генерации данных
- Импорт-экспорт данных
- Контрольные вопросы
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
- Фильтрация (WHERE + LIKE)
- Сортировка (ORDER BY)
- Агрегирующие функции (COUNT, MIN, MAX, AVG, SUM)
- Группировка (GROUP BY)
- Фильтрация (HAVING)
- Отсутствие значения (NULL)
- Пейджинг (LIMIT + OFFSET)
- Условия, ветвления (IF, CASE)
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Контрольные вопросы. Часть 3
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
- Как работает интернет и веб-сайты?
- Краткий конспект по HTML
- Что такое Django
- Основные принципы MVC
- Установка Django и создание проекта HelloWorld
- Диспетчер URL, часть 1.
- Диспетчер URL, часть 2.
- Шаблоны, часть 1.
- Шаблоны, часть 2.
- Введение в тестирование приложений
- Создание проекта, первые модели и админ-панель
- Модели в Django и их поля
- Первые ORM запросы (CRUD)
- Организация связей между таблицами
- Django ORM, методы возвращающие QuerySet
- Django ORM, методы которые не возвращают QuerySet
- Django ORM, поисковые выражения и агрегатные функции
- Views/Templates/URLs
- Формы в Django
- CRUD проект
- Создание проекта и приложения
- Создание моделей данных блога
- Сайт администрирования
- Работа с наборами запросов QuerySet и менеджерами
- Разработка представлений списка и детальной информации
- Создание шаблонов представлений
- Работа с URL
- Добавление постраничной разбивки
- Разработка представлений на основе классов
- Рекомендация постов по электронной почте
- Создание системы комментариев
- Добавление функциональности тегирования
- Извлечение постов по сходству
- Реализация пользовательских шаблонных тегов и фильтров
- Добавление карты сайта
- Установка базы данных PostgreSQL
- Добавление полнотекстового поиска в блог
- Введение в пользовательскую систему Django
- Использование системы аутентификации Django
- Доработки системы авторизации и регистрации, добавление сессий
- Прoфили пользователей и пользовательские поля модели User
- Авторизация через социальные сети посредством OAuth 2.0
- Улучшаем дизайн блога с использованием Bootstrap 5
- Покупка VPS, доменного имени, привязка DNS и настройка по SSH.
- Установка виртуального окружения, Gunicorn и списка зависимостей
- Установка PostgreSQL, настройка и перенос БД
- Установка и настройка NGINX
- Получение SSL сертификата от Let's Encrypt и настройка HTTPS
- Начало работы, создание модели статей
- Создание древовидной модели категорий
- Представления на основе классов
- Рабoта с ListView, вывод списка статей
- Работа с DetailView, форматирование и обработка кириллицы в Slug
- Вывод дерева категорий, пагинация, добавление Bootstrap 5
- Оптимизация SQL запросов и установка Debug-Toolbar
- Профили пользователей: Модели и сигналы
- Профили пользователей: Представления и формы.
- Работа с CreateView. Добавление записей пользователями.
- Работа с UpdateView. Обновление записей пользователями.
- Использование миксинов в работе с представлениями Django
- Доработки системы авторизации и регистрации
- Создание древовидных комментариев
- Создание древовидных комментариев, добавление JavaScript
- Добавление функциональности тегирования
- Добавление ReCAPTCHA для форм
- Интеграция WYSIWYG-редактора, установка CKEditor
- Создание системы Like / Dislike
- Добавление RSS ленты для блога
- Кеширование и Middleware для получения статуса пользователей
- Настройка своих шаблонов для страниц ошибок 403, 404
- Структура и поля моделей, создание проекта
- Связь One-To-One (Один к одному)
- Связь One-To-Many (Один ко многим)
- Связь Many-to-Many (Многие ко многим)
- Методы возвращающие QuerySet
- Методы, которые не возвращают QuerySet
- Поисковые поля
- Агрегатные функции и их группировка
- Q-объекты и F-объекты
- Мета-классы
- Абстрактные модели
- Пользовательские менеджеры моделей
- Введение в индексы баз данных
- Подготовка проекта и установка Debug Toolbar, генерация данных
- Индексы PostgreSQL
- Что такое разработка через тестирование?
- Введение в UnitTest
- Создание нового проекта и введение в Django тестирование
- Написание тестов для моделей и URL-адресов
- Написание тестов для форм и шаблонов
- Написание тестов для представлений
- Разрешения на уровне пользователя
- Разрешения на уровне группы
- Введение в HTMX и создание проекта
- Модели и создание шаблонов
- Создание представлений
- Cоздание, редактирование и удаление записей
- Cортировка записей
- Добавление в проект Bootstrap 5
- Итоги работы
- Введение в интернационализацию и подготовка проекта
- Перевод моделей и форм
- Перевод шаблонов
- Использование библиотеки Rosetta
- Шаблоны URL-адресов для интернационализации
- Переключение языка сайта
- Введение в WebSocket
- Установка Channels и подготовка проекта
- Создание кастомной User модели
- Создание моделей чата
- Работа с представлениями и шаблонами
- Работа с WebSocket
- Работа с WebSocket, добавление асинхронности
- Redis + Django Channel
- Введение в Celery
- Подготовка проекта, добавление подтверждения регистрации
- Асинхронная отправка электронных писем
- Периодические задания
- Отслеживание Celery с помощью Flower
- Введение в кэширование
- Виды кэша в Django
- Уровни кэша в Django
- Итоги работы
- Знакомство с Docker
- Основные команды Docker
- Создание образов и запуск контейнера
- Контейнеризация Django и написание Dockerfile
- Введение в Docker Compose
- Docker Compose на примере Django, PostgreSQL и Memcached
- Подготовка к деплою, Gunicorn и NGINX в Docker Compose
- Настройка Docker-Compose для статических и медиа файлов
- Покупка VPS, доменного имени, привязка DNS
- Установка Docker на сервере
- Запуск Docker контейнеров на сервере
- Получение SSL-сертификата от Let's Encrypt и настройка HTTPS
- Что такое API и его типы?
- Изучаем REST. Архитектура и лучшие практики
- HTTP методы и идемпoтентность
- Коды состояний HTTP
- Что такое DRF?
- Установка Django и создание проекта HelloWorld на DRF
- Подготовка проекта на Django
- Сериализаторы
- Cериализаторы, часть 2
- Представления на основе функций
- Представления на основе классов (APIView)
- GenericAPIView и использование миксинов
- ViewSet и ModelViewSet
- Маршрутизация и декоратор @action
- Подготовка проекта, создание приложений
- Оптимизация моделей (абстрактные модели и кастомный QuerySet)
- Создание моделей покупателей
- Создание моделей продавцов и магазина
- Создание моделей заказов
- Использование автоматической документации
- Авторизация и аутентификация на основе JWT токенов
- Авторизация и аутентификация на основе JWT токенов, часть 2
- Работа с эндпоинтами профиля и загрузка файлов
- Работа с эндпоинтами продавца и магазина
- Работа с эндпоинтами продавца и магазина, часть 2
- Работа с эндпоинтами корзины
- Работа с эндпоинтами заказов
- Управление правами доступа
- Добавление фильтрации товаров
- Добавление пагинации товаров
- Экзамен
- CORS
- Дросселирование (throttling)
- Версионирование API
- Асинхронность в DRF
- Тестирование в DRF, часть 1
- Тестирование в DRF, часть 2
- Вложенные запросы (подзапросы)
- Объединения (JOIN) - Теория
- Объединения (CROSS JOIN, INNER JOIN)
- Объединения (LEFT JOIN, RIGHT JOIN)
- Объединения (FULL OUTER JOIN)
- Вложенные запросы VS объединения
- Соединения (UNION)
- Оконные функции
- Общие табличные выражения (CTE)
- Рекурсивные табличные выражения
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
- Решаем задачи. Пишем SQL код. Часть 3
- Решаем задачи. Пишем SQL код. Часть 4
- Полнотекстовый поиск
- Представления (View)
- Хранимые процедуры
- Пользовательские функции
- Переменные
- Триггеры
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Контрольные вопросы. Часть 3
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
- Введение в транзакции
- Обработка исключений (ошибок)
- Уровни изоляции транзакций
- Блокировки таблиц
- Взаимная блокировка (deadlock)
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код
- Пользователи
- Роли
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код
- Лишний JOIN
- Денормализация
- Настройки сервера
- Анализ запросов (EXPLAIN)
- Графический план исполнения запроса
- Исправление проблемных мест
- Графический план: показательные примеры
- Контрольные вопросы
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
- Работа с логами
- Циклы
- Курсоры
- SQL инъекции
- Контрольные вопросы
- Решаем задачи. Пишем SQL код
- Итоги
01Git [1] Основы Git
- Знакомство
- О курсе
- Обзор систем контроля версий
- Установка и настройка Git
- Первый репозиторий
- Первый коммит
- Индекс
- Подробнее о коммита
- Откат изменений
- Удаление файлов
- Переименование/перемещение файлов
- Просмотр изменений
- История коммитов
- Машина времени (изменение истории)
- Игнорирование файлов
- Домашнее задание
02Git [2] GitHub
- Создание удаленного репозитория
- Клонирование репозитория
- SSH аутентификация
- Копирование чужого репозитория (fork)
- GitHub Copilot
- Файл Readme.md и разметка Markdown
- Альтернативы GitHub
- Домашнее задание
03Git [3] Ветвление и командная работа
- Введение в ветки
- Переключение между ветками
- Создание, просмотр, удаление веток
- Слияние веток
- Конфликты при слиянии
- Экстренное переключение между задачами
- Безопасное обновление репозитория
- Поиск автора кода
- Запросы на слияние (Pull Request)
- Большая шпаргалка
04SQL [1] Установка рабочего окружения
- О курсе
- Установка MySQL сервера
- Работа в терминале
- Графические IDE (Workbench, DBeaver)
- Взаимодействие с сервером
- Контрольные вопросы
- Решаем задачи. Пишем SQL код
05SQL [2] Проектирование БД (команды DDL)
- Первичные ключи
- Особенности типов данных и именование объектов
- Руководство по стилю SQL · SQL Style Guide
- Индексы
- Внешние ключи
- Подробнее про ALTER TABLE
- Особенности синтаксиса MySQL
- Виды связей между таблицами (1х1, 1хМ, МхМ)
- Таблицы-справочники
- ER-диаграмма
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
06SQL [3] Работа с данными (команды DML, CRUD)
- Команда INSERT
- Команда SELECT
- Команда UPDATE
- Команда DELETE
- Бонус: Сервисы для генерации данных
- Импорт-экспорт данных
- Контрольные вопросы
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
07SQL [4] Основы SELECT запросов
- Фильтрация (WHERE + LIKE)
- Сортировка (ORDER BY)
- Агрегирующие функции (COUNT, MIN, MAX, AVG, SUM)
- Группировка (GROUP BY)
- Фильтрация (HAVING)
- Отсутствие значения (NULL)
- Пейджинг (LIMIT + OFFSET)
- Условия, ветвления (IF, CASE)
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Контрольные вопросы. Часть 3
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
08Django [1] - Введение в веб-разработку
- Как работает интернет и веб-сайты?
- Краткий конспект по HTML
09Django [1] - Основы + HelloWorld на Django
- Что такое Django
- Основные принципы MVC
- Установка Django и создание проекта HelloWorld
- Диспетчер URL, часть 1.
- Диспетчер URL, часть 2.
- Шаблоны, часть 1.
- Шаблоны, часть 2.
- Введение в тестирование приложений
10Django [1] - Простой проект на Django с БД
- Создание проекта, первые модели и админ-панель
- Модели в Django и их поля
- Первые ORM запросы (CRUD)
- Организация связей между таблицами
- Django ORM, методы возвращающие QuerySet
- Django ORM, методы которые не возвращают QuerySet
- Django ORM, поисковые выражения и агрегатные функции
- Views/Templates/URLs
11Django [1] - CRUD - проект
- Формы в Django
- CRUD проект
12Django [1] - Создание блога на функциях
- Создание проекта и приложения
- Создание моделей данных блога
- Сайт администрирования
- Работа с наборами запросов QuerySet и менеджерами
- Разработка представлений списка и детальной информации
- Создание шаблонов представлений
- Работа с URL
- Добавление постраничной разбивки
- Разработка представлений на основе классов
- Рекомендация постов по электронной почте
- Создание системы комментариев
- Добавление функциональности тегирования
- Извлечение постов по сходству
- Реализация пользовательских шаблонных тегов и фильтров
- Добавление карты сайта
- Установка базы данных PostgreSQL
- Добавление полнотекстового поиска в блог
- Введение в пользовательскую систему Django
- Использование системы аутентификации Django
- Доработки системы авторизации и регистрации, добавление сессий
- Прoфили пользователей и пользовательские поля модели User
- Авторизация через социальные сети посредством OAuth 2.0
- Улучшаем дизайн блога с использованием Bootstrap 5
13Django [1] - Деплой проекта
- Покупка VPS, доменного имени, привязка DNS и настройка по SSH.
- Установка виртуального окружения, Gunicorn и списка зависимостей
- Установка PostgreSQL, настройка и перенос БД
- Установка и настройка NGINX
- Получение SSL сертификата от Let's Encrypt и настройка HTTPS
14Django [1] - Создание блога 2.0 на классах
- Начало работы, создание модели статей
- Создание древовидной модели категорий
- Представления на основе классов
- Рабoта с ListView, вывод списка статей
- Работа с DetailView, форматирование и обработка кириллицы в Slug
- Вывод дерева категорий, пагинация, добавление Bootstrap 5
- Оптимизация SQL запросов и установка Debug-Toolbar
- Профили пользователей: Модели и сигналы
- Профили пользователей: Представления и формы.
- Работа с CreateView. Добавление записей пользователями.
- Работа с UpdateView. Обновление записей пользователями.
- Использование миксинов в работе с представлениями Django
- Доработки системы авторизации и регистрации
- Создание древовидных комментариев
- Создание древовидных комментариев, добавление JavaScript
- Добавление функциональности тегирования
- Добавление ReCAPTCHA для форм
- Интеграция WYSIWYG-редактора, установка CKEditor
- Создание системы Like / Dislike
- Добавление RSS ленты для блога
- Кеширование и Middleware для получения статуса пользователей
- Настройка своих шаблонов для страниц ошибок 403, 404
15Django [2] - Django ORM на основе проекта
- Структура и поля моделей, создание проекта
- Связь One-To-One (Один к одному)
- Связь One-To-Many (Один ко многим)
- Связь Many-to-Many (Многие ко многим)
- Методы возвращающие QuerySet
- Методы, которые не возвращают QuerySet
- Поисковые поля
- Агрегатные функции и их группировка
- Q-объекты и F-объекты
- Мета-классы
- Абстрактные модели
- Пользовательские менеджеры моделей
16Django [2] - Индексы баз данных
- Введение в индексы баз данных
- Подготовка проекта и установка Debug Toolbar, генерация данных
- Индексы PostgreSQL
17Django [2] - Разработка через тестирование
- Что такое разработка через тестирование?
- Введение в UnitTest
- Создание нового проекта и введение в Django тестирование
- Написание тестов для моделей и URL-адресов
- Написание тестов для форм и шаблонов
- Написание тестов для представлений
18Django [2] - Разрешения в Django
- Разрешения на уровне пользователя
- Разрешения на уровне группы
19Django [2] - HTMX на основе CRUD проекта
- Введение в HTMX и создание проекта
- Модели и создание шаблонов
- Создание представлений
- Cоздание, редактирование и удаление записей
- Cортировка записей
- Добавление в проект Bootstrap 5
- Итоги работы
20Django [2] - Интернационализация и локализация в Django
- Введение в интернационализацию и подготовка проекта
- Перевод моделей и форм
- Перевод шаблонов
- Использование библиотеки Rosetta
- Шаблоны URL-адресов для интернационализации
- Переключение языка сайта
21Django [2] - Создание чата на Django с использованием WebSocket
- Введение в WebSocket
- Установка Channels и подготовка проекта
- Создание кастомной User модели
- Создание моделей чата
- Работа с представлениями и шаблонами
- Работа с WebSocket
- Работа с WebSocket, добавление асинхронности
- Redis + Django Channel
22Django [2] - Асинхронные задачи в Django + Сelery + Redis
- Введение в Celery
- Подготовка проекта, добавление подтверждения регистрации
- Асинхронная отправка электронных писем
- Периодические задания
- Отслеживание Celery с помощью Flower
23Django [2] - Инфраструктура кэширования в Django
- Введение в кэширование
- Виды кэша в Django
- Уровни кэша в Django
- Итоги работы
24Django [2] - Docker
- Знакомство с Docker
- Основные команды Docker
- Создание образов и запуск контейнера
- Контейнеризация Django и написание Dockerfile
- Введение в Docker Compose
- Docker Compose на примере Django, PostgreSQL и Memcached
- Подготовка к деплою, Gunicorn и NGINX в Docker Compose
- Настройка Docker-Compose для статических и медиа файлов
25Django [2] - Деплой проекта через Docker
- Покупка VPS, доменного имени, привязка DNS
- Установка Docker на сервере
- Запуск Docker контейнеров на сервере
- Получение SSL-сертификата от Let's Encrypt и настройка HTTPS
26DRF - Введение в API
- Что такое API и его типы?
- Изучаем REST. Архитектура и лучшие практики
- HTTP методы и идемпoтентность
- Коды состояний HTTP
27DRF - Знакомство с Django REST Framework
- Что такое DRF?
- Установка Django и создание проекта HelloWorld на DRF
28DRF - Создание CRUD-приложения на DRF
- Подготовка проекта на Django
- Сериализаторы
- Cериализаторы, часть 2
- Представления на основе функций
- Представления на основе классов (APIView)
- GenericAPIView и использование миксинов
- ViewSet и ModelViewSet
- Маршрутизация и декоратор @action
29DRF - Интернет магазин на DRF
- Подготовка проекта, создание приложений
- Оптимизация моделей (абстрактные модели и кастомный QuerySet)
- Создание моделей покупателей
- Создание моделей продавцов и магазина
- Создание моделей заказов
- Использование автоматической документации
- Авторизация и аутентификация на основе JWT токенов
- Авторизация и аутентификация на основе JWT токенов, часть 2
- Работа с эндпоинтами профиля и загрузка файлов
- Работа с эндпоинтами продавца и магазина
- Работа с эндпоинтами продавца и магазина, часть 2
- Работа с эндпоинтами корзины
- Работа с эндпоинтами заказов
- Управление правами доступа
- Добавление фильтрации товаров
- Добавление пагинации товаров
- Экзамен
30DRF - Продвинутые возможности в DRF
- CORS
- Дросселирование (throttling)
- Версионирование API
- Асинхронность в DRF
- Тестирование в DRF, часть 1
- Тестирование в DRF, часть 2
31SQL [5] Сложные SELECT запросы
- Вложенные запросы (подзапросы)
- Объединения (JOIN) - Теория
- Объединения (CROSS JOIN, INNER JOIN)
- Объединения (LEFT JOIN, RIGHT JOIN)
- Объединения (FULL OUTER JOIN)
- Вложенные запросы VS объединения
- Соединения (UNION)
- Оконные функции
- Общие табличные выражения (CTE)
- Рекурсивные табличные выражения
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
- Решаем задачи. Пишем SQL код. Часть 3
- Решаем задачи. Пишем SQL код. Часть 4
32SQL [6] Продвинутые фичи SQL
- Полнотекстовый поиск
- Представления (View)
- Хранимые процедуры
- Пользовательские функции
- Переменные
- Триггеры
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Контрольные вопросы. Часть 3
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
33SQL [7] Транзакции
- Введение в транзакции
- Обработка исключений (ошибок)
- Уровни изоляции транзакций
- Блокировки таблиц
- Взаимная блокировка (deadlock)
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код
34SQL [8] Права доступа
- Пользователи
- Роли
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код
35SQL [9] Вопросы оптимизации
- Лишний JOIN
- Денормализация
- Настройки сервера
- Анализ запросов (EXPLAIN)
- Графический план исполнения запроса
- Исправление проблемных мест
- Графический план: показательные примеры
- Контрольные вопросы
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
36SQL [10] Дополнительные темы
- Работа с логами
- Циклы
- Курсоры
- SQL инъекции
- Контрольные вопросы
- Решаем задачи. Пишем SQL код
37Завершение
- Итоги
Отзывы о курсе
Оставьте отзыв
Расскажите о качестве обучения, поддержке и результате. Это поможет другим выбрать организацию осознанно.
Оставьте заявку
Консультант ответит на вопросы о курсе «Программа: Django-разработчик [ Git + Django + SQL + DRF ]» и поможет разобраться в деталях обучения.
Нажимая кнопку, вы даете согласие на обработку персональных данных
Информация обновлена 7 сентября 2026 г.

Stepik 

















