Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Encapsulamento

Na aula eu fiquei um pouco de dúvida sobre a definição de encapsulamento, será que poderia explicar novamente por favor ?

3 respostas
solução!

Em resumo é o processo de ocultar membros de uma classe a acesso externo. Serve como uma maneira de preservar a integridade dos dados. Você não vai trabalhar acessando diretamente eles apenas indiretamente.

Imagine um semáforo onde podemos ver a cor, porém não podemos chamar a próxima cor quando bem entendermos (vermelho-amarelo-vermelho). Levando isso para uma classe de forma conceitual teríamos o public getCorAtual() e o private setCorAtual(), os dois atuariam na propriedade CorAtual porem você nunca estaria acessando a variável private _corAtual.

As fontes abaixo podem ajudar com uma explicação mais detalhada.

Fontes: https://www.macoratti.net/18/01/c_encaps1.htm , https://pt.wikibooks.org/wiki/Programa%C3%A7%C3%A3o_Orientada_a_Objetos/Encapsulamento

Taniguchi,

Existem milhares de explicações na teia...

... a que eu mais gosto é a da "Caixa Preta". Imagine uma "caixa preta" na qual você passa alguns parâmetros (valores) para ela e ela te devolve uma ou mais respostas. Você NÃO tem a menor ideia do que está dentro da caixa e COMO ela faz para te devolver os valores, a única coisa que você sabe na melhor das hipóteses é que os valores estão certos ou errados (as vezes nem isso sabemos).

Por favor, leia o artigo:

===============================

Encapsulamento em POO: o que é, como funciona e por que usar?

by Cairo Noleto

24 de setembro de 2020

O encapsulamento transforma a implementação de alguns códigos em uma espécie de caixa preta. Na prática, isso significa que as classes externas não precisam acessar alguns dados de forma direta. Assim, o desenvolvimento dos sistemas passa a ficar simplificado e acelerado.

https://blog.betrybe.com/tecnologia/encapsulamento/#:~:text=O%20encapsulamento%20transforma%20a%20implementa%C3%A7%C3%A3o,a%20ficar%20simplificado%20e%20acelerado.

===============================

[]'s,

Fabio I.

Muito obrigado senhores pela excelente explicação!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software