Questões de Concurso
Comentadas sobre orientação a objetos em engenharia de software
Foram encontradas 1.049 questões
1. _______________: incorpora responsabilidades adicionais a um objeto dinamicamente. Esse padrão fornece uma alternativa flexível à produção de subclasses para estender a funcionalidade.
2. _______________: provê um substituto ou espaço reservado a outro objeto, para controlar o acesso a este.
3. _______________: fornece uma interface unificada para um conjunto de interfaces em um subsistema. Esse padrão define uma interface de nível mais alto, que torna o subsistema mais fácil de usar.
A modelagem de sistemas orientados a objetos permite visualizar a arquitetura do software sob diferentes perspectivas, facilitando a comunicação e a documentação técnica. Com base nas categorias clássicas de modelos de sistemas (interação, estrutural e comportamental) e no uso dos diagramas da UML, analise as assertivas abaixo:
I. Modelos de interação representam a comunicação entre o sistema e seu ambiente operacional ou entre os componentes internos do próprio sistema. O Diagrama de Sequência pertence a essa categoria, tendo como objetivo modelar a ordem cronológica das trocas de mensagens entre os objetos instanciados para a execução de um cenário específico.
II. Modelos estruturais descrevem a organização estática do software e a estrutura dos dados que serão processados pela aplicação. O Diagrama de Classes pertence a essa categoria, sendo o seu objetivo primordial representar graficamente as relações entre os dados, os desvios condicionais e o paralelismo das operações lógicas executadas pelos módulos do sistema.
III. Modelos comportamentais ilustram o comportamento dinâmico do sistema durante a sua execução. O Diagrama de Atividades enquadra-se nessa classificação, possuindo como objetivo detalhar o fluxo de controle de um processo de negócio ou computacional, evidenciando a sequência de ações, os desvios condicionais e o paralelismo das operações.
Quais estão corretas?
No contexto do desenvolvimento de um sistema orientado a objetos em Java, um Analista de Sistemas está projetando um módulo para gerenciamento de operações em uma agência de fomento. Durante a implementação, cada entidade do sistema, como beneficiários e operações financeiras, é criada a partir de uma estrutura que define atributos e métodos, passando a possuir valores próprios e comportamentos específicos que podem ser executados ao longo do sistema. Considerando os conceitos fundamentais da orientação a objetos, assinale a alternativa que representa CORRETAMENTE essas instâncias criadas a partir de classes.
Nesse cenário, a ação mais adequada a ser adotada pela equipe é
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?
( ) 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.
Nesse contexto, uma abordagem coerente com o Princípio da Inversão de Dependência (Dependency Inversion Principle – DIP) é:
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)
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.
( ) 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,
Esse problema geralmente ocorre quando
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: