Открыто

Практический курс по backend разработке (2024) [Тариф Только курс] [Артем Шумейко] [Повтор]

Тема в разделе "Курсы по программированию", создана пользователем Топикстартер, 17 янв 2025.

Цена: 64990р.-92%
Взнос: 4774р.

Основной список: 16 участников

Резервный список: 1 участников

  1. 17 янв 2025
    #1
    Топикстартер
    Топикстартер ЧКЧлен клуба

    Складчина: Практический курс по backend разработке (2024) [Тариф Только курс] [Артем Шумейко] [Повтор]

    2025-01-17_16-49-05.png

    Курс для тех, кто:
    • Знает базу программирования на Python (переменные, классы) и хочет на практике освоить необходимый стек для получения первого оффера
    • Хочет перейти с другого Python-фреймворка на FastAPI, научиться работать с экосистемой сервисов и структурировать знания в backend разработке
    Программа курса:
    • План курса и знакомство с автором
    • Введение в асинхронность. Почему ее везде используют.
    • Освоение FastAPI и основ Backend разработки.
    • Подключаем базу данных к проекту, изучаем ORM и SQL запросы.
    • Авторизация и аутентификация.
    • Продвинутая работа с базой данных и SQL.
    • Обзор кода реальных production проектов на FastAPI и Flask.
    • Инструменты Production разработки: Кеширование (Redis) и фоновые задачи (Celery).
    • Тестирование кода как в компаниях.
    • Доведение проекта до production-ready состояния.
    • Развертывание проекта на реальный сервер и настройка CI/CD.
    0. План курса и знакомство с автором
    • Особенности курса
    • Об авторе: стек, опыт и зарплата
    • Программа и план курса
    • Типичные проблемы начинающих разработчиков — Как я помогу вам побороться с ними
    Результаты модуля:
    — Познакомитесь с автором курса и узнаете его подход к обучению
    — Определитесь, подходит ли вам подача материала, чтобы учеба была комфортной и эффективной
    — Поставите свои цели на курс, чтобы четко понимать, чего хотите достичь и как это сделать

    1. Введение в асинхронность. Почему ее везде используют
    • Асинхронность: Теоретический блок
    • Асинхронность: Практический блок
    Результаты модуля:
    — Поймете, как работает асинхронность в веб-приложениях, чтобы обрабатывать множество запросов одновременно
    — Научитесь писать асинхронный код через async/await, чтобы в разы ускорить работу вашего приложения

    2. Освоение FastAPI и основ Backend разработки
    • Что такое FastAPI. Спрос на рынке труда и мотивация к изучению
    • Установка, запуск, написание первых API ручек
    • Разбор всех HTTP методов и первый роутер
    • Валидация данных с Pydantic
    Результаты модуля:
    — Напишете и запустите приложение на FastAPI, современном фреймворке для создания API
    — Научитесь писать ручки для CRUD операций, чтобы эффективно управлять данными в приложении
    — Освоите валидацию данных с помощью Pydantic, чтобы гарантировать корректность входных данных
    — Реализуете пагинацию через механизм зависимостей в FastAPI, чтобы удобно отображать большие объемы данных

    3. Подключаем базу данных к проекту, изучаем ORM и SQL запросы
    • Зачем нужны базы данных. Спрос на рынке труда и мотивация к изучению
    • Модели данных и миграции с Alembic
    • Работа с базой данных через SQLAlchemy ORM
    • Паттерн Репозиторий: изучение и внедрение
    • Паттерн DataMapper: изучение и внедрение
    Результаты модуля:
    — Поймете, зачем нужны миграции и ORM, и как они упрощают работу с базами данных
    — Подключите SQLAlchemy — самую популярную ORM на Python, чтобы легко взаимодействовать с базами данных
    — Научитесь писать и запускать миграции, чтобы без проблем обновлять структуру данных и поддерживать базу данных в актуальном состоянии
    — Реализуете паттерны Repository и Data Mapper, чтобы сделать код более чистым и поддерживаемым

    4. Авторизация и аутентификация
    • Мотивация к изучению авторизации и аутентификации
    • Регистрация пользователей
    • Знакомство и использование JWT токена
    • Защищенные API ручки, аутентификация и авторизация через cookie
    Результаты модуля:
    — Поймете, как устроена авторизация в современных приложениях, чтобы обеспечить безопасность пользователей
    — Познакомитесь с хэшированием паролей и JWT токенами для безопасного хранения и передачи данных
    — Реализуете аутентификацию с помощью JWT токенов, чтобы создать надежную систему входа для вашего приложения

    5. Продвинутая работа с базой данных и SQL

    • Расширенные возможности работы с SQL-запросами
    • Перенос сырых запросов в SQLAlchemy
    • Реализация M2M связей в базе данных и приложении
    Результаты модуля:
    — Научитесь писать SQL-запросы с применением CTE, подзапросов, JOIN'ов и группировок для эффективной работы с данными
    — Освоите внедрение many-to-many (M2M) связи в базе данных, чтобы организовать сложные отношения между таблицами
    — Реализуете сложную бизнес-логику по бронированию отелей в вашем проекте
    — Напишете собственный асинхронный контекстный менеджер, чтобы управлять ресурсами и повысить производительность приложения

    6. Обзор кода реальных production проектов на FastAPI и Flask
    • Код-ревью других FastAPI проектов
    • Изучение частых ошибок при написании проектов на FastAPI
    • Паттерн Репозиторий
    • Разбор обработки исключений в других проектах
    • Разбор работы с базой данных в других проектах
    • Разбор преимуществ и недостатков архитектуры, реализованной в разных проектах варианты улучшения этих подходов
    Результаты модуля:
    — Узнаете, как другие разработчики реализуют код, чтобы расширить свои знания и подходы к программированию
    — Изучите множество фишек написания проектов на FastAPI, чтобы использовать лучшие практики и улучшить качество вашего кода
    — Поймете принципы построения архитектуры приложений на FastAPI, чтобы создавать масштабируемые и поддерживаемые решения
    — Разовьете насмотренность благодаря разнообразию изученных проектов, что поможет легче ориентироваться в коде и адаптироваться к реальным задачам разработчика

    7. Инструменты Production разработки: Кеширование (Redis) и фоновые задачи (Celery)
    • Мотивация к изучению Redis и кэширования
    • Написание собственного класса для кэширования
    • Использование плагина для кэширования API
    • Фоновые отложенные задачи с Celery и Celery Beat
    • Работа с файлами в FastAPI
    • Фоновые задачи в FastAPI
    Результаты модуля:
    — Научитесь кэшировать данные через Redis, чтобы ускорить работу API и снизить нагрузку на базу данных
    — Внедрите плагин для кэширования ручек в FastAPI, чтобы легко и эффективно добавить кэширование в проект
    — Подключите Celery - инструмент для асинхронной обработки задач, чтобы управлять долгими процессами в фоновом режиме
    — Реализуете фоновые задачи, чтобы не блокировать работу приложения и отправлять запросы на выполнение длительных задач в фоновом режиме
    — Научитесь работать с файлами в FastAPI: принимать и обрабатывать файлы от пользователей для расширения функционала вашего приложения

    8. Тестирование кода как в компаниях
    • Написание unit-тестов
    • Написание интеграционных тестов
    • Первые фикстуры и знакомство с моками
    • Тестирование API
    Результаты модуля:
    — Покроете весь код тестами через pytest, самой популярной библиотеки для тестирования кода на Python
    — Научитесь писать unit-тесты, интеграционные тесты и API тесты, чтобы обнаруживать ошибки в коде до того, как их увидят реальные пользователи
    — Освоите написание фикстур и моков, чтобы тестировать отдельные части проекта, имитируя реальную нагрузку со стороны других сервисов
    — Узнаете, как параметризировать тесты, чтобы учесть краевые случаи и сделать тесты более лаконичными и эффективными

    9. Доведение проекта до production-ready состояния
    • Линтеры и форматтеры
    • Статические типизаторы
    • Обработка исключений в больших приложениях
    • Логирование
    • Новый слой в приложении — слой сервисов
    • Обзор реального production кода
    • Паттерн Command
    Результаты модуля:
    — Узнаете, что такое линтер, форматтер и статический типизатор, и внедрите их в ваш проект, чтобы проверить качество кода до его отправки на сервер
    — Поймете, как выстроить слоистую архитектуру, и реализуете ее в вашем проекте для лучшей структуры и масштабируемости
    — Внедрите логирование, чтобы легче выявлять возможные ошибки и анализировать работу кода
    — Добавите обработку ошибок во всех слоях приложения, чтобы пользователь получал понятные сообщения о причинах неполадок
    — Посмотрите на реальный production-код, с которым автор работал больше года, чтобы улучшить вашу насмотренность и понять, как выглядят проекты в реальной разработке
    — Познакомитесь с паттерном Command и научитесь использовать его для более гибкой и расширяемой архитектуры

    10. Развертывание проекта на реальный сервер и настройка CI/CD
    • Мотивация к изучению Docker и CI/CD
    • Разворачиваем брокеров, базы данных и кэш через Docker
    • Знакомство с Docker и написание Dockerfile
    • Локальный разворот приложения через Docker
    • Знакомство с Docker compose
    • Аренда сервера и развертывание приложения на реальном сервере
    • Подключение Nginx
    • Подключение домена и SSL Сертификатов
    • Настройка собственного CI/CD пайплайна
    Результаты модуля:
    — Изучите Docker и Docker compose и развернете весь проект
    — Арендуете собственный сервер
    — Познакомите и внедрите Nginx, чтобы защитить проект от возможных атак и подключить надежное подключение https
    — Развернете приложение на реальном сервере, чтобы добавить собственный работающий сайт в портфолио
    — С нуля реализуете CI/CD для проекта, чтобы быстро и безошибочно вносить изменения в работающий проект

    Тариф Только курс
    - Доступ ко всем материалам курса (видео + конспекты) на 9 мес
    - Практические задания
    - Проверка заданий по code review и развертыванию проекта куратором

    Цена 64990 руб.
    Скрытая ссылка

    Повтор складчины
    https://v21.skladchik.org/threads/kurs-po-backend-razrabotke-na-fastapi-2023-artem-shumejko.403162/
     
    Последнее редактирование модератором: 20 янв 2025
    1 человеку нравится это.
  2. Последние события

    1. Razdolbait
      Razdolbait участвует.
      5 фев 2025 в 15:45
    2. Meff86
      Meff86 участвует.
      4 фев 2025 в 13:53
    3. vladik-oradge
      vladik-oradge участвует.
      3 фев 2025 в 22:37
    4. naz25naz
      naz25naz участвует.
      1 фев 2025 в 20:57