Olá pessoal, neste artigo veremos os principais conceitos sobre Encapsulamento. Acompanhem:
Encapsulament é a técnica que faz com que detalhes internos do funcionamento dos métodos de uma classe permaneçam ocultos para os objetos. Por conta dessa técnica, o conhecimento a respeito da implementação interna da classe é desnecessário do ponto de vista do objeto, uma vez que isso passa a ser responsabilidade dos métodos internos da classe.
Assim que uma classe é criada, seu código e seus dados, os quais são chamados de membros da classe, são determinados. Esses dados recebem o nome de variáveis membro ou variáveis de instância. Já o código tem outra função de formar os métodos, os quais também podem ser denominados como métodos membro.
Os métodos presentes em um programa desenvolvido em C# são responsáveis por determinar a maneira como serão utilizadas as variáveis membro, o que indica que os métodos cuja função é operar sobre os dados de instância de uma classe determinam qual será a interface e o comportamento apresentados por ela.
Obs: Em um artigo futuro veremos os conceitos e exemplo prático sobre Interfaces.
Tendo em mente que os métodos e as variáveis de uma classe podem ser definidos como públicos ou privados, temos a seguinte situação:
- Tudo o que o usuário externo precisa conhecer a respeito de uma classe encontra-se em propriedades ou métodos declarados como públicos (public).
- Somente os códigos membros da classe são capazes de acessar seus métodos e variáveis privados. Isso garante que não ocorrerão ações inadequadas, mas exige que a interface pública seja planejada com cautela para que o funcionamento interno da classe não seja muito exposto.
Saiba mais: Encapsulamento, Polimorfismo, Herança em Java
Dito tudo isto, podemos concluir que a única forma de conhecer ou alterar os atributos de um objeto é por meio de seus métodos. Abaixo cito quatro vantagens do encapsulamento:
- O objeto é disponibilizado ao usuário com toda a sua funcionalidade, sem a necessidade de conhecermos seu funcionamento ou armazenamento interno;
- É possível modificar um objeto internamente, acrescentando métodos, sem que isto afete os outros componentes do sistema que utilizam o objeto modificado;
- O processo de desenvolvimento de sistemas é acelerado e simplificado, já que os usuários dos objetos não precisam necessariamente saber como eles são constituídos internamente;
- A implementação de um comportamento pode ser modificada radicalmente sem que haja impacto no resto do programa. Isto é possível porque o código que utiliza o objeto não depende da maneira que ele é implementado.
Saiu na DevMedia!
- CSS Tutorial: da Sintaxe ao Flexbox:
CSS é um item que não pode faltar na caixa de ferramentas de um programador web, pois é com ela que descrevemos para o navegador como os elementos em uma página serão apresentados para o usuário. - Guia de React Native: do Hello World ao CRUD:
React é um framework JavaScript criado pelo Facebook para facilitar a construção de interfaces de usuário. React Native, da mesma empresa, nos permite criar aplicações mobile nativas utilizando JavaScript, na lógica, e React, para estruturar as views. No DevCast abaixo matamos a sua curiosidade sobre como isso tudo se parece na prática. Assista. - Guia de Levantamento de Requisitos:
Nesta série, falamos sobre as técnicas, como conduzir uma reunião com o cliente e gerar os documentos mínimos necessários para o levantamento dos requisitos do software. Confira!
Saiba mais sobre Encapsulamento ;)
- Abstração, Encapsulamento e Herança: Pilares da POO em Java:
Veja neste artigo três dos pilares da Programação Orientada a Objetos: Abstração, Encapsulamento e Herança. Serão apresentados, além dos conceitos, exemplos práticos implementados na linguagem Java. - Classes Abstratas e Encapsulamento:
Uma classe abstrata é desenvolvida para representar entidades e conceitos abstratos. - Encapsulamento em Java: Primeiros passos:
Veja nesse artigo como aumentar a segurança e a qualidade do código através do correto uso de encapsulamento.