Python на практике
Python на практике
  • Видео 19
  • Просмотров 2 185

Видео

Урок 6 | FastAPI Аутентикация и Авторизация [часть 3] | Intermediate ⭐ | Python на практике
Просмотров 339 часов назад
В этом видео вы узнаете, как настроить авторизацию в FastAPI и обеспечить безопасный доступ к вашим API 00:00 Приветствие 00:19 Практика, решение 05:21 Тестирование
Урок 5 | FastAPI Чистая архитектура | Intermediate ⭐ | Python на практике
Просмотров 15216 часов назад
В этом уроке вы узнаете, как применять чистую архитектуру в разработке приложений на FastAPI. Мы разберем организацию кода, принципы разделения ответственности, а также внедрение зависимостей и слоёв в проекте. Это занятие предназначено для программистов среднего уровня, которые хотят углубить свои знания в структурировании Python-приложений для повышения их читаемости, масштабируемости и подде...
Урок 4 | FastAPI Аутентикация и Авторизация [часть 2] | Intermediate ⭐ | Python на практике
Просмотров 6121 час назад
В этом видео вы узнаете, как настроить аутентификацию в FastAPI. Мы рассмотрим ключевые концепции, такие как: - рефреш токена - сигнатура токена и пейлоад 00:00 Приветствие 00:14 Решение 06:00 Тестирование
Урок 3 | Аутентикация и Авторизация в FastAPI [часть 1] | Intermediate ⭐ | Python на практике
Просмотров 234День назад
В этом видео вы узнаете, как настроить аутентификацию и авторизацию в FastAPI. Мы рассмотрим ключевые концепции, такие как: Разница между аутентификацией и авторизацией Работа с JWT (JSON Web Tokens) для безопасности Создание пользовательских моделей и хэширование паролей Подписывайтесь на канал, чтобы не пропустить новые видео! 00:00 Приветствие и задание 00:33 Решение 17:44 Тестирование
Урок 2 | OOП в FastAPI [часть2] | Intermediate ⭐ | Python на практике
Просмотров 191День назад
Объектно ориентированное программирование, для среднего уровня знаний Python. 00:00 Приветствие 00:15 Решение 09:15 Тестирование 10:49 Задействованные практики 1. Инкапсуляция Пример: Атрибуты класса BaseUser (username, email, is_admin, permissions) и их инициализация через конструктор init скрывают детали реализации объекта пользователя. Доступ к информации предоставляется через метод get_info...
Урок 12 | Работа с асинхронностью и файлами XML в FastAPI [Часть 3] | Декаплинг компонентов
Просмотров 148День назад
Начинаем изучение Python и параллельно получаем знания о фреймворкаx и API, Google Cloud Platform XML файл: drive.google.com/file/d/1mpExrZNvgoNY_93PLk_7Wwnq2ieJPSyG/view?usp=sharing
Урок 11 | Работа на FastAPI с файлами на удаленном сервере [Часть 2] | Google Drive API
Просмотров 60День назад
Начинаем изучение Python и параллельно получаем знания о фреймворкаx и API, Google Cloud Platform, Google Drive
Урок 10 | Работа FastAPI с файлами на удаленном сервере [Часть 1] | GCP Cloud | Python на практике
Просмотров 7114 дней назад
Начинаем изучение Python и параллельно получаем знания о фреймворкаx и API, Google Cloud Platform Country CSV: cdn.wsform.com/wp-content/uploads/2020/06/industry.csv Больше СSV примеров: wsform.com/knowledgebase/sample-csv-files/
Урок 1 | OOП в FastAPI [часть1] | Intermediate ⭐ | Python на практике
Просмотров 58514 дней назад
Объектно ориентированное программирование, для среднего уровня знаний Python. - Классы, экземпляры классов - Инкапсуляция - Полиморфизм - Наследование 00:00 Приветствие 00:34 Условия задач 02:37 Решение 14:24 Тестирование решения 16:24 Финальное ревью
Урок 9 | Работа с файлами на базе FastAPI | Python на практике
Просмотров 19014 дней назад
Начинаем изучение Python и параллельно получаем знания о фреймворкаx и API Country CSV: cdn.wsform.com/wp-content/uploads/2020/06/industry.csv Больше СSV примеров: wsform.com/knowledgebase/sample-csv-files/
Урок 8 | Функции на основе FastAPI сервисов | Python на практике
Просмотров 7414 дней назад
Начинаем изучение Python и параллельно получаем знания о фреймворкаx и API
Урок 7 | Списки, Словари на базе FastAPI | Python на практике
Просмотров 2421 день назад
Начинаем изучение Python и параллельно получаем знания о фреймворкаx и API
Урок 6 | Циклы в FastAPI | Python на практике
Просмотров 3521 день назад
Начинаем изучение Python и параллельно получаем знания о фреймворкаx и API 00:00 Приветствие 00:07 Подготовка 01: 59 Задача 03:45 Тестирование решения 05:25 Решение
Урок 5 | FastAPI оператор остаток от деления, арифметика, условные операторы | Python на практике
Просмотров 1621 день назад
Начинаем изучение Python и параллельно получаем знания о фреймворкаx и API 00:00 Приветствие и задание 01:04 Тестирование 01:54 Решение
Урок 4 | Работа со строками в FastAPI | Python на практике
Просмотров 2721 день назад
Урок 4 | Работа со строками в FastAPI | Python на практике
Урок 3 | Fast API: условные конструкции в Python: if-else и match-case | Python на практике
Просмотров 2921 день назад
Урок 3 | Fast API: условные конструкции в Python: if-else и match-case | Python на практике
Урок 2 | На базе FastAPI работаем со строками и арифметическими операциями | Python на практике
Просмотров 6821 день назад
Урок 2 | На базе FastAPI работаем со строками и арифметическими операциями | Python на практике
Урок 1 | Настройка рабочего окружения | На базе FastAPI | Python на практике
Просмотров 18721 день назад
Урок 1 | Настройка рабочего окружения | На базе FastAPI | Python на практике

