Analise as afrmativas abaixo com relação à programação orien...

Próximas questões
Com base no mesmo assunto
Q386442 Engenharia de Software
Analise as afrmativas abaixo com relação à programação orientada a objeto.

1. Uma linguagem Orientada a Objetos precisa implementar quatro conceitos básicos: abstração, encapsulamento, herança e polimorfsmo.

2. Encapsulamento é a técnica que faz com que detalhes internos do funcionamento dos métodos de uma classe permaneçam ocultos. O conhecimento a respeito da implementação interna da classe é desnecessário do ponto de vista do objeto, uma vez que isso passa a ser responsabilidade dos métodos internos da classe.

3. O conceito de herança está relacionado a fornecer um mecanismo para que se defnam novas classes a partir de uma já existente. Podemos dizer que essas novas classes her- dam propriedades e métodos da classe-mãe.

4. O emprego do paradigma de programação Orientada a Objetos garante a reutilização de código.

Assinale a alternativa que indica todas as afrmativas corretas
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: B - São corretas apenas as afirmativas 1, 2 e 3.

Para resolver a questão é necessário ter compreensão dos quatro pilares da programação orientada a objetos: abstração, encapsulamento, herança e polimorfismo. Também é preciso entender o contexto de aplicação e os benefícios potenciais que a orientação a objetos pode trazer, como a reutilização de código, embora isso não seja garantido apenas pelo uso do paradigma.

A afirmativa 1 é correta pois realmente são estes os quatro conceitos básicos que definem uma linguagem como orientada a objetos. Estes conceitos trabalham em conjunto para permitir o desenvolvimento de sistemas modulares e reutilizáveis.

A afirmativa 2 também é correta, pois encapsulamento é um conceito fundamental na programação orientada a objetos. Seu objetivo é ocultar os detalhes da implementação interna de um objeto, expor apenas operações seguras e manter o estado do objeto protegido contra acesso externo inapropriado.

Quanto à afirmativa 3, ela está correta pois descreve adequadamente o conceito de herança. Na herança, uma classe filha herda atributos e métodos de uma classe pai (ou classe base), o que permite a reutilização e extensão de funcionalidades existentes de maneira controlada.

A afirmativa 4 é incorreta justamente porque a reutilização de código não é uma garantia intrínseca do paradigma orientado a objetos. Embora o paradigma facilite e incentive a reutilização, ela ainda depende de um bom design e implementação. Existem diversas situações em que o código pode ser orientado a objetos e ainda assim ser difícil de reutilizar devido a um design pobre ou altamente acoplado.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

A 4 está errada apenas por causa do "GARANTE a reutilização de código."...

Errei pensando q considerar isso era ser detalhista hehe

Esse garante realmente pegou muita gente =/


Na minha opinião a 2 esta errada!

"Encapsulamento é a técnica que faz com que detalhes internos do funcionamento dos métodos de uma classe permaneçam ocultos." na verdade é o funcionamento interno da própria classe (métodos e atributos). Você encapsula métodos e atributos tornando-os, por exemplo, privados, e os expõe por métodos publicos da forma que achar adequado. 

4. O emprego do paradigma de programação Orientada a Objetos garante a reutilização de código.
    *Na minha opinião esta opção está correta. A herança garante a reutilização de código neste paradigma. "Banca fraca".

A herança é um conceito de programação útil, mas é fácil de usar inadequadamente. Interfaces com frequência fazem um trabalho melhor. When to Use Interfaces help you understand when each approach should be used." xml:space="preserve">Este tópico e Quando usar interfacesajudam você a compreender quando cada abordagem deve ser usada.

A herança é uma boa escolha quando:
A hierarquia de herança representa um relacionamento "é um" e não um relacionamento "tem um".

Você pode reutilizar o código de classes base.

Você precisa aplicar a mesma classe e métodos para tipos diferentes de dados.

A hierarquia de classe é razoavelmente superficial, e não é provável que outros desenvolvedores adicionem muitos mais níveis.

Você deseja fazer alterações globais para classes derivadas alterando uma classe base.

https://msdn.microsoft.com/pt-br/library/27db6csx(v=vs.90).aspx


"Garante" é sempre um termo FORTE em qualquer contexto quando se trata de enunciados em questões de concurso.


Concordar com a afirmação "O emprego do paradigma de programação Orientada a Objetos garante a reutilização de código." é o mesmo que dizer que "quando se emprega OO não existe nenhum cenário no qual não seja possível reutilizar o código".


Seria algo muito abstrato, fora da realidade.


Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo