O documento descreve o conceito de encapsulamento em programação orientada a objetos. Ele encapsula os dados e métodos de um objeto, expondo somente interfaces públicas para interação. Isso torna o software mais flexível, independente e fácil de modificar, já que as implementações internas são ocultadas dos usuários.
2. O que e ?
Encapsulamento vem de encapsular, que em programação orientada a
objetos significa juntar o programa em partes, o mais isoladas possível. A
ideia é tornar o software mais flexível, fácil de modificar e de criar novas
implementações
3. Exemplos
Telefone
interface pública- botões utilizados para interagir com o objeto
implementação - as operações internas, o propósito do objeto
Carro
interfaces públicas - pedais, direção, câmbio
implementação - o funcionamento do carro
5. Principais Vantagens
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
6. Por que encapsular
Independência significa que você pode reutilizar o objeto em qualquer
lugar.
O encapsulamento permite que você torne transparentes as alterações
em seu objeto.
Usar um objeto encapsulado não causará efeitos colaterais inesperados
entre os objetos e o restante do programa.
7. As três características do encapsulamento eficaz
são
• Abstração
• Ocultação da implementação
• Divisão da responsabilidade
8. Exemplo
1. Quando um controle remoto estraga apenas é trocado ou
consertado o controle e não a televisão inteira. Nesse exemplo do
controle remoto, acontece a forma clássica de encapsulamento,
pois quando o usuário muda de canal não se sabe que
programação acontece entre a televisão e o controle para efetuar
tal ação.
2. Um sistema de vendas, aonde temos cadastros de funcionários,
usuários, gerentes, clientes, produtos entre outros. Se por acaso
acontecer um problema na parte do usuário é somente nesse setor
que será realizada a manutenção não afetando os demais.