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

Foram encontradas 1.154 questões

Q3777150 Engenharia de Software
Em um sistema de folha de pagamento da Assembleia, o Analista de Sistemas está modelando a hierarquia de funcionários. A classe base Pessoa contém atributos comuns como nome e cpf. A classe Funcionario herda de Pessoa e possui o método calcularRemuneracaoMensal(). No entanto, a forma de cálculo varia radicalmente entre subtipos como Efetivo e Comissionado, e a classe Funcionario por si só nunca deve ser instanciada, servindo apenas como um contrato para as classes filhas.
O conceito de Orientação a Objetos aplicado à classe Funcionario para impedir sua instanciação direta, ao mesmo tempo em que impõe a obrigatoriedade de implementação do método calcularRemuneracaoMensal() nas suas subclasses é o(a)
Alternativas
Q3753496 Engenharia de Software
Princípios de projeto são recomendações concretas que desenvolvedores de software devem seguir para atender às propriedades de coesão, acoplamento, ocultamento de informação e extensibilidade de um projeto. Considere o código a seguir:

class Financeiro {  void calculaImpostoDeRenda() {  // cálculo do imposto  }  void geraRelatorioPDF() {  // código para gerar PDF  } }


Segundo os princípios de projeto conhecidos como S.O.L.I.D., o código mencionado acima viola o princípio:
Alternativas
Q3729819 Engenharia de Software
O conceito do padrão de projeto aplicado a software fornece um meio de auxiliar os desenvolvedores a alavancar o conhecimento de outros arquitetos talentosos e experientes.
No livro “Design Patterns: Elements of Reusable Object-Oriented Software”, Erich Gamma, Richard Helm, Ralph Johnson e John Vlissides introduzem os princípios de padrões de projetos e fornecem um catálogo bastante utilizado por desenvolvedores de software. Os padrões são conhecidos como Padrões GoF (Gang of Four), em referência aos quatro autores do livro.
Imagem associada para resolução da questão
O diagrama de sequência acima ilustra as colaborações entre objetos que possibilitam implementar qual padrão GoF?
Alternativas
Q3723303 Engenharia de Software
Durante a modelagem de um sistema de controle acadêmico para uma instituição de ensino, um professor orientou seus alunos a utilizarem o modelo entidade-relacionamento estendido (EER) para representar conceitos como generalização, especialização e herança entre entidades. Ao converter esse modelo para um diagrama de classes UML, é necessário identificar corretamente a notação usada para representar relações hierárquicas de herança, em que subclasses herdam atributos e comportamentos da superclasse. Nesse contexto, a representação correta do relacionamento de herança é dada por:
Alternativas
Q3707486 Engenharia de Software
Em um sistema de e-commerce, um desenvolvedor precisa criar módulos que realizem pagamento por cartão, boleto e PIX. Ele deseja que a adição de novos métodos de pagamento no futuro seja feita sem alterar o código existente, garantindo baixo acoplamento e alta extensibilidade. Qual princípio de desenvolvimento orientado a objetos deve-se orientar a implementação?
Alternativas
Q3696874 Engenharia de Software
Assinale a alternativa que corresponde a um padrão de projeto (Design Pattern) cujo objetivo é atuar como um hub central para gerenciar toda a lógica de acesso a dados de um aplicativo, abstraindo os detalhes de armazenamento e recuperação de dados do restante do aplicativo. 
Alternativas
Q3689621 Engenharia de Software
Uma empresa está criando um sistema de composição de interfaces gráficas, onde elementos como janelas, botões e painéis podem conter outros elementos, formando uma estrutura hierárquica. É necessário que todos os elementos, independentemente de serem simples ou compostos, sejam tratados de maneira uniforme pelo cliente.

Neste contexto, o padrão de projeto mais indicado é o
Alternativas
Q3674697 Engenharia de Software
Os padrões de criação abstraem o processo de instanciação, auxiliando o sistema a se tornar independente de como seus objetos são criados, compostos e representados. São exemplos de padrões de projeto de criação: 
Alternativas
Q3661870 Engenharia de Software
Sobre o desenvolvimento orientado a objetos, analise as afirmações:

I. A coesão refere-se ao grau em que os elementos de um módulo pertencem juntos.
II. O acoplamento forte entre classes é sempre desejável para um bom design orientado a objetos.
III. O princípio da responsabilidade única afirma que uma classe deve ter apenas uma razão para mudar.
IV. A composição é sempre preferível à herança em todos os cenários de design orientado a objetos.

Assinale a alternativa que contenha APENAS as afirmações corretas. 
Alternativas
Q3660471 Engenharia de Software
Os princípios GRASP (General Responsibility Assignment Software Patterns) são padrões de design de software orientados a objetos que servem como diretrizes para a atribuição de responsabilidades a classes e objetos.
Dentre os princípios GRASP podemos identificar os seguintes:
Alternativas
Q3658554 Engenharia de Software
O paradigma da orientação a objetos visualiza um sistema de software como uma coleção de agentes 31. interconectados chamados objetos. É pela interação entre objetos que uma tarefa computacional é realizada. Um dos principais conceitos do paradigma da orientação a objetos é a abstração, que é um processo mental pelo qual nós seres humanos nos atemos aos aspectos mais importantes (relevantes) de alguma coisa, a0 mesmo tempo que ignoramos os aspectos menos importantes. A abstração é um principio básico da orientação a objetos e sua aplicação pode ser vista como base para outros conceitos, tais como: Encapsulamento, Polimorfismo, Generalização e Composição. 
Adaptado de Eduardo Bezerra, Princípios de Análise e Projeto de Sistemas Com UML, 2 Edição, Editora Elsevier, Rio de Janeiro, 2007. 
Em relação aos conceitos da orientação a objetos, avalie as seguintes afirmações:
I. Na generalização, classes semelhantes são agrupadas em uma hierarquia. Cada classe em um nível de hierarquia herda as características e comportamentos das classes as quais está nos níveis abaixo dela.
Il. O polimorfismo indica a capacidade de abstrair varias implementações diferentes em uma única interface.
Ill. A composição permite que sejam criados objetos a partir da reunião de outros objetos.
IV. Segundo o mecanismo do encapsulamento, a implementação do método que o objeto requisitado usa para realizar a operação precisa ser conhecida dos objetos requisitantes.

Assinale a alternativa que apresenta APENAS as afirmações corretas. 
Alternativas
Q3641760 Engenharia de Software
Em determinado projeto de software orientado a objetos, um desenvolvedor deve implementar um sistema que proteja partes do código de variações e mudanças frequentes em outros componentes, mantendo um baixo acoplamento entre as classes. Ao mesmo tempo, deseja-se que módulos de alto nível não dependam diretamente de módulos de baixo nível, mas que ambos dependam de abstrações.
Nessa situação, o princípio de SOLID e o princípio de GRASP que atendem adequadamente aos requisitos mencionados são, respectivamente, 
Alternativas
Q3636847 Engenharia de Software
A construção de um diagrama de classes UML é uma etapa fundamental na análise e projeto de sistemas orientados a objetos, visando representar a estrutura estática do sistema. Esse processo deve seguir uma sequência lógica para garantir que as classes, atributos, métodos e relacionamentos sejam adequadamente identificados e modelados. Considerando esse contexto, assinale a alternativa que apresenta a ordem correta para a elaboração de um diagrama de classes UML típico. 
Alternativas
Q3636605 Engenharia de Software
Em sistema crítico do Banco Central do Brasil, deseja-se reduzir acoplamento e aumentar flexibilidade do design OO, respeitando o Princípio da Substituição de Liskov (Liskov Substitution Principle - LSP). Assinale a alternativa que segue o LSP corretamente. 
Alternativas
Q3636592 Engenharia de Software
Em um módulo de faturamento eletrônico de um órgão federal, busca-se alta manutenibilidade e testabilidade segundo as boas práticas de projetos em 00. Considerando esse contexto, assinale a alternativa correta sobre a coesão e o acoplamento.
Alternativas
Q3635937 Engenharia de Software
Na orientação a objetos, há os conceitos de coesão e acoplamento de classes. Sobre o tema, analise as assertivas abaixo e assinale a alternativa correta.

I. Quanto maior a dependência entre duas classes, maior será a coesão delas.
II. Aumentar o acoplamento entre classes é uma das boas práticas da orientação a objetos.
III. Forte acoplamento significa que uma classe deve ter uma única responsabilidade.
Alternativas
Q3635810 Engenharia de Software
Em orientação a objetos, o conceito que descreve a capacidade de um objeto de uma classe derivada assumir diferentes formas ou comportamentos, respondendo à mesma mensagem de maneiras distintas, é chamado de
Alternativas
Q3620965 Engenharia de Software
Em uma revisão de código, o Analista de Tecnologia da Informação orienta a equipe a seguir práticas de Clean Code e princípios SOLID. Um dos objetivos é evitar que uma única classe assuma múltiplas responsabilidades no sistema. É CORRETO afirmar que o princípio que está sendo aplicado, é o:
Alternativas
Q3620961 Engenharia de Software
Uma equipe de Tecnologia da Informação responsável pelo cadastro único de beneficiários decidiu usar diagramas de classe para refinar a estrutura do sistema. Marque verdadeiro (V) ou falso (F) nas afirmativas abaixo:

(__) A associação entre classes pode ser unidirecional ou bidirecional, dependendo da comunicação entre objetos.
(__) Herança é representada em UML com uma seta sólida com ponta aberta apontando da superclasse para a subclasse.
(__) Classes abstratas não podem conter métodos implementados, apenas assinaturas.
(__) A composição é um tipo de associação em que o objeto composto controla completamente o ciclo de vida da parte.

Assinale a sequência CORRETA de cima para baixo.
Alternativas
Q3595745 Engenharia de Software
Leia a descrição a seguir.

Trata-se de um padrão que fornece uma interface para criar famílias de objetos relacionados ou dependentes, sem especificar suas classes concretas, seja porque estas ainda são desconhecidas ou para permitir maior escalabilidade no futuro.

O padrão de projeto descrito é o:
Alternativas
Respostas
41: D
42: C
43: B
44: D
45: B
46: D
47: E
48: C
49: D
50: D
51: B
52: C
53: E
54: B
55: A
56: B
57: C
58: A
59: D
60: C