Skrivanje podatkov je metoda, ki se uporablja v objektno usmerjenem programiranju za skrivanje informacij v računalniški kodi. Predmeti znotraj kode niso zaupni informacijam, ki se štejejo za skrite. Programerjem predstavlja več prednosti, saj se objekti ne morejo povezati z nepomembnimi podatki in je manj verjetno, da bodo hekerji imeli dostop do podatkov. Hkrati lahko skrivanje podatkov oteži programerja, ki bo morda moral uporabiti več kode za ustvarjanje učinkov v skritih podatkih, kot bi bilo potrebno, če bi bili podatki javni.
Objektno usmerjeno programiranje je vrsta programiranja, pri kateri so deli kode razdeljeni na predmete. Vsak od teh objektov je programiran v kapsulah, tako da ima vsak objekt svoje kodiranje, ki velja samo za ta objekt. Brez navedbe podatkov kot skritih so vsi podatki odprti za predmete.
Skrivanje podatkov vzame določene dele kode in jih skrije pred predmeti. Objekti ne morejo neposredno dostopati do podatkov, ki so skriti. Če predmet dostopa do skritih podatkov, bo vrnil napako. To je zato, ker objekt ne vidi podatkov, zato bodo vse funkcije ali podatki, ki so označeni kot skriti, objektu videti nevidni. Večino časa so podatki, ki so skriti, notranje komponente, ki jih uporabnik ne potrebuje in se lahko izkažejo za nevarne, če so podatki odprti za uporabnika.
Prednost za programerje je, da programer ne more pomotoma povezati z napačnimi podatki. Skrivanje podatkov zagotavlja, da če programer vzpostavi to povezavo, bo program preprosto vrnil napako, tako da lahko programer napako hitro popravi. To tudi zagotavlja, da so vsi objekti resnično izolirane enote, kar je glavni koncept objektno usmerjenega kodiranja. Nestanovitni podatki so običajno skriti, ker bi lahko, če bi bili ti podatki objavljeni, poškodovali objekt in uničili celoten program.
Druga prednost skrivanja podatkov je povečana varnost pred hekerji. Če so vsi notranji podatki javni, lahko heker zlahka vdre v notranje podatke in naredi kakršne koli spremembe, da zlonamerno manipulira s programom. S skrivanjem podatkov je veliko težje vdreti kodo, saj bodo podatki predmetom in hekerjem videti nevidni.
Pomanjkljivost skrivanja podatkov je, da lahko včasih prisili programerje v uporabo dodatnega kodiranja. Če se programer lahko poveže s skritimi podatki, lahko pospeši delovanje objektov ali zmanjša veliko količino kode. Večina programerjev pa zaradi vseh težav, povezanih s to vrsto kodiranja, vseh informacij ne objavlja.