Geraold
Организатор
- #1
Практический курс по backend разработке. Тариф Продвинутый [Артем Шумейко]
- Ссылка на картинку
00 План курса и знакомство с автором (бесплатно)
- Особенности курса
- Об авторе: стек, опыт и зарплата
- Программа и план курса
- Типичные проблемы начинающих разработчиков
- Как я помогу вам побороться с ними
- Познакомитесь с автором курса и узнаете его подход к обучению
- Определитесь, подходит ли вам подача материала, чтобы учеба была комфортной и эффективной
- Поставите свои цели на курс, чтобы четко понимать, чего хотите достичь и как это сделать
- Асинхронность: Теоретический блок
- Асинхронность: Практический блок
- Поймете, как работает асинхронность в веб-приложениях, чтобы обрабатывать множество запросов одновременно
- Научитесь писать асинхронный код через async/await, чтобы в разы ускорить работу вашего приложения
- Что такое FastAPI. Спрос на рынке труда и мотивация к изучению
- Установка, запуск, написание первых API ручек
- Разбор всех HTTP методов и первый роутер
- Валидация данных с Pydantic
- Напишете и запустите приложение на FastAPI, современном фреймворке для создания API
- Научитесь писать ручки для CRUD операций, чтобы эффективно управлять данными в приложении
- Освоите валидацию данных с помощью Pydantic, чтобы гарантировать корректность входных данных
- Реализуете пагинацию через механизм зависимостей в FastAPI, чтобы удобно отображать большие объемы данных
- Зачем нужны базы данных. Спрос на рынке труда и мотивация к изучению
- Модели данных и миграции с Alembic
- Работа с базой данных через SQLAlchemy ORM
- Паттерн Репозиторий: изучение и внедрение
- Паттерн DataMapper: изучение и внедрение
- Поймете, зачем нужны миграции и ORM, и как они упрощают работу с базами данных
- Подключите SQLAlchemy — самую популярную ORM на Python, чтобы легко взаимодействовать с базами данных
- Научитесь писать и запускать миграции, чтобы без проблем обновлять структуру данных и поддерживать базу данных в актуальном состоянии
- Реализуете паттерны Repository и Data Mapper, чтобы сделать код более чистым и поддерживаемым
- Мотивация к изучению авторизации и аутентификации
- Регистрация пользователей
- Знакомство и использование JWT токена
- Защищенные API ручки, аутентификация и авторизация через cookie
- Поймете, как устроена авторизация в современных приложениях, чтобы обеспечить безопасность пользователей
- Познакомитесь с хэшированием паролей и JWT токенами для безопасного хранения и передачи данных
- Реализуете аутентификацию с помощью JWT токенов, чтобы создать надежную систему входа для вашего приложения
- Расширенные возможности работы с SQL-запросами
- Перенос сырых запросов в SQLAlchemy
- Реализация M2M связей в базе данных и приложении
- Научитесь писать SQL-запросы с применением CTE, подзапросов, JOIN'ов и группировок для эффективной работы с данными
- Освоите внедрение many-to-many (M2M) связи в базе данных, чтобы организовать сложные отношения между таблицами
- Реализуете сложную бизнес-логику по бронированию отелей в вашем проекте
- Напишете собственный асинхронный контекстный менеджер, чтобы управлять ресурсами и повысить производительность приложения
- Код-ревью других FastAPI проектов
- Изучение частых ошибок при написании проектов на FastAPI
- Паттерн Репозиторий
- Разбор обработки исключений в других проектах
- Разбор работы с базой данных в других проектах
- Разбор преимуществ и недостатков архитектуры, реализованной в разных проектах варианты улучшения этих подходов
- Узнаете, как другие разработчики реализуют код, чтобы расширить свои знания и подходы к программированию
- Изучите множество фишек написания проектов на FastAPI, чтобы использовать лучшие практики и улучшить качество вашего кода
- Поймете принципы построения архитектуры приложений на FastAPI, чтобы создавать масштабируемые и поддерживаемые решения
- Разовьете насмотренность благодаря разнообразию изученных проектов, что поможет легче ориентироваться в коде и адаптироваться к реальным задачам разработчика
- Мотивация к изучению Redis и кэширования
- Написание собственного класса для кэширования
- Использование плагина для кэширования API
- Фоновые отложенные задачи с Celery и Celery Beat
- Работа с файлами в FastAPI
- Фоновые задачи в FastAPI
- Научитесь кэшировать данные через Redis, чтобы ускорить работу API и снизить нагрузку на базу данных
- Внедрите плагин для кэширования ручек в FastAPI, чтобы легко и эффективно добавить кэширование в проект
- Подключите Celery - инструмент для асинхронной обработки задач, чтобы управлять долгими процессами в фоновом режиме
- Реализуете фоновые задачи, чтобы не блокировать работу приложения и отправлять запросы на выполнение длительных задач в фоновом режиме
- Научитесь работать с файлами в FastAPI: принимать и обрабатывать файлы от пользователей для расширения функционала вашего приложения
- Написание unit-тестов
- Написание интеграционных тестов
- Первые фикстуры и знакомство с моками
- Тестирование API
- Покроете весь код тестами через pytest, самой популярной библиотеки для тестирования кода на Python
- Научитесь писать unit-тесты, интеграционные тесты и API тесты, чтобы обнаруживать ошибки в коде до того, как их увидят реальные пользователи
- Освоите написание фикстур и моков, чтобы тестировать отдельные части проекта, имитируя реальную нагрузку со стороны других сервисов
- Узнаете, как параметризировать тесты, чтобы учесть краевые случаи и сделать тесты более лаконичными и эффективными
- Линтеры и форматтеры
- Статические типизаторы
- Обработка исключений в больших приложениях
- Логирование
- Новый слой в приложении — слой сервисов
- Обзор реального production кода
- Паттерн Command
- Узнаете, что такое линтер, форматтер и статический типизатор, и внедрите их в ваш проект, чтобы проверить качество кода до его отправки на сервер
- Поймете, как выстроить слоистую архитектуру, и реализуете ее в вашем проекте для лучшей структуры и масштабируемости
- Внедрите логирование, чтобы легче выявлять возможные ошибки и анализировать работу кода
- Добавите обработку ошибок во всех слоях приложения, чтобы пользователь получал понятные сообщения о причинах неполадок
- Посмотрите на реальный production-код, с которым автор работал больше года, чтобы улучшить вашу насмотренность и понять, как выглядят проекты в реальной разработке
- Познакомитесь с паттерном Command и научитесь использовать его для более гибкой и расширяемой архитектуры
- Мотивация к изучению Docker и CI/CD
- Разворачиваем брокеров, базы данных и кэш через Docker
- Знакомство с Docker и написание Dockerfile
- Локальный разворот приложения через Docker
- Знакомство с Docker compose
- Аренда сервера и развертывание приложения на реальном сервере
- Подключение Nginx
- Подключение домена и SSL Сертификатов
- Настройка собственного CI/CD пайплайна
- Изучите Docker и Docker compose и развернете весь проект
- Арендуете собственный сервер
- Познакомите и внедрите Nginx, чтобы защитить проект от возможных атак и подключить надежное подключение https
- Развернете приложение на реальном сервере, чтобы добавить собственный работающий сайт в портфолио
- С нуля реализуете CI/CD для проекта, чтобы быстро и безошибочно вносить изменения в работающий проект
Зарегистрируйтесь
, чтобы посмотреть скрытый авторский контент.