Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • W Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Gastrô
  • Wiki
  • Wiki
  • Arquitetura

Last edited by Nicholas Spolti Apr 13, 2025
Page history
This is an old version of this page. You can view the most recent version or browse the history.

Arquitetura

Home

Escopo e Cronograma

Processo

Design/Mockups

Configuração

Arquitetura

Infra

Código

BD

Arquitetura MVC (Model-View-Controller)

A arquitetura MVC (Model-View-Controller) é um padrão amplamente utilizado no desenvolvimento de software para organizar a estrutura de aplicações. Ela separa a aplicação em três componentes principais: Model, View e Controller, cada um com responsabilidades bem definidas. Abaixo, explicamos como cada componente funciona e como eles interagem entre si.


Componentes do MVC

1. Model

O Model é responsável por gerenciar os dados e a lógica de negócios da aplicação. Ele interage diretamente com o banco de dados para realizar operações como criação, leitura, atualização e exclusão de dados (CRUD). Além disso, o Model notifica o Controller sobre mudanças nos dados, permitindo que a interface do usuário seja atualizada.

  • Responsabilidades do Model:
    • Gerenciar os dados da aplicação.
    • Implementar as regras de negócio.
    • Interagir com o banco de dados.

2. View

A View é responsável pela interface com o usuário. Ela exibe as informações ao cliente (usuário final) e recebe as interações realizadas por ele, como cliques, preenchimento de formulários, etc. A View não contém lógica de negócios, apenas apresenta os dados fornecidos pelo Controller.

  • Responsabilidades da View:
    • Renderizar os dados fornecidos pelo Controller.
    • Exibir a interface gráfica para o usuário.
    • Capturar as interações do usuário e enviá-las ao Controller.

3. Controller

O Controller atua como intermediário entre o Model e a View. Ele recebe as requisições do cliente, processa essas requisições (se necessário, interagindo com o Model) e retorna uma resposta para a View. O Controller é responsável por coordenar o fluxo de dados entre os componentes.

  • Responsabilidades do Controller:
    • Receber as requisições do cliente.
    • Processar as requisições e aplicar as regras de negócio (se necessário).
    • Atualizar o Model e/ou a View com base nas interações do usuário.

Fluxo de Dados no MVC

  1. O Cliente (usuário) faz uma requisição ao servidor.
  2. O Controller recebe a requisição e decide como processá-la.
    • Se necessário, o Controller interage com o Model para buscar ou atualizar dados.
  3. O Model realiza as operações no banco de dados e retorna os dados processados ao Controller.
  4. O Controller envia os dados para a View, que renderiza a interface para o cliente.
  5. O Cliente recebe a resposta e interage novamente, reiniciando o ciclo.

Diagrama do MVC

O diagrama abaixo ilustra o fluxo de dados e a interação entre os componentes do MVC:

image

  • Client: Representa o usuário que faz requisições e recebe respostas.
  • Controller: Recebe as requisições do cliente, processa os dados e coordena as interações entre Model e View.
  • Model: Gerencia os dados e a lógica de negócios, interagindo com o banco de dados.
  • View: Exibe os dados e a interface gráfica para o cliente.

Vantagens do MVC

  • Separação de responsabilidades: Cada componente tem uma função específica, facilitando a manutenção e o entendimento do código.
  • Reutilização de código: Componentes como o Model podem ser reutilizados em diferentes partes da aplicação.
  • Facilidade de teste: A separação de responsabilidades permite testar cada componente de forma isolada.
  • Escalabilidade: A arquitetura facilita a adição de novas funcionalidades sem impactar significativamente os outros componentes.

Clone repository
  • Arquitetura
  • BD
  • BancoDeDados
  • Codigo
  • Design
    • Mockups
  • EAP
  • Escopo e Cronograma
  • Infraestrutura
  • Processo
  • Testes automatizados
  • banco de dados
  • configuracao
  • Home