O que é abstração em C++? Com o exemplo da vida real e sua implementação

Publicados: 2021-05-19

A Programação Orientada a Objetos (POO) é o paradigma de programação mais popular e é a maneira padrão de codificar para programadores. OOP trabalha no conceito de classes e objetos . Ele estrutura um programa de software em pedaços de código simples e reutilizáveis ​​chamados classes para criar objetos individuais. C++ é uma linguagem de programação orientada a objetos, e a abstração em C++ é um dos recursos C++ mais importantes e o destaque deste artigo.

A programação orientada a objetos visa aumentar a flexibilidade do programa. Neste artigo, você aprenderá como a abstração de dados é realizada no programa C++ e os benefícios de fazê-la.

Índice

Abstração de dados em C++

A abstração é derivada de duas palavras latinas, 'abs', que significa 'longe de' e 'tração' que significa 'desenhar', refere-se à representação de características essenciais necessárias sem incluir todos os detalhes.

As classes C++ executam a abstração com a lista de atributos abstratos, como funções. Eles colocam todas as propriedades essenciais de um objeto a ser criado. Os atributos são chamados de membros de dados e as funções que operam neles são chamadas de funções de membro. As classes C++ que usam o conceito de abstração de dados são chamadas de tipos de dados abstratos.

Fonte

Ao usar uma classe, membros de dados e funções de membro são representados no código. Mas, os tipos de dados internos e os membros da classe são ignorados ao usar um objeto conhecido como abstração de dados.

Programa para Demonstrar Abstração em C++

#include <iostream.h>

#include <conio.h>

soma de classe

{

// abstração de dados

privado : int x,y,z;

público :

void adicionar()

{

clscr();

cout<< “Digite dois números: “ ;

cin>>x>>y;

z=x+y;

cout<< “Soma dos números: “ <<z;

}

};

void main()

{

soma s;

s.adicionar();

obter();

}

Saída

Digite dois números:

22

23

Soma dos números: 45

Exemplos da vida real demonstrando abstração

A abstração é uma característica da Programação Orientada a Objetos, onde apenas detalhes relevantes são mostrados ao usuário e detalhes irrelevantes são ocultados.

Você pode entender a abstração em C++ com estes exemplos,

Quando um e-mail é enviado, basta clicar em enviar e você recebe o recibo enviado. O que é abstraído aqui são os dados transferidos para o destinatário.

Os recursos importantes de um telefone são o cartão de memória, o SIM, a duração da bateria, o design e o processador. Ao operar o telefone, você não entra nos detalhes operacionais do telefone, como alocação de memória da CPU para as várias mídias que são invisíveis para você. Você pode usar apenas determinados comandos e botões no telefone sem saber o que está acontecendo dentro do telefone.

Um homem dirigindo um carro sabe que pisar no acelerador aumentará a velocidade do carro, mas ele não sabe fazer, o que não passa de abstração.

Implementação de abstração de dados em C++

C++ é uma abordagem de programação orientada a objetos. A abstração de dados em C++ é implementada de duas maneiras:

  1. Usando classes e objetos
  2. Usando arquivos de cabeçalho

Fonte

1. Usando Classes e Objetos

Podemos optar por abstrair um membro de dados específico ou função de membro para ser acessível fora da classe ou não usando especificadores de acesso público, privado ou protegido com a ajuda de classes.

2. Usando arquivos de cabeçalho

Os arquivos de cabeçalho incluem funções de biblioteca incorporadas vinculadas a esse arquivo de cabeçalho. Para o arquivo de cabeçalho #include<string.h>, os programadores podem acessar as funções strcpy() e strlen() e muito mais.

Programa:

Vamos dar uma olhada em um programa C++ simples para entender a abstração usando classes, objetos e arquivos de cabeçalho:

#include <iostream>

usando o namespace std;

classe Abstração

{

// Privado

int num1, num2;

público:

// Para acessar membros privados

void input(int n1, int n2)

{

num1 = n1;

num2 = n2;

}

soma nula()

{

cout<<” A soma é:” << num1+num2 << endl;

}

};

int main()

{

cout<<“ Abstração de dados em C++ “<<endl;

Abstração a;

a.input(11, 18);

a.soma();

retornar 0;

}

Saída

Abstração de dados em C++

A soma é: 29

Benefícios da abstração em C++

Não há como negar o fato de que a abstração em C++ é um conceito de programação benéfico. Vamos discutir explicitamente alguns dos benefícios que ele oferece:

Ele aprimora a reutilização de código e o particionamento de classe, evitando qualquer redundância.

Ele aumenta a legibilidade do código, eliminando o trabalho complexo do código, tornando-o compreensível.

As partes internas da classe são protegidas contra erros acidentais no nível do usuário

A abstração em C++ é uma prática para escrever código de alto nível.

Evita a duplicação de código e o programador não precisa passar por tarefas comuns todas as vezes para operações semelhantes

Ele pode alterar a implementação da classe interna de forma independente sem afetar o usuário.

Aprenda cursos de desenvolvimento de software online das melhores universidades do mundo. Ganhe Programas PG Executivos, Programas de Certificado Avançado ou Programas de Mestrado para acelerar sua carreira.

Conclusão

A abstração de dados em C++ é um método para fornecer segurança de dados contra métodos não autorizados. Neste artigo, tentamos explicar um dos conceitos C++ mais importantes usados ​​amplamente junto com sua implementação e exemplos da vida real para maior clareza. Não seria difícil para um iniciante com pouco ou nenhum conhecimento pegar o jeito dos conceitos com alguma prática.

Se você está considerando o curso de Mestrado em Ciência da Computação do u pGrad , o processo de aprendizado será mais tranquilo para você.

Esperamos que você tenha uma excelente oportunidade de aprendizado na execução desses projetos C++. Se você estiver interessado em aprender mais e precisar de orientação de especialistas do setor, confira o PG Executivo da UpGrad & IIIT Banglore em Desenvolvimento de Software Full-Stack .

O que é abstração em C++?

A abstração é o processo de ocultar os detalhes relevantes para um propósito específico. Esta é a ideia central da programação orientada a objetos. Ele permite que os programadores escrevam um código mais genérico do que o problema real que está sendo resolvido. Isso ajuda a reduzir o tamanho do código e simplificar o código. A abstração também permite que você modifique o código no futuro, sem precisar alterar o código para atender às novas necessidades.

Quais são os pilares importantes da programação orientada a objetos?

Abstração: Podemos pensar em abstração como o processo de usar várias camadas de separação entre os detalhes de uma operação complexa e o código que realiza essa operação. Polimorfismo: Isso basicamente significa que a mesma operação pode ser representada de forma diferente em diferentes contextos. Herança: A herança tem tudo a ver com reutilização de código. Interfaces: Interfaces são descrições de alto nível de classes. Eles são basicamente um contrato especificando os métodos que uma classe deve ter. Composição: A composição trata da combinação de objetos para obter uma funcionalidade mais complexa.

Como obter a abstração em C++?

Uma abstração é uma implementação de um conceito. É o que você faz quando usa várias classes e funções para separar uma ideia do código que a implementa. Em C++, uma abstração é uma classe, um modelo ou uma função. Em C++, a abstração é obtida de várias maneiras, por exemplo, C++ fornece várias maneiras de obter abstração de dados, meios para ocultar detalhes de implementação e permitir que o código do cliente funcione com interfaces de alto nível.