Som en programmerer , det er tider når du ønsker å sette ekstra nivåer av beskyttelse rundt viktige datatyper , for eksempel variable verdier, som er avgjørende for et program sikkerhet eller stabilitet . Du kan gjøre dette ved å gjøre dem ugjennomsiktig eller innkapsle dataene i strukturer som den viktigste delen av programmet ikke har tilgang til. Abstraksjon
hjelp ugjennomsiktige datatyper er en slags abstraksjon . I abstraksjon, kan datastrukturen aktuelle ikke direkte modifisert av hoveddelen av programmet. Snarere kan det bare bli endret av funksjoner som ligger innenfor koden konstruksjon som omslutter de aktuelle dataene . Et enkelt eksempel på dette er en " struktur " eller en " struct . " Structs er en organisert kropp av data som bare kan endres av hovedprogrammet ved å gå gjennom struct selv.
Object -Oriented Programming
Et annet sted hvor metoder for abstraksjon er ansatt er i objekt - orienterte programmer . I objektorientert programmeringsspråk , skaper programmerer en kode struktur som kalles en " klasse ". Denne klassen vil inneholde en kombinasjon av variabler og funksjon som modifiserer verdien av disse variable. Disse variablene er beskyttet fra hovedprogrammet tilgang til eller endre sine verdier direkte. For å endre variablene , må programmet kalle en av funksjonene innenfor den variable klassen til å gjøre det .
Opacity i praksis
Mens abstraksjon vanligvis innebærer maskering evnen til å endre en datastruktur bortsett fra gjennom bestemte kanaler , er datastrukturer som er gjort ugjennomsiktig ikke ment å bli endret i det hele tatt . Det kan være flere grunner for en programmerer å gjøre dette. Man kunne være å lage et verktøy for andre programmerere der en komponent er ment å aldri bli rørt å sørge for at verktøyet fungerer korrekt . En annen handler om å beskytte datastrukturer i kildekoden som er ment å være oppdatert og kompileres på nytt . Visse viktige datastrukturer kan endres hvis de er venstre være ved oppstillingen prosessen, som ville bryte hele programmet .
Opaque pekere
en måte som datastrukturer er gjort ugjennomsiktig er ved hjelp av ugjennomsiktige pekere. Når et program kjører , tildeler maskinen minneadresser for data vil programmet trenger å lagre . En peker holder minnet adressen der en bestemt stykke data er skjult . Mens vanlige data at programmet vil få tilgang til og manipulere på en jevnlig basis bruker pekere til enkel samtale opp dataene. Ugjennomsiktig pekere ringe opp data uten å definere det , begrenser programmet fra å endre data på en bestemt adresse .