Primerjalna tabela
Podlaga za primerjavo | Abstrakcija | Skrivanje podatkov |
---|---|---|
Osnovno | Izvleče samo pomembne informacije in ne upošteva bistvenih podrobnosti. | Podatke iz delov programa skrije. |
Namen | Skriti kompleksnost. | Za dosego enkapsulacije. |
Razred | Razred uporablja abstrakcijo za izpeljavo novega uporabniško definiranega tipa podatkov. | Skrivanje podatkov se uporablja v razredu, da so njegovi podatki zasebni. |
Osredotoča se na | Opazovano vedenje podatkov. | Omejevanje ali dovoljevanje uporabe podatkov znotraj kapsule. |
Opredelitev abstrakcije
Abstrakcija se uporablja predvsem za skrivanje kompleksnosti. Označuje potrebne značilnosti predmeta, ki ga razlikuje od vseh drugih vrst objektov. Abstrakcija se osredotoča na zunanji vidik objekta. Pri predmetu abstrakcija zagotavlja ločevanje ključnega vedenja od njegovega izvajanja. Določa konceptualno mejo glede na pogled gledalca. Pravilna abstrakcija poudarja podrobnosti, ki so pomembne za bralca ali uporabnika, in zatreti značilnosti, ki so nepomembne in deviantne.
Uporabniško definirani podatkovni tipi so ustvarjeni z definiranjem abstraktnih atributov in funkcij znotraj razreda za oblikovanje objektov iz resničnega sveta, ki imajo podobne lastnosti. Ti atributi so znani kot podatkovni člani, ker vsebujejo informacije. Podobno so funkcije, ki delujejo na teh podatkih, znane kot funkcije članov. Apstrakcija podatkov je izvedena kot razred, ki predstavlja bistvene lastnosti, brez vključitve ozadja.
Vrste abstrakcije:
- Postopkovna abstrakcija - vključuje niz navodil, ki imajo določene funkcije.
- Abstrakcija podatkov - To je niz podatkov, ki podaja in opisuje podatkovni objekt.
- Abstrakcija nadzora - To je programski kontrolni mehanizem, kjer notranjosti niso določene.
Opredelitev skrivanja podatkov
Skrivanje podatkov pomeni skrivanje podatkov iz komponent programa, ki jih ni treba priklicati. Izolacija podatkov iz neposrednega dostopa s strani programa se imenuje skrivanje podatkov ali skrivanje informacij. Za izvedbo skrivanja podatkov se uporablja enkapsulacija, kjer so podatki in funkcija razreda zaščiteni pred nepooblaščenim dostopom. V nasprotju s tem, ko so podatki in funkcija zajeti v eni enoti, je znana kot enkapsulacija. Zato skrivanje podatkov pomaga pri doseganju enkapsulacije. Funkcionalne podrobnosti objekta se lahko obdelujejo s pomočjo specifikatorjev dostopa.
Z uporabo konceptov skrivanja podatkov se podatki in funkcija v razredu naredijo zasebni, tako da jih ne morejo lažno dostopati funkcije zunaj razreda in zaščitene pred nenamernimi spremembami.
Ključne razlike med abstrakcijo in skrivanjem podatkov
- Izvleček prikazuje ustrezne informacije in zavrača nebistvene podrobnosti. Po drugi strani pa se skrivanje podatkov uporablja za skrivanje podatkov iz delov programa.
- Predhodni namen abstrakcije je skriti zapletene podrobnosti izvajanja programa ali programske opreme. Nasprotno, skrivanje podatkov se izvaja za dosego enkapsulacije.
- Abstrakcija se v razredu uporablja za ustvarjanje novega uporabniško definiranega tipa podatkov. V nasprotju s tem se v razredih skrivajo podatki, ki omogočajo zasebnost podatkov.
- Abstrakcija se osredotoča na opazno vedenje podatkov, medtem ko podatki, ki jih skriva, omejujejo ali dovoljujejo uporabo podatkov znotraj kapsule.
Zaključek
Abstrakcija in skrivanje podatkov sta namenjena prikazovanju zahtevanih informacij in skrivanju nebistvenih podrobnosti, vendar za poseben namen. Abstrakcija poudarja skrivanje kompleksnosti izvajanja, medtem ko pri podatkih, ki skrivajo, je poudarek na zaščiti podatkov pred nepooblaščenim dostopom.