Questões de Concurso Sobre orientação a objetos em engenharia de software

Foram encontradas 1.154 questões

Q3940734 Engenharia de Software

Padrões de Projeto (Design Patterns) são soluções reutilizáveis para problemas comuns no design de software.



O padrão “Singleton” pertence a qual categoria de padrões de projeto?

Alternativas
Q3939098 Engenharia de Software
Padrões de Projeto (Design Patterns) são soluções reutilizáveis para problemas recorrentes no design de software. O padrão de projeto Observer (também chamado de Event Handler e de Publish–Subscribe) é amplamente utilizado em sistemas de software orientados a objetos, permitindo que objetos (observadores) sejam notificados automaticamente quando o estado de outro objeto (sujeito) muda. Uma característica essencial desse padrão de projeto é que ele  
Alternativas
Q3939094 Engenharia de Software
Em análise e projeto orientado a objetos, o conceito de herança de classes torna possível utilizar uma instância de uma subclasse no lugar de uma instância da classe base, desde que 
Alternativas
Q3939093 Engenharia de Software
Uma Interface Gráfica de Usuário (GUI) é composta por diferentes tipos de objetos de interação, tais como botões, caixas de texto, formulários e janelas. Apesar de suas diferenças, esses objetos definem uma mesma operação, “desabilitar ()”, que torna o objeto inativo na GUI, independentemente do tipo do objeto. Qual princípio de análise e projeto orientado a objetos é aplicado para que diferentes tipos de objeto definam uma mesma operação que produz efeitos específicos para cada tipo de objeto? 
Alternativas
Q3937666 Engenharia de Software
Identifique abaixo as afirmativas verdadeiras ( V ) e falsas ( F ) sobre os princípios de design de software SOLID e as metodologias de desenvolvimento.

( ) O Princípio da Responsabilidade Única (SRP) afirma que uma classe deve ter apenas um motivo para mudar.
( ) O Princípio Aberto/Fechado (OCP) afirma que as entidades de software devem ser abertas para extensão, mas fechadas para modificação.
( ) TDD (Test-Driven Development) é uma abordagem que escreve testes APÓS o código de produção.
( ) BDD (Behavior-Driven Development) foca em descrever o comportamento esperado do sistema a partir da perspectiva do usuário.
( ) GRASP é um conjunto de padrões de design orientado a objetos.

Assinale a alternativa que indica a sequência correta, de cima para baixo.
Alternativas
Q3922600 Engenharia de Software
Durante a evolução de um sistema corporativo orientado a objetos, a equipe de desenvolvimento identificou dificuldades na substituição de componentes e na realização de testes unitários, devido ao forte acoplamento entre classes centrais e implementações específicas. Para mitigar esse problema, decidiu-se adotar práticas alinhadas aos princípios SOLID.
Nesse contexto, uma abordagem coerente com o Princípio da Inversão de Dependência (Dependency Inversion Principle – DIP) é:
Alternativas
Q3916984 Engenharia de Software
Uma equipe de projeto de TI está trabalhando com o desenvolvimento de aplicações e utiliza, para isso, padrões de projeto. A figura a seguir representa a estrutura arquitetural de padrão de projeto utilizado por essa equipe.


                                                            Imagem associada para resolução da questão
Fonte: Gamma, E; Helm, R.; Johnson, R. e Vlissides, J. (2000). “Padrões de Projeto: soluções reutilizáveis de software orientado a objetos”. 1. Ed, Bookman.


A utilização desse padrão é ideal para uma situação em que:
Alternativas
Q3885111 Engenharia de Software
A equipe de desenvolvimento precisa criar um mecanismo para garantir que o sistema de cache de documentos legislativos tenha apenas uma única instância ativa em toda a aplicação, de modo que todas as requisições acessem o mesmo recurso compartilhado, evitando inconsistência de dados.
O Padrão de Projeto da classificação GoF mais apropriado para resolver esse problema, restringindo a instanciação de uma classe a um único objeto, é o(a)
Alternativas
Q3882864 Engenharia de Software
Um Engenheiro da Computação atua como um consultor sênior em um projeto de lei que exige o desenvolvimento de um sistema de inteligência artificial para prever o impacto fiscal de novas emendas constitucionais. O projeto é de alto risco, alta visibilidade política e tem requisitos evolutivos.
Esse Engenheiro está revisando um módulo que viola o princípio de Responsabilidade Única (SRP) do SOLID. O módulo ManipuladorDeVotos é responsável por persistir o voto e por gerar o relatório estatístico do voto.
Assinale a afirmativa correta em relação ao efeito arquitetural primário da violação do SRP nesse cenário.
Alternativas
Q3881434 Engenharia de Software
Assumindo que a Assembleia Legislativa do Estado de Goiás irá iniciar um processo de modernização onde há a necessidade de atualizar sistemas administrativos e legislativos, adotar tecnologias mais seguras e eficientes e fortalecer a capacidade técnica interna para desenvolver e manter soluções digitais alinhadas às demandas de transparência, interoperabilidade e gestão pública. Com relação ao desenvolvimento de sistemas, assinale (V) para a afirmativa verdadeira e (F) para a falsa.

( ) A modularização de um sistema é importante apenas na fase de desenvolvimento.
( ) Sistemas desenvolvidos hoje são frequentemente adaptáveis às necessidades específicas de empresas, conectando-se com filiais, parceiros e fornecedores.
( ) A programação estruturada se concentra em dividir a lógica de programação em funções, enquanto a programação orientada a objetos foca na criação de módulos independentes somente.
( ) A abstração em programação orientada a objetos permite ignorar detalhes desnecessários e focar em funcionalidades essenciais, promovendo soluções mais eficientes.

