Buscar

Programação Orientada a Objetos II Questionário Unidade I

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

 Pergunta 1 
0,25 em 0,25 pontos 
 
 
O comando ___________ serve para mostrar, no próprio console, uma cadeia (string) 
de texto. Utilizado para apresentar uma mensagem, um alerta como retorno de uma 
funcionalidade executada na linguagem C#. O comando em questão é: 
 
Resposta Selecionada: b. Console.Writeline; 
Respostas: a. Console.XText. 
 b. Console.Writeline; 
 c. Console.Writeline.Export.Text; 
 d. Console.XText.Writeline; 
 e. Console.Writeline.WebConfiguration; 
Feedback da 
resposta: 
Resposta: B 
Comentário: Console.Writeline grava o valor de cadeia de caracteres 
especificado, seguido pelo terminador de linha atual para o fluxo de 
saída padrão. 
 
 
 Pergunta 2 
0,25 em 0,25 pontos 
 
 
Com relação a conceitos sobre herança (classes), julgue os seguintes itens: 
I. A ideia básica de classe é que objetos que pertençam a uma mesma classe 
apresentam características e comportamentos em comum. 
II. Uma classe deve possuir uma única declaração de método construtor. 
III. Uma instância de uma classe abstrata herda atributos e métodos de sua superclasse 
direta. 
IV. Nos modelos orientados a objetos, uma das características mais básicas e 
fundamentais está na identificação e na criação das classes dos objetos. 
Estão corretos apenas os itens: 
 
Resposta Selecionada: c. I e IV. 
Respostas: a. I e II. 
 b. I e III. 
 c. I e IV. 
 d. II e III. 
 e. II e IV. 
Feedback 
da 
resposta: 
Resposta: C 
Comentário: I. A ideia básica de classe é que objetos que pertençam a 
uma mesma classe apresentam características e comportamentos em 
comum. IV. Nos modelos orientados a objetos, uma das características 
mais básicas e fundamentais está na identificação e na criação das 
classes dos objetos. II. Uma classe deve possuir uma única declaração 
de método construtor. III. Uma instância de uma classe abstrata herda 
atributos e métodos de sua superclasse direta. Classes abstratas não são 
instanciadas. 
 
 
 
 
 
 
 
 Pergunta 3 
0,25 em 0,25 pontos 
 
 
Na orientação a objeto, o ______________ é um princípio importante durante a definição de 
classes. Selecione o termo que completa o enunciado: 
Resposta Selecionada: a. Encapsulamento. 
Respostas: a. Encapsulamento. 
 b. Atributo. 
 c. Console. 
 d. MVC. 
 e. Polimorfismo. 
Feedback da 
resposta: 
Resposta: A 
Comentário: Com o conceito de encapsulamento acoplado a uma solução C#, 
torna-se mais fácil o acesso a todos os dados contidos em uma classe no 
projeto. 
 
 
 Pergunta 4 
0,25 em 0,25 pontos 
 
 
Na orientação a objetos, uma classe pode ser composta por métodos e atributos. Os atributos 
correspondem aos dados que serão armazenados pelos objetos de determinada classe. Os 
métodos são utilizados para acessarmos e modificarmos os atributos, o que faz com o que os 
objetos mudem de estado. Sendo assim, podemos definir que uma das vantagens de se trabalhar 
com encapsulamento é: 
 
Resposta 
Selecionada: 
e. A possibilidade de mudar os detalhes internos de um 
objeto e a sua implementação, com impacto mínimo nas 
demais classes e nos demais objetos de um projeto. 
Respostas: a. A possibilidade de não mudar os detalhes internos de um objeto e a sua 
implementação, com impacto mínimo nas demais classes e nos demais 
objetos de um projeto. 
 
 
b. A possibilidade de mudar os detalhes internos de um 
objeto e a sua não implementação, com impacto máximo 
nas demais classes e nos demais objetos de um projeto. 
 
c. A possibilidade de mudar os detalhes externos de um 
objeto e a sua implementação, com impacto máximo nas 
demais classes e nos demais objetos de um projeto. 
 
d. A possibilidade de mudar os detalhes externos de um 
objeto e a sua não implementação, com impacto máximo 
nas demais classes e nos demais objetos de um projeto. 
 
e. A possibilidade de mudar os detalhes internos de um 
objeto e a sua implementação, com impacto mínimo nas 
demais classes e nos demais objetos de um projeto. 
 
Feedback 
da resposta: 
Resposta: E 
Comentário: Uma das vantagens do encapsulamento é que podemos 
mudar os detalhes internos de um objeto e a sua implementação, com 
impacto mínimo nas demais classes e nos demais objetos de um projeto. 
Isso dá robustez ao projeto e flexibilidade para alterações futuras. 
 
 Pergunta 5 
0,25 em 0,25 pontos 
 
 
Relacionado com a capacidade de trabalharmos com objetos de tipos diferentes, mas 
de maneira similar. O enunciado refere-se a: 
 
Resposta Selecionada: a. Polimorfismo. 
 
Respostas: a. Polimorfismo. 
 
 b. Encapsulamento. 
 c. Atributo. 
 d. Console. 
 e. MVC. 
Feedback da 
resposta: 
Resposta: A 
Comentário: Na orientação a objetos, o polimorfismo está relacionado 
com a capacidade de trabalharmos com objetos de tipos diferentes, 
mas de maneira similar. 
 
 
 Pergunta 6 
