SóProvas


ID
487039
Banca
CESPE / CEBRASPE
Órgão
MPE-RR
Ano
2008
Provas
Disciplina
Engenharia de Software
Assuntos

Acerca de lógica de programação, julgue os itens de 72 a 78.

Um encapsulamento é uma organização lógica para um conjunto de computações relacionadas; em um encapsulamento, há subprogramas e dados por eles manipulados. Uma abstração é uma representação de uma entidade que inclui somente os atributos de importância em um contexto particular.

Alternativas
Comentários
  • Questão está correta:
    • encapsulamento é uma forma de organizar, pensando em uma classe encapsulamento seria uma forma de organizar a classe divindo-a em varias partes menores e independentes, ocultando seus detalhes internos.
    • abstração é o processo de simplificar um problema que é visivel e comum entre atributos e operações de uma classe.
  • Definições retiradas do livro "Conceitos de Linguagens de Programação - Bookman, 2003" de Robert W. Sebesta, nele costa na página 411 a seguinte explicação sobre encapsulamento:

    "O encapsulamento é um agrupamento de subprogramas e dos dados que eles manipulam. O encapsulamento, separada ou independentemente compilável, constitui um sistema abstraído e uma organização lógica para uma coleção de computações relacionadas".

    Assim, explica o autor, o encapsulamento de um conjunto de subprogramas (módulos) e dados, relacionados logicamente. Usado como técnica para enfrentar os problemas de manter programas extensos bem administráveis, e agilizar  possíveis recompilações após alterações. A questão apenas retirou os trechos sublinhados, os reorganizou, sem invalidar a definição.

    Para  o conceito de abstração, foi também retirado do mesmo livro. Na página 410, costa a seguinte afirmação:
     

    "Uma abstração é uma visualização ou uma representação de uma entidade que inclui somente os atributos de importância em um contexto particular."


    Pode-se gerar uma dúvida quando se ler o trecho: "inclui somente os atributos de importância...". Deve-se ter bastante cuidado ao interpretar a afirmação, pois do ponto de vista prático pode soar errado, mas na verdade não é. Pois, quando estamos usando a "Abstração" para compor, por exemplo, um objeto no paradigma OO, fazemos cortes no mundo real, por mais que tenhamos atribuir ao objeto o máximo de detalhe necessário. Não atribuímos a um objeto Usuário, por exemplo, todas as suas características, como cor da pele, árvore genealógica, hora de nascimento. Esses atributos serão excluídos dependendo do contexto, do objetivo da computação. Assim a abstração é usada como arma para combater a complexidade da programação em representar seus contextos.

  • "Um encapsulamento é uma organização lógica para um conjunto de computações relacionadas;"

    Ok Cespe, antes eu pensava que um conjunto de computações relacionadas era Coesão, e encapsulamento era uma técnica que  os detalhes internos do funcionamento dos métodos permanecessem ocultos para outros objetos. 
  • como acertar questões de programação da CESPE? não me respondam que é só estudar, por favor, sério mesmo