Questões de Concurso
Comentadas sobre mvc (model-view-controller) em arquitetura de software
Foram encontradas 275 questões
O IFCE está desenvolvendo um novo portal acadêmico utilizando tecnologias web modernas. Durante a implementação do frontend, a equipe identificou que diferentes componentes da interface precisam ser reutilizados em múltiplas páginas, mantendo separação entre estrutura, estilo e comportamento. O analista de tecnologia da informação propôs a adoção de um padrão arquitetural que organiza a aplicação em camadas distintas, promovendo separação de responsabilidades entre dados, interface e controle de eventos.
Assinale a alternativa que apresenta o padrão de frontend mais adequado ao cenário descrito.
Por meio de conceitos como Inversão de Controle (IoC) e Injeção de Dependências (DI), o Spring promove o baixo acoplamento entre componentes, enquanto o Spring Boot simplifica a configuração e a inicialização de projetos por meio de convenções e autoconfiguração.
Considere o seguinte trecho de código utilizando Spring Boot:
@RestController @RequestMapping("/produtos") public class ProdutoController {
@Autowired private ProdutoService produtoService;
@GetMapping("/{id}") public ResponseEntity<Produto> buscarPorId(@PathVariable Long id) { Produto produto = produtoService.buscarPorId(id); return ResponseEntity.ok(produto); }
@PostMapping public ResponseEntity<Produto> salvar(@RequestBody Produto produto) { Produto salvo = produtoService.salvar(produto); return ResponseEntity.status(HttpStatus.CREATED).body(salvo); } }
Sobre o código apresentado, considerando os conceitos do Spring Framework e o comportamento padrão do Spring Boot, assinale a afirmativa correta.
Como consequência, regras semelhantes começaram a ser repetidas em diferentes controladores, e mudanças em uma mesma política funcional passaram a exigir alterações em vários pontos do sistema. Em uma revisão arquitetural, decidiu-se promover uma refatoração para reduzir esse problema mantendo a separação de responsabilidades e favorecendo a reusabilidade.
Nesse contexto, de acordo com o modelo MVC, assinale a opção que apresenta a medida mais adequada.
No contexto do padrão arquitetural MVC (Model-View-Controller), analise as assertivas abaixo e julgue-as em Verdadeiras (V) ou Falsas (F):
( ) O Model encapsula os dados da aplicação e pode incluir regras de negócio associadas a esses dados.
( ) A View é responsável por controlar o fluxo da aplicação e tratar as entradas do usuário.
( ) O Controller é responsável pela apresentação dos dados ao usuário por meio da interface.
( ) O padrão MVC organiza o sistema em componentes com responsabilidades distintas, favorecendo manutenção e evolução.
Qual alternativa preenche, CORRETAMENTE, de cima para baixo, os parênteses acima?
I Model é responsável por representar os dados da aplicação e implementar as regras de negócio associadas.
II View recebe as entradas do usuário e coordena a interação entre os componentes do sistema.
III Controller tem como função principal apresentar as informações ao usuário final, refletindo o estado do model.
Assinale a opção correta.
Na arquitetura de aplicações Web construídas com o framework Grails, Controllers na camada Web são responsáveis, entre outras funções, por
A arquitetura de software define a estrutura e as interações entre os componentes de um sistema, impactando diretamente atributos como escalabilidade e manutenibilidade. Analise as afirmativas a seguir:
I. O padrão Model-View-Controller (MVC) separa a aplicação em três camadas lógicas: dados e regras de negócio, interface com o usuário e coordenação do fluxo de controle.
II. A arquitetura de microsserviços propõe a divisão do sistema em serviços autônomos e independentes, que se comunicam através de protocolos leves e descentralizados.
III. Em sistemas Service-Oriented Architecture (SOA), os serviços devem ser construídos com alto acoplamento para assegurar a sincronização de dados entre os componentes.
Está correto o que se afirma em:
Uma aplicação web de serviços ao cidadão foi construída em MVC. Em um determinado momento, um Técnico de TI começou a inserir validações e regras de cálculo na camada de apresentação para tornar a aplicação eficiente. Com base no enunciado, analise as sentenças a seguir:
I- Colocar regras de negócio na camada View tende a reduzir o acoplamento e simplificar a manutenção e testes.
PORQUE
II- A camada View é voltada à apresentação do sistema, de modo que inserir lógica de negócio aumenta a coesão e auxilia a testabilidade.
Analisadas as sentenças, assinale CORRETAMENTE:
Com base na comparação entre os padrões MVC e MTV, é correto afirmar que:
Esses três componentes lógicos são denominados, respectivamente:
Assinale a opção que indica, no MVC, o componente que é responsável por receber as requisições do usuário, processar a entrada, determinar a lógica de negócio que deve ser executada, interagindo com o Model e, por fim, selecionar a View que deve ser apresentada ao usuário.
Quanto ao MVC (Model‑View‑Controller), ao DDD (Domain‑Driven Design) e aos conceitos de Containers e Docker, julgue o item a seguir.
No padrão MVC, o componente Model é responsável pela interação com a camada de visualização (View), fornecendo diretamente os dados a serem exibidos ao usuário.
( ) Visão - são as classes responsáveis pela apresentação da interface gráfica do sistema, incluindo janelas, botões, menus, barras de rolagem. A interface gráfica é formada por objetos de visão e contêineres.
( ) Conteiner - são as classes que tratam e interpretam eventos gerados por dispositivos de entrada, como mouse e teclado. Como resultado de tais eventos, contêineres podem solicitar uma alteração no estado do Modelo ou da Visão. Suponha, por exemplo, uma Calculadora. Quando o usuário clica em um botão +, uma classe Controladora deve capturar esse evento e chamar um método do Modelo.
( ) Modelo - são as classes que armazenam os dados manipulados pela aplicação e que têm a ver com o domínio do sistema em construção. Assim, classes de Modelo não têm qualquer conhecimento ou dependência para classes de Visão e Contêineres. Além de dados, classes de Modelo podem conter métodos que alteram o estado dos objetos de domínio.
As afirmativas são, respectivamente,