Βασική διαφορά: Η απόκρυψη δεδομένων, γνωστή και ως κρυπτογράφηση πληροφοριών ή ενσωμάτωση δεδομένων στην επιστήμη των υπολογιστών, είναι μια τεχνική ανάπτυξης λογισμικού που χρησιμοποιείται στον αντικειμενοστραφή προγραμματισμό (OOP). Χρησιμοποιείται κυρίως για την απόκρυψη λεπτομερειών εσωτερικού αντικειμένου, δηλαδή των αποφάσεων σχεδιασμού σε ένα πρόγραμμα υπολογιστή που είναι πιθανότερο να αλλάξουν. Η αφαίρεση είναι μια άλλη διαδικασία στην επιστήμη των υπολογιστών. Κρύβει μακριά λεπτομέρειες εφαρμογής από τα δεδομένα και τα προγράμματα. Παρουσιάζει μόνο τις σχετικές λεπτομέρειες, όπως απαιτείται από το πρόγραμμα.
Η απόκρυψη δεδομένων, γνωστή και ως κρυπτογράφηση πληροφοριών ή ενσωμάτωση δεδομένων στην επιστήμη των υπολογιστών, είναι μια τεχνική ανάπτυξης λογισμικού που χρησιμοποιείται στον αντικειμενοστραφή προγραμματισμό (OOP). Χρησιμοποιείται κυρίως για την απόκρυψη λεπτομερειών εσωτερικού αντικειμένου, δηλαδή των αποφάσεων σχεδιασμού σε ένα πρόγραμμα υπολογιστή που είναι πιθανότερο να αλλάξουν. Αυτό αποκρύπτει τα δεδομένα από άλλα προγράμματα μερών, έτσι ώστε όταν τα δεδομένα ή οι αποφάσεις σχεδιασμού αλλάζουν, δεν θα έχουν αντίκτυπο σε ολόκληρο το πρόγραμμα, μόνο τα μέρη από τα οποία δεν αποκρύπτονται τα στοιχεία. Αυτό με τη σειρά του καθιστά το συνολικό πρόγραμμα πολύ περισσότερο στάβλους, καθώς μια ενιαία αλλαγή σε ένα μέρος του προγράμματος δεν είναι πιθανό να αλλάξει ολόκληρο το πρόγραμμα.
Η απόκρυψη δεδομένων έχει επίσης τη δυνατότητα να αποτρέψει την πρόσβαση σε ορισμένους τομείς μιας κλάσης ή ενός στοιχείου λογισμικού στους πελάτες της. Αυτό επιτυγχάνεται χρησιμοποιώντας είτε λειτουργίες γλώσσας προγραμματισμού όπως ιδιωτικές μεταβλητές είτε μια ρητή πολιτική εξαγωγής. Η απόκρυψη δεδομένων μειώνει επίσης την πολυπλοκότητα του συστήματος για αυξημένη ευρωστία περιορίζοντας τις αλληλεξαρτήσεις μεταξύ των στοιχείων του λογισμικού.
Η αφαίρεση δεδομένων επιτρέπει στον προγραμματιστή να μειώσει και να παραγάγει λεπτομέρειες, ώστε να μπορεί να επικεντρωθεί σε μερικές έννοιες κάθε φορά. Εμφανίζει μόνο τις λεπτομέρειες που απαιτούνται από το χρήστη, ενώ όλες οι άλλες λεπτομέρειες και πληροφορίες είναι κρυμμένες. Αυτό εξομαλύνει τα διαθέσιμα δεδομένα, έτσι ώστε ο χρήστης να μην χρειάζεται να ασχολείται με λεπτομέρειες που δεν είναι απαραίτητες τη δεδομένη στιγμή.
Ένα σύστημα μπορεί να έχει πολλά επίπεδα αφαίρεσης. Κάθε στρώμα θα έχει διαφορετικές έννοιες και θα αποκρύπτει διαφορετικές λεπτομέρειες. Η Wikipedia παραθέτει αυτό το παράδειγμα: τα επίπεδα αφαίρεσης χαμηλού επιπέδου εκθέτουν λεπτομέρειες του υλικού του υπολογιστή όπου εκτελείται το πρόγραμμα, ενώ τα επίπεδα υψηλού επιπέδου ασχολούνται με την επιχειρησιακή λογική του προγράμματος.
Η κύρια διαφορά μεταξύ της απόκρυψης δεδομένων και της αφαίρεσης δεδομένων είναι ότι η απόκρυψη δεδομένων αποκρύπτει ορισμένα δεδομένα από τα υπόλοιπα μέρη του προγράμματος. Αυτά τα δεδομένα δεν είναι ποτέ διαθέσιμα για τα τμήματα του προγράμματος από τα οποία αποκρύπτεται, έως ότου ο προγραμματιστής ξαναγράψει τον κώδικα για να αποκρύψει τα δεδομένα. Ωστόσο, στην άντληση δεδομένων, τα δεδομένα δεν είναι εντελώς κρυμμένα. Δεν εμφανίζεται απλά επειδή δεν είναι προς το παρόν σχετικό. Αν τα δεδομένα γίνονταν σχετικά, τότε θα δείχνονταν.