Abstração vs. Encapsulamento

Autor: Laura McKinney
Data De Criação: 8 Abril 2021
Data De Atualização: 1 Poderia 2024
Anonim
Abstração vs. Encapsulamento - De Outros
Abstração vs. Encapsulamento - De Outros

Contente

Abstração é um processo de
coleta de informações cruciais que servirão de base para a construção de um
Sistema complexo. Encapsulamento é um processo de desenvolvimento de um sistema complexo muito
mais fácil de gerenciar o usuário final, sem se preocupar com suas complexidades internas. o
A diferença entre abstração e encapsulamento é que
A abstração foca na identificação dos componentes essenciais para a construção de um
sistema enquanto o encapsulamento se concentra em esconder as complexidades internas de um sistema.


Conteúdo: Diferença entre Abstração e Encapsulamento

  • Gráfico de comparação
  • O que é abstração?
    • Exemplo
  • O que é encapsulamento?
    • Exemplo
  • Principais diferenças entre abstração e encapsulamento
  • Conclusão

Gráfico de comparação

Basic Abstração Encapsulamento
Definição Elementos necessários para desenvolver um
sistema.
Encapsulamento é um processo de desenvolvimento de um sistema complexo
Realização Alcançado através do encapsulamento. Conseguido através da criação de membros de um
classe como particular.
Concentra-se O foco está no que deve ser feito O foco está em como isso deve ser feito.
Aplicação Durante o nível de design. Durante a implementação
nível.
Exemplos A GUI de um telefone celular, possui alguns ícones para clicar, que
clique em executar a função específica.
Quando o ícone é clicado,
o usuário final não tem idéia sobre seus detalhes de implementação

O que é abstração?

A abstração é um mecanismo de extração dos elementos cruciais
para a criação de um sistema, sem seus detalhes de implementação. Em
abstração, devemos nos concentrar apenas no que deve ser feito, e não em como
precisa ser feito. Abstração é um processo de pensamento, resolve os problemas no projeto
nível.


A classificação hierárquica nos ajuda a lidar com uma abstração complexa. Ele nos permite dividir um sistema complicado em partes gerenciáveis ​​e gerar uma semântica em camadas. Além disso, é uma generalização.

Exemplo

Vamos dar um bom exemplo de um carro, ele é criado a partir de vários subsistemas como motor, freios, iluminação, sistema de áudio, cadeira e muito mais. O 'freio', que é um subsistema de uma bicicleta, pode ainda ser classificado como freio de roda dianteira e freio de roda traseira, mas geralmente vemos todos os subsistemas como freio. Portanto, devemos gerenciar o sistema complexo por classificação hierárquica, o que nos ajuda a descobrir quais são os elementos cruciais que serão necessários para o desenvolvimento de um sistema.

Portanto, a abstração está apenas generalizando quais elementos são
essencial para criar um sistema, ou seja, escolher apenas os importantes.


O que é encapsulamento?

Encapsulamento é o recurso importante da programação orientada a objetos. É um mecanismo que
une código e dados e os mantém protegidos contra ataques externos
interferência. Ou seja, o encapsulamento esconde a complexidade de um sistema,
já que a palavra-chave aqui é ocultação de dados. É semelhante a um protetor
wrapper que oculta o código e os dados dentro da classe, sendo obtido por
outro código definido fora da classe e da função / método membro
que não são os membros da classe.

Quando código e dados que operam
nesses dados, são vinculados na classe, os objetos dessa classe são criados.
O acesso aos elementos do item é limitado por uma interface bem definida
conhecido como especificador de acesso. Existem três acessos
especificadores em Java e C ++ Público, Privado, Seguro.

O encapsulamento é conseguido especialmente tornando o código
e dados que operam nos dados, como privados. Os membros privados da classe não podem acessar a partir do código definido
fora da aula. Ajuda a impedir o uso indevido de dados, enquanto também oculta a complexidade
do código.

Exemplo

Vamos dar um exemplo de telefone celular. Em um telefone celular, você
pode executar muitas funções, como clicar em uma imagem, gravar um vídeo / áudio,
a, acesse a web e muito mais. Você os considera como o
características de um telefone celular. Mas, o usuário final não precisa
entender a complexidade interna desses recursos, antes de usá-los
programas, nem é necessário alterar a funcionalidade de qualquer função.

Assim, dessa maneira, o encapsulamento oculta a complexidade e
impedir o uso indevido dos dados.

Principais diferenças entre abstração e encapsulamento

  1. A abstração se concentra nos componentes necessários para
    construir um sistema enquanto o encapsulamento se concentra em esconder a complexidade do
    sistema.
  2. A abstração é feita durante o nível de design de um sistema e
    encapsulamento é feito quando o sistema tiver
    implementado.
  3. O principal motivo das abstrações é o que deve ser feito para criar
    um sistema enquanto o principal motivo do Encapsulations é como deve ser feito para construir um sistema.
  4. A abstração é alcançada por
    encapsulamento, ao passo que o encapsulamento é alcançado tornando os elementos de
    o sistema privado.

Conclusão

Abstração e encapsulamento
ambos são a característica importante do OOP. Um grande encapsulamento pode gerar uma abstração fantástica.