Opaque datatyper

Opaque datatyper


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 hoveddelen av programmet ikke har tilgang til.

Abstraksjon

Ved hjelp av ugjennomsiktige datatyper er en form for abstraksjon. I abstraksjon, datastrukturen i det ikke mulig direkte modifisert ved hoveddelen av programmet. Snarere kan det bare endres av funksjoner som ligger i koden konstruksjon som omslutter data det gjelder. Ett enkelt eksempel på dette er en "struktur" eller en "struct". Structs er en organisert legeme materiale som kun kan modifiseres ved hovedprogrammet ved å gå gjennom struct selv.

Objektorientert programmering

Et annet sted hvor metoder for abstraksjon er ansatt i objektorienterte programmer. I objektorienterte programmeringsspråk, skaper programmerer en kodestruktur som kalles en "Class". Denne klassen vil inneholde en kombinasjon av variabler og funksjon som modifiserer verdien av disse variable. Disse variablene er beskyttet mot hovedprogrammet tilgang til eller endre sine verdier direkte. For å endre variablene, må programmet kalle en av funksjonene innenfor den variable klasse å gjøre det.

Opacity i praksis

Mens abstraksjon vanligvis innebærer maske muligheten til å endre en datastruktur uten gjennom bestemte kanaler, er datastrukturer som er gjort ugjennomsiktig ikke ment å bli endret i det hele tatt. Det kan være en rekke 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 for å sikre at verktøyet fungerer riktig. En annen handler om å beskytte datastrukturer i kildekoden som er ment å være oppdatert og rekompileres. Visse viktige datastrukturer kan endres hvis de blir stående være ved oppstillingen prosessen, som ville bryte hele programmet.

Opaque Pekere

En måte som datastrukturer er gjort opak, er ved hjelp opake pekere. Når et program kjøres, tildeler datamaskinen minneadresser for data programmet trenger å lagre. En peker holder lageradressen i hvilken en bestemt del av data er skjult. Mens vanlige data som programmet vil få tilgang til og manipulere regelmessig bruk pekere til enkel samtale opp dataene. Opaque pekere hente data uten å definere det, begrenser programmet fra å endre data på en bestemt adresse.