Recomendado, 2024

Escolha Do Editor

Diferença entre abstração e ocultação de dados

Abstração e ocultação de dados são os conceitos cruciais da programação orientada a objetos. Abstração é um método de expressar as propriedades importantes sem envolver os detalhes do plano de fundo. Por outro lado, a ocultação de dados isola os dados do acesso direto pelo programa. Embora ambos os conceitos pareçam semelhantes no sentido, mas são diferentes. A abstração fornece uma maneira de criar tipos de dados definidos pelo usuário para projetar objetos reais com as mesmas propriedades. Contra ocultação de dados protege os dados e função do acesso não autorizado.

Gráfico de comparação

Base para comparaçãoAbstraçãoEsconder dados
Basic
Extrai apenas informações relevantes e ignora detalhes não essenciais.Esconde os dados das partes do programa.
PropósitoPara esconder a complexidade.Para conseguir o encapsulamento.
Classe
Classe usa a abstração para derivar um novo tipo de dados definido pelo usuário.A ocultação de dados é usada em uma classe para tornar seus dados privados.
Foca em
Comportamento observável dos dados.Restringindo ou permitindo o uso de dados dentro de uma cápsula.

Definição de Abstração

A abstração é usada principalmente para ocultar a complexidade. Indica as características necessárias de um objeto que o diferencia de todos os outros tipos de objetos. Uma abstração concentra-se no aspecto externo de um objeto. Para um objeto, a abstração fornece a separação do comportamento crucial de sua implementação. Ele especifica um limite conceitual relativo à perspectiva do visualizador. Uma abstração adequada enfatiza os detalhes que são importantes para o leitor ou usuário e suprime recursos que são irrelevantes e desviantes.

Os tipos de dados definidos pelo usuário são criados definindo atributos e funções abstratos dentro de uma classe para projetar objetos do mundo real, tendo propriedades semelhantes. Esses atributos são conhecidos como membros de dados porque contêm as informações. Da mesma forma, as funções que operam nesses dados são conhecidas como funções-membro. A abstração de dados é implementada como uma classe que representa as propriedades essenciais sem incluir as explicações do plano de fundo.

Tipos de Abstração:

  • Abstração processual - Inclui séries das instruções que possuem as funções especificadas.
  • Abstração de dados - É um conjunto de dados que especifica e descreve um objeto de dados.
  • Abstração de controle - É o mecanismo de controle de programa onde detalhes de interior não são especificados.

Definição de ocultação de dados

A ocultação de dados implica ocultar os dados dos componentes do programa que não precisam ser recuperados. O isolamento dos dados do acesso direto pelo programa é chamado de ocultação de dados ou ocultação de informações. Para implementar a ocultação de dados, o encapsulamento é usado onde dados e funções de uma classe são protegidos contra acesso não autorizado. Em contraste, quando os dados e a função são encapsulados em uma única unidade, é conhecido como encapsulamento. Portanto, a ocultação de dados ajuda a alcançar o encapsulamento. Os detalhes funcionais de um objeto podem ser manipulados por meio de especificadores de acesso.

Usando os conceitos de ocultação de dados, os dados e a função de uma classe são tornados privados para que não possam ser acessados ​​falsamente pelas funções fora da classe e protegidos de alterações acidentais.

Principais diferenças entre abstração e ocultação de dados

  1. A abstração mostra as informações relevantes e rejeita os detalhes não essenciais. Por outro lado, a ocultação de dados é usada para ocultar os dados das partes do programa.
  2. O objetivo anterior da abstração é ocultar os detalhes complexos da implementação do programa ou software. Pelo contrário, a ocultação de dados é implementada para atingir o encapsulamento.
  3. A abstração é usada na classe para criar um novo tipo de dados definido pelo usuário. Em contraste, nas classes, a ocultação de dados é usada para tornar os dados privados.
  4. A abstração concentra-se no comportamento observável dos dados, enquanto a ocultação de dados restringe ou permite o uso de dados dentro de uma cápsula.

Conclusão

Tanto a abstração quanto a ocultação de dados pretendiam apenas mostrar as informações necessárias e ocultar os detalhes não essenciais, mas para o propósito distinto. A abstração enfatiza a ocultação da complexidade da implementação, enquanto na ocultação de dados, a proeminência é dada à proteção de dados contra o acesso não autorizado.

Top