Hva skjuler data?
Data skjul er en metode som brukes i objektorientert programmering for å skjule informasjon innen datakode. Objekter i en kode er ikke interessert i informasjon som anses som skjult. Det gir flere fordeler for programmerere, fordi objekter ikke klarer å koble til irrelevante data og det er mindre sannsynlig at hackere kan få tilgang til data. Samtidig kan skjul av data gjøre det vanskeligere for en programmerer, som kan trenge å bruke mer kode for å skape effekter i skjulte data enn det som ville være nødvendig hvis dataene var offentlige.
Objektorientert programmering er en type programmering der deler av koden er delt opp i objekter. Hver av disse objektene er programmert i kapsler, så hvert objekt har sin egen koding som bare gjelder det objektet. Uten å spesifisere data som skjult, er alle dataene åpne for objektene.
Data skjuler tar visse deler av koden og skjuler disse delene fra objektene. Objektene har ikke direkte tilgang til data som er skjult. Hvis et objekt får tilgang til skjulte data, vil det returnere en feil. Dette er fordi objektet ikke kan se dataene, så noen funksjoner eller data som er merket som skjult vil se usynlige ut for objektet. Oftest er dataene som er skjult de interne komponentene som ikke er nødvendig av brukeren, og kan vise seg farlige hvis dataene blir lagt åpne for brukeren.
Fordelen for programmerere er at det ikke er noen måte for en programmerer å tilfeldigvis koble til feil data. Data skjuling sikrer at hvis en programmerer gjør denne koblingen, vil programmet ganske enkelt returnere en feil slik at programmereren raskt kan rette opp feilen. Dette sikrer også at alle objektene virkelig er isolerte enheter, som er hovedbegrepet med objektorientert koding. Flyktige data er vanligvis skjult fordi, hvis slike data ble offentliggjort, det kan skade objektet og ødelegge hele programmet.
En annen fordel med data skjul er økt sikkerhet mot hackere. Hvis alle interne data er offentlige, kan en hacker enkelt presse seg inn i de interne dataene og gjøre endringer for å manipulere programmet skadelig. Ved å skjule dataene, er det mye vanskeligere å knekke koden, fordi dataene vil vises usynlige for objektene og hackeren.
Ulempen med skjul av data er at det noen ganger kan tvinge programmerere til å bruke ekstra koding. Hvis en programmerer kan koble til skjulte data, kan den få objekter til å fungere raskere eller kutte ned på en stor mengde kode. De fleste programmerere holder ikke all informasjon offentlig, på grunn av alle problemene forbundet med denne typen koding.