#Diagrama de Sistema
O diagrama acima explica como funciona o fluxo básico de informações entre nosso front-end, que utiliza Angular, um framework Javascript para criação de interfaces de usuário web, e nosso back-end, que utiliza FastAPI, um framework Python para criação de aplicações server-side que se comunicam com bancos de dados (PostgreSQL, no nosso caso) e expõe esses dados através de REST APIs. Eis o fluxo:
O usuário interage com a aplicação front-end Angular. A aplicação Angular envia requisições HTTP (GET, POST, PUT, DELETE, etc.) para o back-end FastAPI. O back-end FastAPI processa essas requisições e, quando necessário, envia consultas SQL para o banco de dados PostgreSQL. O banco de dados PostgreSQL executa as consultas e retorna os resultados para o back-end FastAPI. O back-end FastAPI processa os resultados do banco de dados e envia respostas no formato JSON de volta para o front-end Angular. O front-end Angular atualiza sua interface do usuário com base nos dados recebidos, refletindo as mudanças para o usuário.
Esta arquitetura permite uma separação clara de responsabilidades, o que é um padrão de arquitetura comum e amplamente utilizado na indústria. O Angular lida com a apresentação e interação do usuário, o FastAPI gerencia a lógica de negócios e processamento de dados, e o PostgreSQL realiza a persistência dos dados.