As afirmativas são, respectivamente,
Alternativas
Q3866616 Engenharia de Software
Em um sistema corporativo desenvolvido em Java, decisões arquiteturais influenciam diretamente a manutenibilidade e a evolução do software. Aspectos relacionados ao funcionamento da JVM, à aplicação de padrões de projeto, aos princípios do SOLID, bem como à coesão, ao acoplamento e à modelagem UML, devem ser considerados. Diante desse cenário, assinale a alternativa correta: 
Alternativas
Q3850297 Engenharia de Software
Durante uma análise de código para um sistema bancário, o perito identificou um problema de projeto conhecido como “Fragile Base Class Problem”, típico em hierarquias de herança.
Esse problema geralmente ocorre quando
Alternativas
Q3835620 Engenharia de Software
No desenvolvimento de sistemas e arquitetura de software, o padrão de projeto "Observador" (Observer) é amplamente utilizado para gerenciar dependências entre objetos. Analise as afirmativas a seguir sobre Padrões de Projeto (Design Patterns) do Gamma et al. (GoF):

I.O padrão Observer define uma dependência um-para-muitos entre objetos, de modo que, quando um objeto muda de estado, todos os seus dependentes são notificados e atualizados automaticamente.
II.O padrão Singleton garante que uma classe tenha apenas uma instância e fornece um ponto de acesso global a ela, sendo recomendado para gerenciar recursos compartilhados como pools de conexão com banco de dados.
III.O padrão Estratégia (Strategy) permite definir uma família de algoritmos, encapsular cada um deles e torná-los intercambiáveis, permitindo que o algoritmo varie independentemente dos clientes que o utilizam.

Está correto o que se afirma em:
Alternativas
Q3986714 Engenharia de Software
Um desenvolvedor da Prefeitura Municipal de Joinville está trabalhando em um sistema de geração de relatórios. Ele precisa de uma solução que permita criar diferentes tipos de relatórios (PDF, HTML, Excel) utilizando o mesmo processo de construção, mas com representações finais distintas. Para isso, busca um padrão de projeto criacional que possibilite separar a construção de um objeto da sua representação final, permitindo que o mesmo processo possa gerar diferentes versões do produto. Qual padrão de projeto atende a essa necessidade?
Alternativas
Q3986314 Engenharia de Software
Um analista de tecnologia da informação do IFPB está desenvolvendo um sistema informatizado que será utilizado por diversos setores da instituição. Durante a implementação, ele identifica que há uma classe que deve garantir que apenas uma instância seja criada em toda a aplicação, fornecendo um ponto de acesso global a essa instância.
Considerando os padrões de projeto (Design Patterns), é correto afirmar que o padrão criacional utilizado nessa situação foi o 
Alternativas
Q3779528 Engenharia de Software

Um módulo de relatórios da Assembleia foi projetado de modo que, sempre que um novo formato de relatório é necessário, o código da classe GeradorDeRelatorio precisa ser modificado para incluir a nova lógica de exportação.


Assinale o princípio SOLID está sendo violado por esse design, e a técnica ideal de design seria ideal para corrigi-lo

Alternativas
Q3777173 Engenharia de Software
No projeto de gestão orçamentária, seguindo o Domain Driven Design (DDD), a entidade RequisicaoOrcamentaria contém uma coleção de itens detalhados (ItemOrcamento). Para garantir a integridade transacional e a consistência das regras de negócio, o acesso e a manipulação de qualquer ItemOrcamento só podem ocorrer através da entidade RequisicaoOrcamentaria.
Em termos de DDD, a entidade RequisicaoOrcamentaria é classificada como o
Alternativas
Q3777154 Engenharia de Software
Na fase inicial da Análise Orientada a Objetos (AOO) para desenvolver um sistema de gestão de Atos Administrativos, o Analista de Sistemas está lendo o documento de requisitos. Os requisitos descrevem que um Ato é criado, enviado para Assinatura Eletrônica pelo Diretor, e posteriormente é publicado no Diário Oficial.
Os seguintes termos destacados são os candidatos mais fortes a se tornarem as Classes principais no modelo do sistema: 
Alternativas
Q3777153 Engenharia de Software
Em um sistema de controle de tramitação de proposições, a classe Proposicao contém a lógica para manipular o atributo situacao. O acesso direto ao atributo é impedido (privado), e todas as modificações são feitas por métodos públicos como avancarSituacao() e reverterSituacao(), que contêm validações de regras de negócio.
A restrição de acesso direto aos dados (situacao) e a concentração da lógica de validação dentro da própria classe Proposicao são exemplos, respectivamente, de
Alternativas
Q3777151 Engenharia de Software
O Analista de Sistemas está revisando um código que trata de licitações. Existe uma classe base Licitacao com um método iniciar(). Uma subclasse LicitacaoPresencial sobrescreve o método iniciar() com sucesso. No entanto, outra subclasse, LicitacaoEletronica, sobrescreve o método iniciar() mas, em certas condições, lança uma exceção de Processo Inválido que não está presente na assinatura do método da classe base Licitacao.
O seguinte princípio SOLID está sendo violado pela classe LicitacaoEletronica, quebrando a expectativa de que um objeto da subclasse possa ser substituído por um objeto da superclasse sem alterar a corretude do programa: 
Alternativas
Respostas
21: C
22: B
23: A
24: B
25: B
26: C
27: A
28: D
29: C
30: A
31: A
32: B
33: B
34: E
35: C
36: C
37: E
38: C
39: E
40: C