ВИДЕОУРОК №6. Аутентификация
В первую очередь настроим среду для разработки, установим все зависимости. Также мы познакомимся с Flask, узнаем, как он работает и из каких компонентов состоит: представления, модели и контроллеры. Построим первое веб-приложение с использованием Jinja2 Templates: работа с циклами и условиями, наследование форм.
В больших проектах делятся frontend и backend части, чтобы они могли развиваться независимо друг от друга, поэтому мы познакомимся с архитектурным стилем построения веб-сервисов REST. Начнем работу над полноценным веб-приложением для контроля затрат, познакомимся с SQLAlchemy и свяжем приложение с SQLite3. Узнаем, что такое SwaggerUI и как можно автоматически генерировать документацию. Также рассмотрим альтернативы REST: gRPC и GraphQL.
Обсудим, зачем нужна валидация пользовательских данных на стороне сервера и что такое сериализация и десериализация данных. Улучшим структуру программы.
Целью данного урока будет использование SQLAlchemy, рассмотрение более сложных запросов. Обсудим, зачем нужны ORM и какие существуют подводные камни при работе с ORM.
На этом уроке поговорим о том, что такое миграции и зачем они используются. Также рассмотрим инструменты для миграций в Flask.
В этом уроке поговорим о том, что такое аутентификация и чем она отличается от авторизации. Обсудим методы аутентификации программы REST. Познакомимся с JWT.
В этом уроке поговорим о том, как правильно тестировать Flask приложение, какие тесты вообще бывают. Также научимся использовать Mock и настроим процесс CI для нашей программы.
В этом уроке мы поговорим о том, что такое Docker и как доставлять программы клиенту. Научимся писать Dockerfile и развернем наше приложение на Heroku.
В этом уроке обсудим, что такое потоки и как они могут ускорить вашу программу. Поговорим, что такое GIL и какие бывают примитивы синхронизации в Python.