Questão nº 39
Questão de Tecnologia da Informação · CESGRANRIO BASA 01/2024 (nº 39)
Na revisão de um programa feito por um programador novato, foi solicitado a ele que corrigisse o programa de forma a realizar certas funcionalidades de acordo com padrões de projeto estabelecidos na literatura.
Não conhecendo o termo padrão de projeto, o programador novato foi buscar orientações e descobriu que um padrão de projeto é um(a)
- Aconjunto de recomendações para formatação de código, como, por exemplo, o padrão PEP 8 para a formatação de código em Python.
- Bconjunto de regras para definir a interação entre serviços, definidas por APIs, como, por exemplo, o padrão REST para a arquitetura de sistemas distribuídos.
- Cestratégia correta para estruturar a solução de um problema recorrente no desenvolvimento de software, como, por exemplo, o padrão Factory para criar instâncias de diferentes classes baseadas em uma condição. (alternativa correta)
- Destratégia correta para estruturar a solução de um problema recorrente no desenvolvimento de software, como, por exemplo, o padrão God Object, no qual uma classe assume toda a responsabilidade do sistema, criando alto acoplamento e baixa coesão.
- Enorma internacional para especificação de qualidade de software, como, por exemplo, o padrão ISO 9001 para garantir a qualidade do processo de desenvolvimento.
Resposta comentada
Gabarito Alternativa C
Padrão de projeto é uma solução geral e reutilizável para um problema que aparece várias vezes no desenvolvimento de software. Não é regra de formatação, nem norma de qualidade, nem estilo de arquitetura de serviços — é um "molde" de código que já foi testado e resolve uma dor específica de design (como criar objetos, organizar classes, etc.).
- (A) Incorreta: PEP 8 é um guia de estilo de escrita (espaços, nomes, linhas), não uma solução para um problema de estrutura de código; padrão de projeto não trata de formatação.
- (B) Incorreta: REST é um estilo arquitetural para comunicação entre sistemas via HTTP; padrão de projeto atua no nível interno do código (classes e objetos), não na interação entre serviços.
- (C) Correta: É exatamente isso: padrão de projeto é uma estratégia comprovada para resolver um problema recorrente; o Factory é um exemplo clássico, pois encapsula a lógica de criação de objetos (decidir qual classe instanciar) sem acoplar o cliente às classes concretas.
- (D) Incorreta: A armadilha aqui é que a definição começa certa ("estratégia para problema recorrente"), mas o exemplo é anti-padrão: God Object é uma má prática (uma classe que faz tudo, gerando acoplamento e baixa coesão), não um padrão de projeto da literatura.
- (E) Incorreta: ISO 9001 é uma norma de gestão de qualidade de processos, não tem relação com estrutura de código; padrão de projeto não é certificação nem norma internacional.
Fonte: CESGRANRIO BASA 01/2024 Técnico Científico - Área de Formação: Tecnologia da Informação (Caderno Prova B). Reproduzida para fins de estudo.