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

Arquitetura

Home

Escopo e Cronograma

Processo

Design/Mockups

Configuração

Arquitetura

Infra

Código

BD

  • Arquitetura MVC (Model-View-Controller)
    • Componentes do MVC
      • 1. Model
      • 2. View
      • 3. Controller
    • Fluxo de Dados no MVC
    • Diagrama do MVC
    • Vantagens do MVC

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