Ascunderea informațiilor, în ceea ce privește computerele, se referă la păstrarea părților unui program separate de alte părți. Există multe motive pentru a face acest lucru, unul dintre cele mai comune fiind ușurința de actualizare. Dacă un program își păstrează nucleul separat de interfața sa, atunci unul sau altul poate fi schimbat cu ușurință fără a-și afecta partenerul. Acest lucru permite mici modificări ale caracteristicilor de bază ale programului sau potențialul pentru o interfață scalabilă, oferind în același timp un proces simplu de actualizare pentru program. Partea cheie a ascunderii informațiilor este încapsularea, menținând fiecare segment al programului separat de toate celelalte.
Există multe moduri diferite de a scrie programe de calculator. Limbajele timpurii solicitau programatorului să scrie programul într-o secvență continuă; prima linie a programului era în partea de sus, iar ultima linie era în partea de jos. Pe măsură ce programul a funcționat, practic sa mutat în jos prin cod.
Limbajele de programare moderne rareori funcționează într-o manieră atât de strictă. Mulți se bazează pe „obiecte” individuale care vor îndeplini fiecare o anumită sarcină. Acest lucru nu numai că simplifică scrierea programului, dar permite ca o anumită bucată de cod să funcționeze din nou și din nou, fără a fi nevoie să fie rescrisă. De exemplu, dacă programul necesită un rezultat de la o anumită funcție matematică de cinci ori, în loc să scrie acel proces de cinci ori, programatorii vor transforma acea funcție într-un obiect și vor solicita programului să o apeleze de cinci ori.
Procesele utilizate în ascunderea informațiilor se bazează pe natura obiectului programării. Când scrieți un program care utilizează aceste concepte, obiectele sunt desemnate pentru porțiuni individuale ale programului. În acest caz, un anumit obiect poate avea mai multe versiuni, fiecare apelată de un segment diferit al programului. În exemplul de mai sus, același apel este efectuat de cinci ori în program. Dacă două dintre aceste apeluri ar fi făcute de interfață și programul de bază a făcut trei, atunci programatorii ar scrie două obiecte care erau practic identice.
Principalul motiv pentru care programele folosesc ascunderea informațiilor este simplificarea modificărilor. Dacă o porțiune a programului folosește doar propriile obiecte, este mai ușor să modificați acea parte a programului. Dacă obiectele sunt partajate în cadrul programului, o mică modificare ar putea cauza o defecțiune într-o parte a sistemului care aparent nu are legătură.
Motivul secundar pentru ascunderea informațiilor este securitatea. Dacă fiecare parte a unui program funcționează cât mai independent posibil, este mai dificil ca un proces dăunător să treacă în cascadă prin sistem. De exemplu, dacă un program rău intenționat obține acces la o anumită parte a sistemului încapsulat, poate accesa doar partea pe care o întâlnește inițial. Celelalte părți ale programului rămân, cel puțin temporar, neatinse.