10 março 2010

Programacao Orientada a Objetos - Parte 1.3 - Encapsulamento

Da internet: “Encapsulamento vem de encapsular, o que em programação orientada a objetos significa separar o programa em partes, as mais isoladas possíveis. A idéia é tornar o software mais flexível, fácil de modificar e de criar novas implementações”. (Fonte: Wikipedia.org).

Dessa forma, podemos voltar a abstração com o seguinte exemplo: "O seu computador, imagine se para ligá-lo, mas em uma situação em que o pc já estivesse todo montado lógico, você ligaria o cabo de energia do estabilizador na tomada. Depois liga o estabilizador, liga o pc, espera carregar o sistema operacional, quando ele carregar, digita a senha e por aí vai..

Bastaria dizer que você ligaria o seu computador, que qualquer um iria entender facilmente o que você iria fazer.

Se fóssemos explicar como é o funcionamento de um pc de uma forma bem aprofundada, provavelmente muitas pessoas iriam desistir de usa-lo. Uma pessoa saber, por exemplo que os dados ficam no HD, que se o cooler está girando é porque ele está ajudando a resfriar sua máquina, entre outros, já é o suficiente. Até porque a maior parte dos detalhes de um HD está dentro dele mesmo, mas nesse caso o HD em questão está dentro do seu gabinete e normalmente um usuário comum não conhece muito bem como é um gabinete internamente. Ou seja, tudo isso, os detalhes de um HD ou como é dentro de um gabinete são informações que estão encapsuladas dentro de cada peça, por exemplo o HD. Um usuário não sabe como é o seu HD internamente, mas sabe pelo menos, para o que ele serve, o que ele não sabe, as informações técnicas, de como é dentro da peça, estão encapsuladas dentro do mesmo. Até porque, um usuário comum não irá ter ascesso a um HD internamente para ver o seu funcionamento.

Resumindo: a Abstração resumi um cenário complexo em termos simples, o Encapsulamento esconde os informações mais complexas que normalmente você não irá acessar e assim escondem detalhes mais técnicos de seu funcionamento que de certa forma poderiam inibir você de usar aquele objeto. Imagine se você tivesse que saber qual célula de seu notebook está com carga a cada vez que você fosse usar? Difícil não é?

No próximo post da série falarei de Herança. Confira!

Até o próximo post... 

Nenhum comentário:

Postar um comentário