Diferența principală: ascunderea datelor, cunoscută și sub numele de ascunderea informațiilor sau încapsularea datelor în domeniul informaticii, este o tehnică de dezvoltare software utilizată în programarea orientată-obiect (OOP). Este folosit în principal pentru a ascunde detaliile obiectului intern, adică deciziile de proiectare dintr-un program de calculator care sunt cel mai probabil să se schimbe. Abstractizarea este un alt proces în domeniul informaticii. Acesta ascunde detaliile de implementare din date și programe. Afișează numai detalii relevante atunci când este cerut de program.
Ascunderea datelor, cunoscută și sub numele de ascunderea informațiilor sau încapsularea datelor în domeniul informaticii, este o tehnică de dezvoltare software utilizată în programarea orientată-obiect (OOP). Este folosit în principal pentru a ascunde detaliile obiectului intern, adică deciziile de proiectare dintr-un program de calculator care sunt cel mai probabil să se schimbe. Aceasta ascunde datele din alte programe de piese, astfel încât atunci când datele sau deciziile de proiectare se schimbă, acestea nu vor avea un impact asupra întregului program, doar părțile de care nu sunt ascunse detaliile. Aceasta, la rândul său, face programul general mult mai multe grajduri, deoarece o singură modificare într-o parte a programului nu este de natură să schimbe întregul program.
De asemenea, ascunderea de date are capacitatea de a împiedica accesul anumitor aspecte ale unei clase sau ale unei componente software la clienții săi. Acest lucru se realizează utilizând fie funcții de limbaj de programare, cum ar fi variabilele private, fie o politică explicită de export. De asemenea, ascunderea de date reduce complexitatea sistemului pentru a spori robustețea prin limitarea interdependențelor dintre componentele software.
Abstractizarea datelor permite programatorului să reducă și să detalieze detaliile astfel încât să se poată concentra pe câteva concepte în același timp. Acesta afișează numai detaliile care sunt solicitate de utilizator, în timp ce toate celelalte detalii și informații sunt ascunse. Acest lucru simplifică faptul că datele disponibile, astfel încât utilizatorul să nu aibă de a face față unor detalii care nu sunt necesare în acel moment.
Un sistem poate avea mai multe straturi de abstractizare. Fiecare strat are semnificații diferite și ascunde detalii diferite. Wikipedia afișează acest exemplu: straturile de abstractizare de nivel inferior afișează detalii ale hardware-ului computerului în care se execută programul, în timp ce straturile de nivel înalt se ocupă de logica de afaceri a programului.
Principala diferență dintre ascunderea datelor și abstractizarea datelor este că ascunderea datelor ascunde unele date din celelalte părți ale programului. Aceste date nu sunt niciodată disponibile pentru părțile programului din care este ascunsă, până când programatorul rescrie codul pentru a dezvălui datele. Cu toate acestea, în ceea ce privește abstractizarea datelor, datele nu sunt complet ascunse. Acesta nu este prezentat, deoarece în prezent nu este relevant. Dacă datele ar deveni relevante, atunci ar fi arătat.