Como programador , há momentos em que você quer colocar níveis extra de proteção em torno de tipos de dados importantes, tais como os valores das variáveis , que são essenciais para a segurança ou a estabilidade de um programa. Você pode fazer isso , tornando-os opacos ou encapsular os dados em estruturas que a parte principal do programa não pode acessar. Abstração
Usando tipos de dados opacos é uma espécie de abstração. Na abstracção , a estrutura de dados em causa não pode ser directamente modificada pelo corpo principal do programa . Em vez disso , ela só pode ser modificado por funções que se encontram no interior da construção de código que encapsula os dados em causa . Um exemplo simples disso é uma "estrutura " ou um " struct ". As estruturas são um corpo organizado de dados que só pode ser modificada pelo programa principal , passando pelo próprio struct .
Programação Orientada a Objetos
Outro lugar onde os métodos de abstração são empregados é em programas orientados a objetos . Em linguagens de programação orientadas a objeto , o programador cria uma estrutura de código chamado de "classe ". Essa classe contém uma combinação de variáveis e funções que modificam o valor dessas variáveis. Essas variáveis são protegidos contra o programa principal acessar ou alterar seus valores diretamente. Para alterar as variáveis , o programa deve chamar uma das funções dentro de que as variáveis de classe de fazê-lo .
Opacidade na Prática
Enquanto abstração geralmente envolve mascaramento a capacidade para mudar uma estrutura de dados , excepto pelos canais específicos , as estruturas de dados que são feitas opacas não são destinadas a ser modificada em tudo . Pode haver uma série de razões para um programador para fazer isso. Uma poderia ser tomada uma ferramenta para outros programadores onde um componente se destina a ser tocado não para garantir que a ferramenta funciona correctamente . Outra envolve proteger as estruturas de dados no código fonte que se destina a ser atualizado e recompilados . Certas estruturas de dados essenciais podem ser alterados se forem deixados ser durante o processo de compilação , o que quebraria todo o programa.
Opaque Ponteiros
Uma maneira em que as estruturas de dados são feitos opaco é usando ponteiros opacos. Quando um programa é executado, o computador atribui endereços de memória para dados do programa terá de loja. Um ponteiro contém o endereço de memória em que uma parte específica de dados está oculto. Embora os dados regulares que o programa vai acessar e manipular em um ponteiros regulares de uso base a simples chamada de segurança dos dados . Ponteiros opacos chamar dados sem defini-la , restringindo o programa de modificar os dados em um endereço particular.