Questão de Arquitetura de Software — MVC (Model-view-controller) — IV - UFG 2024
Arquitetura de Software›MVC (Model-view-controller)
Código
qg121434
Banca
IV - UFG
Órgão
TJ-AC
Ano
2024
Nível
Superior
Cargo
CS-UFG - - Analista Judiciário - Analista de Negócios de TI
O padrão de arquitetura Modelo-Visão-Controlador (MVC) é amplamente utilizado no desenvolvimento de aplicações web para separar a lógica de negócios da interface do usuário, facilitando a manutenção e a escalabilidade das aplicações.Em uma aplicação PHP, que utiliza o padrão MVC, as rotas são geralmente definidas:
Aatravés de funções anônimas no arquivo de configuração do banco de dados.
Bcomo métodos dentro dos modelos.
Cem um arquivo ou conjunto de arquivos específicos para rotas, mapeando URLs a controladores e as ações.
Ddentro dos arquivos de visão, utilizando tags especiais de template.
Revelar gabarito e comentário▾
GabaritoC — em um arquivo ou conjunto de arquivos específicos para rotas, mapeando URLs a controladores e as ações.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Rotas no MVC
Gabarito: letra C. Em uma aplicação PHP que segue o padrão MVC, as rotas são definidas em um arquivo específico de roteamento (ou conjunto deles), mapeando URLs para controladores e ações correspondentes. Essa separação é essencial para manter a organização e a clareza do fluxo de requisições.
Rotas no MVC
1Onde definir
Arquivo(s) específico(s) de roteamento
Mapeia URL → Controlador + Ação
2Onde NÃO definir
Model (lógica de dados)
View (apresentação)
Config. de BD (conexão/credenciais)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Colocar funções anônimas no arquivo de configuração do banco de dados não faz sentido: a configuração do BD trata de conexão e credenciais, não de lógica de roteamento. No MVC, rotas não têm relação com o modelo de dados nesse nível.
Alternativa B — ❌ Incorreta
Os modelos (Models) são responsáveis pela lógica de negócios e manipulação dos dados, não pelo roteamento de URLs. Definir rotas dentro de modelos violaria a separação de responsabilidades proposta pelo MVC.
Alternativa C — ✅ Correta ⟵ GABARITO
A prática padrão em frameworks MVC (como Laravel, Symfony, etc.) é concentrar as definições de rota em um ou mais arquivos dedicados (ex.: routes/web.php), que associam cada URL a um controlador e a uma ação específica. Isso facilita a manutenção e o entendimento do fluxo da aplicação.
Alternativa D — ❌ Incorreta
As visões (Views) devem conter apenas a lógica de apresentação (HTML, CSS, etc.). Inserir definições de rota nas visões misturaria responsabilidades, dificultando a manutenção. As tags de template são para exibição de dados, não para roteamento.
Conclusão: A única alternativa que descreve corretamente onde as rotas são definidas no padrão MVC é a letra C.