Co je skrývání dat?
Skrývání dat je metoda používaná v objektově orientovaném programování ke skrytí informací v počítačovém kódu. Objekty v kódu se nezabývají informacemi považovanými za skryté. Programátorům přináší několik výhod, protože objekty se nemohou připojit k irelevantní datům a hackeři s menší pravděpodobností budou mít přístup k datům. Současně může skrývání dat ztěžovat programátora, který možná bude muset použít více kódu k vytvoření efektů ve skrytých datech, než by bylo nutné, kdyby byla data veřejná.
Objektově orientované programování je typ programování, ve kterém jsou části kódu rozděleny do objektů. Každý z těchto objektů je naprogramován v kapslích, takže každý objekt má své vlastní kódování, které se vztahuje pouze na tento objekt. Bez určení dat jako skrytých jsou všechna data otevřena objektům.
Skrytí dat vezme určité části kódu a skryje tyto části z objektů. Objekty nemohou přímo přistupovat ke skrytým datům. Pokud objekt nemá přístup ke skrytým datům, vrátí chybu. Je to proto, že objekt nemůže vidět data, takže jakékoli funkce nebo data, která jsou označena jako skrytá, budou pro objekt vypadat neviditelně. Nejčastěji jsou skrytá data interními komponentami, které uživatel nepotřebuje, a mohou se ukázat jako nebezpečné, pokud jsou pro uživatele otevřena.
Výhoda pro programátory spočívá v tom, že neexistuje způsob, jak programátor omylem propojit nesprávná data. Skrytí dat zajišťuje, že pokud programátor provede toto propojení, program jednoduše vrátí chybu, takže programátor může chybu rychle opravit. To také zajišťuje, že všechny objekty jsou skutečně izolované jednotky, což je hlavní koncept objektově orientovaného kódování. Těkavá data jsou obvykle skrytá, protože pokud by byla zveřejněna, mohla by poškodit objekt a zničit celý program.
Další výhodou skrytí dat je zvýšené zabezpečení proti hackerům. Pokud jsou všechna interní data veřejná, hacker se může snadno vtlačit do interních dat a provést jakékoli změny, aby mohl program nebezpečně manipulovat. Skrytím dat je mnohem těžší prolomit kód, protože data se pro objekty a hackerů jeví neviditelná.
Nevýhodou skrývání dat je, že může někdy nutit programátory, aby používali zvláštní kódování. Pokud je programátor schopen propojit skrytá data, může objekty urychlit práci nebo omezit velké množství kódu. Většina programátorů však nezveřejňuje všechny informace kvůli všem problémům spojeným s tímto typem kódování.