Arquitetura do Sistema
Sumário
Descrição
Esta seção irá abordar a arquitetura selecionada para o Backend e Frontend, além dos dados relativos ao deploy.
Definições de Tecnologias
Frontend
- React JS
- Sass
- Babel
Backend
- Node.js
- Express
Banco de dados
- MySQL
- Adminer
- Sequelize
Arquitetura Geral da Aplicação
Arquitetura Geral da Aplicação
A Arquitetura escolhida para o projeto foi a MVC, sigla para Model, View e Controller. Essa popular arquitetura tem como característica sua simplicidade de aplicação bem como as vantagens de a usar como por exemplo a otimização de comunicação entre diferentes componentes.
Model: Esta camada irá receber chamadas do Controller, validar os dados recebidos e enviar respostas ao mesmo, seu papel é realizar o controle de como esses dados se comportarão a partir das regras de negócio que serão implementadas em código.
View: Essa camada é a parte visual, parte pela qual o usuário irá interagir. Através dessa interação surgirão requisições, estas passarão para o Controller, que posteriormente retornará a resposta dessa requisição disponibilizando a visualização da mesma para o usuário.
Controller: Essa camada é a única que interage com todas as outras camadas. Ela é responsável por receber eventos disparados pelo usuário (View) e resultados de requisições (Model) e também responsável por enviar requisições (Model) e dados para visualização (View). Pode ser chamada de camada maestro.
Deploy
Recipes API
TBD