Sammenligningstabel
Grundlag for sammenligning | abstraktion | Data gemmer sig |
---|---|---|
Grundlæggende | Uddrag kun relevant information og ignorere inessential detaljer. | Skjuler dataene fra programmets dele. |
Formål | At skjule kompleksiteten. | For at opnå indkapsling. |
klasse | Klassen bruger abstraktionen til at udlede en ny brugerdefineret datatype. | Data skjuling bruges i en klasse til at gøre sine data private. |
Fokuserer på | Observable adfærd af dataene. | Begrænsning eller tillade brug af data inden for en kapsel. |
Definition af abstraktion
Abstraktion bruges primært til at skjule kompleksiteten. Det angiver de nødvendige egenskaber ved et objekt, der adskiller det fra alle andre typer objekter. En abstraktion koncentrerer sig om det ydre aspekt af et objekt. For et objekt giver abstraktion adskillelsen af den afgørende adfærd fra dens gennemførelse. Det specificerer en begrebsmæssig grænse i forhold til seeren. En ordentlig abstraktion understreger de detaljer, der er vigtige for læseren eller brugeren og undertrykker funktioner, der er irrelevante og afvigende.
Brugerdefinerede datatyper oprettes ved at definere abstrakte attributter og funktioner i en klasse til at designe real-world objekter med samme egenskaber. Disse attributter er kendt som data medlemmer fordi de indeholder oplysningerne. På samme måde kendes de funktioner, der fungerer på disse data, som medlemsfunktioner. Dataabstraktion implementeres som en klasse, der repræsenterer de væsentlige egenskaber uden at inkludere baggrundsforklaringerne.
Typer af abstraktion:
- Procedural abstraktion - Den indeholder en række af instruktionerne med de angivne funktioner.
- Dataabstraktion - Det er et sæt data, der specificerer og beskriver en dataobjekt.
- Kontrol abstraktion - Det er programstyringsmekanisme, hvor indvendige detaljer ikke er specificeret.
Definition af data gemmer sig
Data gemmer indebærer at gemme dataene fra komponenterne i programmet, der ikke skal hentes. Isoleringen af dataene fra programmets direkte adgang kaldes data skjule eller information skjule. Til implementering af data gemmer indkapsling, hvor data og funktion af en klasse er beskyttet mod uautoriseret adgang. I modsætning hertil, når data og funktion er indkapslet i en enkelt enhed, kaldes indkapsling. Dermed hjælper de data, der skjuler med at opnå indkapslingen. Funktionelle detaljer af en genstand kan håndteres via adgangsspecifikationer.
Ved hjælp af data skjule begreber, er data og funktion i en klasse lavet privat, så det ikke kunne nås fejlagtigt af funktionerne uden for klassen og beskyttet mod utilsigtet ændring.
Nøgleforskelle mellem abstraktion og data skjule
- Abstraktion viser de relevante oplysninger og afviser de ikke-væsentlige detaljer. På den anden side bruges data gemt til at skjule data fra de dele af programmet.
- Det tidligere formål med abstraktion er at skjule den komplekse implementeringsdetalje for programmet eller softwaren. Tværtimod er dataforskydning implementeret for at opnå indkapsling.
- Abstraktion bruges i klassen til at oprette en ny brugerdefineret datatype. I modsætning til i klasser er data skjuling brugt til at gøre dataene private.
- Abstraktionen koncentrerer sig om dataens observerbare opførsel, mens data skjuler begrænser eller tillader brugen af data i en kapsel.
Konklusion
Både abstraktion og data gemmer sig udelukkende for at vise de nødvendige oplysninger og skjule oplysninger om inessentials, men for det særskilte formål. Abstraktion lægger vægt på at skjule implementeringskompleksiteten, mens der i data gemmer fremhævelsen er givet til beskyttelse af data mod uautoriseret adgang.