Kaj skrivajo informacije?

Skrivanje informacij, kar se nanaša na računalnike, pomeni ločevanje delov programa od drugih delov. Razlogov za to je veliko, eden najpogostejših pa je enostavnost nadgradnje. Če program ohrani svoje jedro ločeno od vmesnika, potem lahko enega ali drugega enostavno spremenite, ne da bi to vplivalo na partnerja. To omogoča majhne spremembe osnovnih funkcij programa ali možnosti za razširljiv vmesnik, hkrati pa zagotavlja preprost postopek nadgradnje programa. Ključni del skrivanja informacij je enkapsulacija, ki ohranja vsak segment programa ločen od vseh drugih.

Obstaja veliko različnih načinov za pisanje računalniških programov. Zgodnji jeziki so zahtevali, da programer napiše program v neprekinjenem zaporedju; prva vrstica programa je bila na vrhu, zadnja vrstica pa na dnu. Ko je program deloval, se je v bistvu premikal navzdol po kodi.

Sodobni programski jeziki le redko delujejo na tako strog način. Mnogi se zanašajo na posamezne “predmete”, od katerih bo vsak opravil določeno nalogo. To ne le poenostavi pisanje programa, ampak omogoča, da določen del kode deluje znova in znova, ne da bi ga bilo treba znova pisati. Na primer, če program zahteva petkrat rezultat določene matematične funkcije, namesto da bi ta proces petkrat napisal, bodo programerji to funkcijo naredili v objekt in jo program petkrat priklical.

Procesi, ki se uporabljajo pri skrivanju informacij, se zanašajo na objektno naravo programiranja. Ko pišete program, ki uporablja te koncepte, so predmeti določeni za posamezne dele programa. V tem primeru ima lahko določen objekt več različic, od katerih vsako pokliče drugačen segment programa. V zgornjem primeru je isti klic izveden petkrat v programu. Če bi dva od teh klicev izvedel vmesnik in jedrni program naredil tri, bi programerji napisali dva objekta, ki sta bila praktično identična.

Glavni razlog, zakaj programi uporabljajo skrivanje informacij, je poenostavitev sprememb. Če del programa uporablja samo lastne objekte, je ta del programa lažje spremeniti. Če so predmeti v skupni rabi v celotnem programu, lahko ena majhna sprememba povzroči okvaro v navidez nepovezanem delu sistema.

Sekundarni razlog za skrivanje informacij je varnost. Če vsak del programa deluje čim bolj neodvisno, je škodljiv proces težje preiti skozi sistem. Na primer, če zlonamerni program pridobi dostop do določenega dela inkapsuliranega sistema, lahko dostopa le do tistega dela, s katerim se najprej sreča. Ostali deli programa ostajajo, vsaj začasno, nedotaknjeni.