Комментарии

  • @ДмитрийМорозов-ч5ф

    Привет. Всё отлично, но можно как то увеличить шрифт, просто сделай чтоб люди которые смотрят видео не присматривались к каждому символу. А так всё норм

    • @python-practice
      @python-practice 3 дня назад

      Привет, спасибо за отзыв! В следующих видео я увеличил шрифт, надеюсь, теперь его будет достаточно. Если нужно больше дайте знать, пожалуйста

  • @andynaz7044
    @andynaz7044 3 дня назад

    great, thanks

  • @НикитаРябов-щ7к
    @НикитаРябов-щ7к 4 дня назад

    имхо, вынес бы эксепшены в отдельный файл, легче расширять + view не захламляем)

    • @python-practice
      @python-practice 3 дня назад

      Привет! Да, согласен, вынести эксепшены в отдельный файл - хорошая идея, это действительно упрощает расширение и улучшает структуру. В видео, к сожалению, не всегда удаётся охватить всё идеально, как в коде, например, при создании Merge Request. Снятие видео - процесс трудозатратный, поэтому какие-то моменты я оставляю на усмотрение зрителей. Скорее всего, этот рефакторинг я опишу в одном из следующих видео Очень радует, что вы действительно интересуетесь и замечаете такие моменты - спасибо!

    • @НикитаРябов-щ7к
      @НикитаРябов-щ7к 3 дня назад

      @ Я без претензий))) Просто заметил) У тебя хороший контент, продолжай! Я сам на Джанго работаю, но последнее время в фастАПИ потянуло))) Поэтому, желаю удачи и буду смотреть)))

  • @nto-i7h
    @nto-i7h 4 дня назад

    Спасибо. Ждал продолжение.

    • @python-practice
      @python-practice 4 дня назад

      Спасибо за ваш интерес! 👍

  • @nto-i7h
    @nto-i7h 7 дней назад

    Спасибо, за такой кайфовый и нужный материал. Успехов твоему каналу

    • @python-practice
      @python-practice 7 дней назад

      Спасибо большое за поддержку! Рад, что материал полезнен.

  • @nto-i7h
    @nto-i7h 8 дней назад

    Сразу лайк и коммент в поддержку, а позже уже буду смотреть. Спасибо!

  • @nto-i7h
    @nto-i7h 10 дней назад

    Спасибо за качественную и подробную подачу.

    • @python-practice
      @python-practice 10 дней назад

      Спасибо вам! Очень приятно, что вы цените мой подход 😊

  • @nto-i7h
    @nto-i7h 10 дней назад

    В поддержку этому замечательному каналу. Спасибо

    • @python-practice
      @python-practice 10 дней назад

      Спасибо огромное за вашу поддержку! Это очень мотивирует продолжать делиться полезным контентом 🙌

  • @DEVJCactus
    @DEVJCactus 10 дней назад

    Вроде понятно все) Пойду пробовать)))) Только одно глаза режет, почему у тебя контроллер это представление? Репозиторий этр менеджер?

    • @python-practice
      @python-practice 10 дней назад

      Привет, спасибо за комментарий и хороший вопрос! На данном этапе я стараюсь больше посвятить внимание Python, а вопросы архитектуры и инфраструктуры буду раскрывать в следующих уроках. Итак, относительно вопросов: Почему репозиторий - это менеджер? UserManager в нашем случае управляет данными пользователей в оперативной памяти и не взаимодействует с базой данных (условно выполняет роль базы данных). Это не полноценный репозиторий в терминах DDD, а скорее упрощённая абстракция для демонстрации идеи. В уроке, который я запланировал под названием "Паттерн Репозиторий в FastAPI", я заменю UserManager на SQLAlchemy (с использованием PostgreSQL) и добавлю полноценный слой репозитория. Урок также будет посвящён тому, как репозиторий помогает разделить бизнес-логику и взаимодействие с БД. В более сложной архитектуре я использую такую цепочку: БД request -> endpoint -> dto -> service -> dto -> repository -> orm -> db Для других стораджей: request -> endpoint -> dto -> service -> dto -> repository -> library -> storage С кастомной реализацией: request -> endpoint -> dto -> service -> dto -> repository -> adapter -> storage Для простых случаев: request -> endpoint -> service -> orm -> db Через несколько уроков я планирую ввести такие элементы, как: Service (сервисы для бизнес-логики) DTO (объекты для передачи данных) Repository (слой для работы с данными) ORM (например, SQLAlchemy для взаимодействия с БД). Адаптер - собственный слой, который адаптирует сторонний API (библиотеку) к интерфейсу приложения Почему контроллер - это представление? Например, /login - это эндпоинт (контроллер в FastAPI, а не чистый вью в классическом смысле), который обрабатывает HTTP-запросы. В моём примере он вызывает UserService для проверки данных пользователя и создания токенов. Сам эндпоинт не содержит бизнес-логики - он выполняет роль "посредника" между запросом и сервисами. Если тебе интересно углубиться в эту тему, рекомендую статью: medium.com/@jeremyalvax/fastapi-backend-architecture-model-controller-service-44e920567699

    • @DEVJCactus
      @DEVJCactus 10 дней назад

      @@python-practice кстати, вот ты упомянул DDD. И мне сразу же вспомнилась книжка про TDD Кента Бека. И собственно говоря, предлагаю сделать серию видео роликов по разработке с применением методики TDD.

    • @python-practice
      @python-practice 10 дней назад

      Спасибо за предложение! окей, сделаем чуть позже

    • @python-practice
      @python-practice 10 дней назад

      Кстати, я посмотрел на код, и да, действительно, в эндпоинте add_user я нарушаю принцип разделения ответственности, вызывая менеджер (user_manager). В следующем видео я сделаю рефакторинг и перенесу бизнес-логику в сервис (UserService), чтобы исправить эту проблему. Получилось это изза того что эндпоинт был создан раньше сервиса.

  • @andynaz7044
    @andynaz7044 11 дней назад

    класс!

    • @python-practice
      @python-practice 11 дней назад

      Спасибо! Рад, что понравилось.

  • @8055iam
    @8055iam 11 дней назад

    Сейчас это единственный правильный способ изучения питона на ютубе для новичков

    • @python-practice
      @python-practice 11 дней назад

      Спасибо! Рад, что формат вам нравится. Если есть пожелания или вопросы, пишите!

  • @DEVJCactus
    @DEVJCactus 13 дней назад

    Расскажи ещё почему стоит делать абстрактные классы (интерфейсы) для репозитория и слоя сервисов

    • @python-practice
      @python-practice 13 дней назад

      Я бы точно эту тему на intermediate плайлисте бы сделал, хотя ее тут было бы удобно рассмотреть. Подумаю, спасибо.

    • @DEVJCactus
      @DEVJCactus 13 дней назад

      @python-practice ещё просьба небольшая. Сделай пж видео по jwt. Хочу на выходных разобраться как делать авторизацию с возможностью отзыва токена, его протуханием и обновлением

    • @DEVJCactus
      @DEVJCactus 13 дней назад

      @@python-practice и если честно на spring boot все как то полегче

    • @python-practice
      @python-practice 13 дней назад

      @@DEVJCactus окей, сделаю

  • @DEVJCactus
    @DEVJCactus 14 дней назад

    Кстати, можно ещё сделать видео про обработку файлов xlsx и xml. Например заполнение списка товаров из файла. Только для длительной обработки использовать Celery

    • @python-practice
      @python-practice 14 дней назад

      XML в процессе, XLSX посмотрим может позже сделаю. На Celery надо отдельный урок сначала чтоб в целом показать как он работает

  • @DEVJCactus
    @DEVJCactus 14 дней назад

    У тебя есть ещё где-нибудь канал? Ютуб лагает ужасно) Сделай телеграмм чат)

    • @python-practice
      @python-practice 14 дней назад

      сделаю чуть позже

    • @ilungamasan
      @ilungamasan 14 дней назад

      "Ютуб лагает ужасно)" - не жлобись, купи себе VPN. Стоит копейки

    • @DEVJCactus
      @DEVJCactus 14 дней назад

      @@ilungamasan посоветуй какой?

    • @ilungamasan
      @ilungamasan 14 дней назад

      @@DEVJCactus у меня, например, уже полтора года browsec - вполне меня устраивает, поддержка отзывчивая (есть русскоязычный канал в Телеграм). Когда идут блокировки (как на днях было), за 2-3 дня восстанавливает связь. Дешевле покупать годовую подписку, в момент скидок, которые переодически у них бывают.

  • @DEVJCactus
    @DEVJCactus 14 дней назад

    Шрифт так и не увеличил

    • @python-practice
      @python-practice 14 дней назад

      увеличил с 13 до 15, попробую 16 тогда в следующий раз (хочу оставить обзорность кода)

    • @DEVJCactus
      @DEVJCactus 14 дней назад

      @python-practice минимум 24)

  • @DEVJCactus
    @DEVJCactus 14 дней назад

    Привет! Расскажи пожалуйста еще про dependensy_injector. Еще хотелось бы подробное видео по работе с pydentic (как можно больше функций), также модно еще захватить тему Optional.

  • @turalaliyev3977
    @turalaliyev3977 15 дней назад

    дальше будет ?

    • @python-practice
      @python-practice 15 дней назад

      обязательно, работаю над продолжением

    • @turalaliyev3977
      @turalaliyev3977 14 дней назад

      @@python-practice Спасибо !

  • @DEVJCactus
    @DEVJCactus 16 дней назад

    Предлагаю развить эту тему и сделать загрузку на отдельный сервер-хранилище.

    • @python-practice
      @python-practice 15 дней назад

      Спасибо за предложение, сделаю следующий урок об этом.

    • @DEVJCactus
      @DEVJCactus 15 дней назад

      @@python-practice спасибо. Видео действительно интересные. Работаю программистом год и в основном приходится работать с файлами XML, CSV. Поэтому предлагаю ещё разобрать работу с XML в двух вариантах - Dom и потоковый метод.

    • @python-practice
      @python-practice 15 дней назад

      Хорошо, разберем

  • @DEVJCactus
    @DEVJCactus 16 дней назад

    Код не видно. Сделай шрифт крупнее

  • @andynaz7044
    @andynaz7044 16 дней назад

    Прекрасно! я даже подпишусь, чтоб следить за курсом )

  • @andynaz7044
    @andynaz7044 16 дней назад

    оригинальный подход к обучению! продолжайте, пожалуйста )

  • @HaniOmran-kd7xf
    @HaniOmran-kd7xf 16 дней назад

    Очень красивый