0,25 em 0,25 pontos 
 
 
O princípio da substituição de __________ costuma ser enunciado da seguinte forma: 
deve ser possível substituir classes derivadas pelas classes bases sem mudança no 
comportamento. Nesse texto, podemos afirmar que o item que completa a lacuna é: 
 
Resposta Selecionada: c. Princípio de substituição de Liskov. 
Respostas: a. Princípio aberto-fechado. 
 
 b. Princípio da segregação de interfaces. 
 c. Princípio de substituição de Liskov. 
 d. Princípio da inversão de dependência. 
 e. Princípio da responsabilidade única. 
Feedback da 
resposta: 
Resposta: C 
Comentário: O princípio da substituição de Liskov costuma ser 
enunciado da seguinte forma: deve ser possível substituir classes 
derivadas pelas classes bases sem mudança no comportamento. 
 
 
 Pergunta 7 
0,25 em 0,25 pontos 
 
 
Criado para combater um problema chamado de interfaces “cheias” ou “poluídas”, ou seja, 
interfaces mais complexas do que os seus clientes realmente precisam. O princípio em questão 
abordado no texto é: 
 
Resposta Selecionada: a. Princípio da segregação de interfaces. 
Respostas: a. Princípio da segregação de interfaces. 
 b. Princípio aberto-fechado. 
 c. Princípio de substituição de Liskov. 
 d. Princípio da inversão de dependência. 
 e. Princípio da responsabilidade única. 
Feedback da 
resposta: 
Resposta: A 
 
Comentário: O princípio da segregação de interfaces foi criado para combater 
um problema chamado de interfaces “gordas” ou “poluídas”, ou seja, de 
interfaces muito maiores e complexas do que os seus clientes realmente 
precisam (MARTIN e MARTIN, 2006). 
Uma interface torna-se poluída quando ela tem métodos que não são relevantes 
para todos os seus clientes, ou seja, quando força a implementação de métodos 
irrelevantes para o contexto de uma classe que deve implantar essa interface. 
 
 
 Pergunta 8 
0,25 em 0,25 pontos 
 
 
Ao utilizarmos um contêiner de injeção de dependência, configuramos uma espécie de 
mapeamento entre tipos abstratos e tipos concretos. O _______ funciona como uma espécie de 
repositório que fornece os tipos concretos, ou seja, as instâncias dos objetos. O termo que 
complementa a lacuna do enunciado é: 
 
Resposta Selecionada: d. Unity. 
Respostas: a. Unitx. 
 b. Unitz. 
 c. Unitw. 
 d. Unity. 
 e. Unitp. 
Feedback 
da 
resposta: 
Resposta: D 
Comentário: Na linguagem C# há um contêiner de injeção de dependência 
chamado de Unity, criado originalmente pela própria Microsoft. Ao utilizarmos 
um contêiner de injeção de dependência, configuramos uma espécie de 
mapeamento entre tipos abstratos e tipos concretos. O Unity funciona como uma 
espécie de repositório que fornece os tipos concretos, ou seja, as instâncias dos 
objetos. 
 
 
 Pergunta 9 
0,25 em 0,25 pontos 
 
 
Uma forma bastante simplificada de ver esse conceito é pensar que uma classe, em vez de 
instanciar objetos dos quais ela depende, recebe esses objetos prontos, vindos de outro objeto 
(FOWLER, 2004; SHORE, 2006). É nesse sentido que existe a: 
 
Resposta Selecionada: a. Injeção de dependência. 
 
 
Respostas: a. Injeçãode dependência. 
 
 b. Injeção de versionamento. 
 c. Injeção de desenvolvimento. 
 d. Injeção de herança. 
 e. Injeção de encapsulamento. 
Feedback 
da 
resposta: 
Resposta: A 
Comentário: Uma forma bastante simplificada de ver esse conceito é 
pensar que uma classe, em vez de instanciar objetos dos quais ela 
depende, recebe esses objetos prontos, vindos de outro objeto 
(FOWLER, 2004; SHORE, 2006). É nesse sentido que existe a “injeção 
de dependência”: uma classe está recebendo objetos em vez de 
instanciá-los internamente. 
 
 Pergunta 10 
0,25 em 0,25 pontos 
 
 
C# proporciona características orientadas a componentes, como propriedades, eventos e 
construtores declarativos (como atributos). Programação orientada a componente é sustentada 
pelo armazenamento de metadado com o código para a classe. O metadado descreve a classe, 
incluindo seus métodos e propriedades, bem como sua necessidade de segurança e outros 
atributos, assim como será que pode ser serializado, o código contém a lógica suficiente para 
executar suas funções. Sendo assim, podemos considerar que: 
 
Resposta Selecionada: b. Abstrações. 
Respostas: a. C#. 
 
 b. Abstrações. 
 c. Desenvolvimento eficaz. 
 d. Injeção de encapsulamento. 
 e. Especificações UML. 
Feedback da 
resposta: 
Resposta: B 
Comentário: O objetivo da utilização desses contêineres e do princípio 
da injeção de dependência é fazer com que a aplicação dependa apenas 
de abstrações, exceto nos pontos em que devemos configurar os 
mapeamentos.

Continue navegando