Logo Passei Direto
Buscar

Quiz Programanção Orientada a Objeto

User badge image
Theo Alves

em

Ferramentas de estudo

Questões resolvidas

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Prévia do material em texto

<p>Revisar envio do teste: Clique aqui para iniciar o Quiz</p><p>Usuário</p><p>Curso</p><p>2403-PROGRAMAÇÃO ORIENTADA A OBJETOS</p><p>Teste</p><p>Clique aqui para iniciar o Quiz</p><p>Iniciado</p><p>13/09/24 10:42</p><p>Enviado</p><p>13/09/24 11:41</p><p>Data de vencimento</p><p>25/09/24 23:59</p><p>Status</p><p>Completada</p><p>Resultado da tentativa</p><p>8 em 10 pontos</p><p>Tempo decorrido</p><p>58 minutos</p><p>Resultados exibidos</p><p>Todas as respostas, Respostas enviadas, Respostas corretas, Comentários</p><p>· Pergunta 1</p><p>1 em 1 pontos</p><p>Padrões Grasp são um conjunto de diretrizes para atribuir responsabilidade a classes e objetos em projeto orientado a objetos. Grasp é a sigla para General Responsibility Assignment Software Patterns (ou Principles). Os diferentes padrões e princípios utilizados no Grasp são: controller (controlador), creator (criador), indirection (indireção), information expert (especialista na informação), alta coesão, baixo acoplamento, polimorfismo, pure fabrication (fabricação/invenção pura) e protected variations (variações protegidas). Esses padrões respondem a alguns problemas comuns que ocorrem em quase todos os projetos de desenvolvimento de software. Eles não são novas formas de trabalho, mas sim uma forma de documentar e padronizar os princípios de programação já conhecidos e praticados. Eles também ajudam a criar uma linguagem comum entre os desenvolvedores e facilitam o aprendizado dos sistemas orientados a objetos.</p><p>Qual é o princípio Grasp que atribui a responsabilidade de criar objetos a uma classe que contém ou usa esses objetos?</p><p>Resposta Selecionada:</p><p>b.</p><p>Creator</p><p>Respostas:</p><p>a.</p><p>Controller</p><p>b.</p><p>Creator</p><p>c.</p><p>Indirection</p><p>d.</p><p>Information Expert</p><p>e.</p><p>Pure Fabrication</p><p>Comentário da resposta:</p><p>Alternativa correta: B</p><p>Justificativa: O princípio Grasp Creator (criador) é um dos padrões que orientam a atribuição de responsabilidade de criação de objetos a uma classe. Esse princípio sugere que uma classe B deve ser responsável por criar instâncias de classe A.</p><p>· Pergunta 2</p><p>0 em 1 pontos</p><p>Com base no diagrama de classes apresentado abaixo, responda:</p><p>Qual a relação existente entre as classes "Pedido", "Item" e "Loja" no diagrama apresentado?</p><p>Resposta Selecionada:</p><p>a.</p><p>A classe “Loja” possui uma associação de composição com a classe “Pedido” e uma agregação com a classe “Item”.</p><p>Respostas:</p><p>a.</p><p>A classe “Loja” possui uma associação de composição com a classe “Pedido” e uma agregação com a classe “Item”.</p><p>b.</p><p>A classe “Item” possui uma associação de agregação com a classe “Pedido” e uma composição com a classe “Loja”.</p><p>c.</p><p>A classe “Pedido” possui uma associação de dependência com a classe “Loja” e uma agregação com a classe “Item”.</p><p>d.</p><p>A classe “Loja” possui uma associação de composição com a classe “Pedido” e a classe “Pedido” uma agregação com a classe “Item”.</p><p>e.</p><p>A classe “Pedido” possui uma associação de composição com a classe “Loja” e uma agregação com a classe “Item”.</p><p>Comentário da resposta:</p><p>Alternativa correta: D</p><p>Justificativa: A classe “Loja” possuí instâncias da classe “Pedido” e a classe “Pedido” possui referências da classe “Item”.</p><p>· Pergunta 3</p><p>1 em 1 pontos</p><p>Em programação orientada a objetos o encapsulamento é um dos conceitos principais que caracterizam este paradigma de programação.</p><p>Assinale a alternativa que contenha a definição mais adequada para encapsulamento:</p><p>Resposta Selecionada:</p><p>a.</p><p>O encapsulamento visa esconder detalhes de implementação dos objetos, expondo somente atributos e métodos necessários para quem irá usá-lo.</p><p>Respostas:</p><p>a.</p><p>O encapsulamento visa esconder detalhes de implementação dos objetos, expondo somente atributos e métodos necessários para quem irá usá-lo.</p><p>b.</p><p>O encapsulamento é responsável por armazenar atributos e métodos de um objeto dentro de uma classe.</p><p>c.</p><p>O encapsulamento permite a comunicação entre classes através de métodos públicos.</p><p>d.</p><p>O encapsulamento visa esconder todos os atributos e métodos de uma classe.</p><p>e.</p><p>O encapsulamento armazena e controla o acesso a atributos e métodos, permitindo somente que subclasses tenham acesso aos atributos e que somente alguns métodos sejam públicos.</p><p>Comentário da resposta:</p><p>Alternativa a</p><p>O encapsulamento visa esconder detalhes de implementação dos objetos, expondo somente atributos e métodos necessários para quem irá usá-lo.</p><p>· Pergunta 4</p><p>1 em 1 pontos</p><p>No contexto de abstração e implementação de uma classe em C#, considere o seguinte código:</p><p>class ContaBancaria {</p><p>double valor = 0;</p><p>public void depositar(double deposito) {</p><p>if(deposito > 0) {</p><p>valor = valor + deposito;</p><p>}</p><p>}</p><p>public void sacar(double saque) {</p><p>valor = valor - saque;</p><p>}</p><p>public double saldo(){</p><p>return valor;</p><p>}</p><p>}</p><p>É correto afirmar que:</p><p>Resposta Selecionada:</p><p>e.</p><p>Conta bancária é uma classe que possuí um único atributo chamado valor e que tem como valor inicial zero, e possuí 3 métodos públicos</p><p>Respostas:</p><p>a.</p><p>A classe conta bancária possui um atributo privado do tipo double, mas contém um erro, pois não pode ter valor atribuído.</p><p>b.</p><p>O método depositar soma o valor de depósito na conta, mesmo se o valor for negativo</p><p>c.</p><p>O método sacar subtrai o valor de saque na conta, mas não deixa sacar se o valor ficar negativo.</p><p>d.</p><p>Existe um erro neste código.</p><p>e.</p><p>Conta bancária é uma classe que possuí um único atributo chamado valor e que tem como valor inicial zero, e possuí 3 métodos públicos</p><p>Comentário da resposta:</p><p>Alternativa e</p><p>A classe ContaBancaria possuí um único atributo chamado valor do tipo double e que tem como valor inicial zero, e possuí 3 métodos públicos:</p><p>- depositar: que só permite depositar valores maiores que zero;</p><p>- sacar: que permite sacar qualquer valor, mesmo que o valor da conta fique negativo;</p><p>- saldo: que retorna o valor atual da conta</p><p>· Pergunta 5</p><p>1 em 1 pontos</p><p>A modelagem conceitual é uma etapa fundamental no processo de desenvolvimento de software. Com base nisso, considere a seguinte situação:</p><p>Uma empresa de consultoria está desenvolvendo um sistema para controle de estoque de uma loja de materiais de construção. A equipe de desenvolvimento decidiu utilizar a modelagem conceitual para definir os requisitos do sistema. Durante o processo de modelagem, foram identificadas as seguintes entidades: Produto, Fornecedor, Cliente, Venda e Estoque. Além disso, foram estabelecidos os seguintes relacionamentos entre as entidades: um Produto é fornecido por um Fornecedor, um Cliente realiza uma ou mais Vendas, e um Produto pode estar em vários locais de Estoque.</p><p>Com base nessa situação, qual é o principal objetivo da modelagem conceitual?</p><p>Resposta Selecionada:</p><p>a.</p><p>Identificar as entidades e relacionamentos do sistema de forma clara e objetiva.</p><p>Respostas:</p><p>a.</p><p>Identificar as entidades e relacionamentos do sistema de forma clara e objetiva.</p><p>b.</p><p>Desenvolver um código-fonte eficiente para solucionar problemas.</p><p>c.</p><p>Testar a funcionalidade de um software em diferentes ambientes.</p><p>d.</p><p>Definir os requisitos de hardware necessários para a implementação do sistema.</p><p>e.</p><p>Otimizar o desempenho de um software já implementado.</p><p>Comentário da resposta:</p><p>Alternativa correta: A</p><p>Justificativa: A modelagem conceitual ajuda a identificar entidades e relacionamentos do sistema de forma clara e objetiva.</p><p>· Pergunta 6</p><p>1 em 1 pontos</p><p>Qual é o objetivo do padrão GoF Strategy?</p><p>Resposta Selecionada:</p><p>b.</p><p>Encapsular comportamentos intercambiáveis e usar a delegação para decidir qual deles será usado.</p><p>Respostas:</p><p>a.</p><p>Definir uma interface para criar famílias de objetos relacionados ou dependentes sem especificar suas classes concretas.</p><p>b.</p><p>Encapsular comportamentos intercambiáveis e usar a delegação para decidir qual deles será usado.</p><p>c.</p><p>Envelopar um objeto e fornecer a ele uma interface diferente.</p><p>d.</p><p>Permitir que um objeto altere seu comportamento quando seu estado interno muda.</p><p>e.</p><p>Permitir</p><p>que um objeto notifique outros objetos sobre mudanças em seu estado.</p><p>Comentário da resposta:</p><p>Alternativa correta: B</p><p>Justificativa: O padrão GoF Strategy encapsula comportamentos intercambiáveis e usa a delegação para decidir qual deles será usado. Esse padrão permite definir uma família de algoritmos, encapsular cada um deles e torná-los intercambiáveis. Strategy permite que o algoritmo varie independentemente dos clientes que o utilizam.</p><p>· Pergunta 7</p><p>1 em 1 pontos</p><p>Sobre encapsulamento, analise o código abaixo e assinale a alternativa correta:</p><p>class ContaBancaria {</p><p>private decimal saldo;</p><p>public decimal Saldo {</p><p>get { return saldo; }</p><p>set { saldo = value; }</p><p>}</p><p>public void Depositar(decimal valor) {</p><p>saldo += valor;</p><p>}</p><p>public void Sacar(decimal valor) {</p><p>saldo -= valor;</p><p>}</p><p>}</p><p>Resposta Selecionada:</p><p>b.</p><p>A propriedade “Saldo” é a única forma de acessar o atributo “saldo”</p><p>Respostas:</p><p>a.</p><p>A classe “ContaBancaria” não possui nenhum mecanismo de proteção dos dados</p><p>b.</p><p>A propriedade “Saldo” é a única forma de acessar o atributo “saldo”</p><p>c.</p><p>O atributo “saldo” é acessível diretamente por outras classes</p><p>d.</p><p>O método “Sacar” não pode ser acessado por outras classes</p><p>e.</p><p>O método “Depositar” não pode ser acessado por outras classes</p><p>Comentário da resposta:</p><p>Alternativa correta b</p><p>A propriedade “Saldo” é a única forma de acessar o atributo “saldo”. O encapsulamento em C# permite controlar o acesso aos dados através da declaração de membros como privados ou públicos. No exemplo, o atributo “saldo” é privado, e a propriedade “Saldo” é pública, os métodos “Depositar” e “Sacar” são públicos.</p><p>· Pergunta 8</p><p>1 em 1 pontos</p><p>Instanciação de objetos em C# ou em qualquer outra linguagem orientada a objetos é o processo de criação de uma instância de uma classe específica, ou seja, é reservado um espaço de memória no qual você poderá atribuir valores aos atributos da classe. É possível ter múltiplas instâncias de uma classe em um mesmo programa, cada um com valores diferentes para seus atributos. Neste contexto, analise o código a seguir e assinale a alternativa que contém a saída da execução:</p><p>class Veiculo {</p><p>public string Marca { get; set; }</p><p>public string Modelo { get; set; }</p><p>public int Ano { get; set; }</p><p>public string Placa { get; set; }</p><p>public Veiculo() {</p><p>Marca = "";</p><p>Modelo = "";</p><p>Ano = 0;</p><p>Placa = "";</p><p>}</p><p>public Veiculo(string marca, string modelo, int ano, string placa) {</p><p>Marca = marca;</p><p>Modelo = modelo;</p><p>Ano = ano;</p><p>Placa = placa;</p><p>}</p><p>}</p><p>class Program {</p><p>static void Main(string[] args) {</p><p>Veiculo carro1 = new Veiculo();</p><p>Veiculo carro2 = new Veiculo("Ford", "Fiesta", 2022, "ABC-1234");</p><p>Console.WriteLine("Carro 1: " + carro1.Marca + " " + carro1.Modelo + " " + carro1.Ano + " " + carro1.Placa);</p><p>Console.WriteLine("Carro 2: " + carro2.Marca + " " + carro2.Modelo + " " + carro2.Ano + " " + carro2.Placa);</p><p>Console.ReadKey();</p><p>}</p><p>}</p><p>Resposta Selecionada:</p><p>b.</p><p>Carro 1: 0</p><p>Carro 2: Ford Fiesta 2022 ABC-1234</p><p>Respostas:</p><p>a.</p><p>Carro 1: Ford Fiesta 2022 ABC-1234</p><p>b.</p><p>Carro 1: 0</p><p>Carro 2: Ford Fiesta 2022 ABC-1234</p><p>c.</p><p>Carro 1: Ford Fiesta 2022</p><p>Carro 2: Ford Fiesta 2022 ABC-1234</p><p>d.</p><p>Carro 1: Ford Fiesta 0 ABC-1234</p><p>Carro 2: Ford Fiesta 2022 ABC-1234</p><p>e.</p><p>O código possui um erro, pois os dados do “carro1” não existem</p><p>Comentário da resposta:</p><p>Alternativa correta b</p><p>Carro 1: 0</p><p>Carro 2: Ford Fiesta 2022 ABC-1234</p><p>A saída para o carro 1 é somente “Carro 1: 0” por que no C# o valor padrão das variáveis do tipo String é vazio, mas o valor padrão para int é 0.</p><p>· Pergunta 9</p><p>0 em 1 pontos</p><p>Qual é o propósito dos padrões de criação (creational patterns), segundo o catálogo dos padrões GoF</p><p>Resposta Selecionada:</p><p>d.</p><p>São padrões que abstraem o processo de instanciação de objetos e permitem que os objetos sejam criados de maneiras diferentes.</p><p>Respostas:</p><p>a.</p><p>São padrões que fornecem uma interface para criar famílias de objetos relacionados ou dependentes sem especificar suas classes concretas</p><p>b.</p><p>São padrões que definem como um ou mais objetos se comunicam entre si sem acoplamento forte ou referências explícitas.</p><p>c.</p><p>São padrões que permitem alterar o comportamento de um objeto em tempo de execução dependendo do seu estado interno.</p><p>d.</p><p>São padrões que abstraem o processo de instanciação de objetos e permitem que os objetos sejam criados de maneiras diferentes.</p><p>e.</p><p>São padrões que encapsulam algoritmos variáveis dentro de uma classe selecionada em tempo de execução.</p><p>Comentário da resposta:</p><p>Alternativa correta: C</p><p>Justificativa: O conjunto de padrões de criação descrevem soluções para problemas de instanciação de objetos, ou seja, sua criação durante a execução do programa.</p><p>· Pergunta 10</p><p>1 em 1 pontos</p><p>Existem muitas formas de se coletar os requisitos de um sistema que passam por entrevistas, análise dos stakeholderse, dentro outras. Para organizarmos estas informações os requisitos precisam ser classificados e o modelo da FURPS+ propõe algumas divisões. Assinale a alternativa que descreve quais são as divisões do modelo FURPS+.</p><p>Resposta Selecionada:</p><p>a.</p><p>Funcionais, Técnicos, Usabilidade, Desempenho e Segurança</p><p>Respostas:</p><p>a.</p><p>Funcionais, Técnicos, Usabilidade, Desempenho e Segurança</p><p>b.</p><p>Funcionais, Econômicos, Usabilidade, Desempenho e Segurança</p><p>c.</p><p>Funcionais, Técnicos, Econômicos, Desempenho e Segurança</p><p>d.</p><p>Funcionais, Técnicos, Usabilidade, Econômicos e Segurança</p><p>e.</p><p>Funcionais, Técnicos, Usabilidade, Desempenho e Econômicos</p><p>Comentário da resposta:</p><p>Alternativa correta a</p><p>O modelo FURPS+ divide os requisitos em Funcionais, Técnicos, Usabilidade, Desempenho e Segurança.</p><p>Sexta-feira, 13 de Setembro de 2024 11h41min11s BRT</p><p>image1.gif</p><p>image2.png</p><p>image3.gif</p>

Mais conteúdos dessa disciplina