... | ... | @@ -71,6 +71,23 @@ TBD |
|
|
|
|
|
TBD
|
|
|
|
|
|
### Arquitetura Básica do Frontend
|
|
|
A arquitetura selecionada inicialmente para o front-end foi o MVC. MVC significa Model-View-Controller, onde o foco principal é separar a interface do projeto da funcionalidade e dos dados que são usados na aplicação. O MVC torna a base de código limpa e organizada e consegue isso com três de seus componentes.
|
|
|
|
|
|
- Model: Comprometimentos do modelo da fonte de dados pode ser de qualquer banco de dados, API, JSON, etc. Em alguns casos, pode consistir em alguma lógica de negócios.
|
|
|
|
|
|
- View: View tem tudo a ver com a interface do usuário, ou seja, exibir dados e obter entradas do usuário.
|
|
|
|
|
|
- Controller: Contém a lógica de negócios, ou seja, controle de quais dados serão mostrados ao usuário, manipulação de entrada do usuário, etc.
|
|
|
|
|
|
<img src="https://tools.ages.pucrs.br/comunicacao-hsl/comunicacao-hsl-wiki/raw/master/resources/architecture/mvc_architecture.png">
|
|
|
<p> </p>
|
|
|
Após reuniões realizadas pelo arquiteto do projeto e os gerentes, chegamos à uma escolha de arquitetura única: um **"híbrido"** da arquitetura MVC, onde teríamos a Model-View-Controller comum neste padrão de arquitetura mas também um **Router**, responsável pelas rotas da aplicação. De certa forma podemos dizer que a arquitetura do projeto é algo maior que um MVC mas menor que uma arquitetura VIPER (View, Interactor, Presenter, Entity e Routing).
|
|
|
<p> </p>
|
|
|
<img src="https://tools.ages.pucrs.br/comunicacao-hsl/comunicacao-hsl-wiki/raw/master/resources/architecture/frontend_architectureMVCR.png">
|
|
|
Como pode se ver na imagem, o fluxo de informações começa na View, onde todas as informações são exibidas e todas interações do usuário são recebidas. A Router então é responsábel por exibir as novas telas, se houver necessidade. A Controller é encarregada de verificar os dados recebidos, e na Model é onde se recebe os pedidos da Controller para mandar ou receber dados do banco de dados.
|
|
|
|
|
|
|
|
|
### Diagramas de Componentes
|
|
|
|
|
|
TBD
|
... | ... | |