Skip to content

MieleSantos/tutorial-api-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Construindo API's robustas utilizando Python

Tutorial 16 da Python Brasil 2021
Ministrante: Luizalabs (facilitador: Cassio Botaro)

Neste tutorial vamos aprender a construir API's utilizando Python e FastAPI, integrá-las a serviços externos e também a como torná-las robustas. Discutiremos a importância de uma boa documentação e testes.

Abordaremos conceitos como integração com serviços externos, integração contínua e testes automatizados. Analisaremos cenários onde precisaremos de uma melhor performance e algumas técnicas para alcançar este objetivo como chamadas a funções assíncronas.

Vamos tentar nos preparar para situações ruins que possam acontecer e garantir que nosso sistema será resiliente.

Tópicos abordados

  • Integração com serviços externos
  • Integração contínua
  • Testes automatizados
  • Invocação de processos assíncronos
  • Circuit breaker
  • Compartilhamento de memória

O que será desenvolvido?

Será desenvolvido um sistema com objetivo de obter informações a respeito de pedidos.

Os pedidos serão obtidos através de integração com o sistema de pedidos do Magalu.

Vamos fazer o enriquecimento desta informação antes de sua exibição e também iremos prover alguns dados estatísticos sobre o pedido.

Um pedido possui vários pacotes, cada um deles contendo itens.

Este sistema deve seguir as seguintes regras:

  • Deve apresentar uma interface que possa ser consumida tanto por um website, quanto por um aplicativo para dispositivos móveis;
  • Deve prover um endpoint que indique a saúde do sistema;
  • Dado um pedido, retornar os seus itens;
  • Os itens de um pedido devem conter um identificador (sku), uma descrição, uma imagem, uma referência e a quantidade;
  • Exibir um relatório com o total de métodos de pagamento utilizados nos últimos 30 pedidos;
  • Dado um pedido (vários itens), enriquecer a informação com as informações de gtin (global trade item number). Deve ser retornado também a marca, descrição e - identificação do produto;
  • Como será consumido por terceiros deve apresentar boa documentação;
  • O sistema deve estar preparado para receber novas funcionalidades, garantindo qualidade a cada entrega;
  • O sistema deve apresentar testes.

Ferramentas

Python
FastApi
Poetry

Para testa, basta roda o comando:

uvicorn --reload api_pedidos.api:app.

About

Tutorial chat 16 da Python Brasil 2021- Construindo API's robustas utilizando Python

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages