Abstraksjon vs. innkapsling
Innhold
- Innhold: Forskjell mellom abstraksjon og innkapsling
- Sammenligningstabell
- Hva er abstraksjon?
- Eksempel
- Hva er innkapsling?
- Eksempel
- Viktige forskjeller mellom abstraksjon og innkapsling
- Konklusjon
Abstraksjon er en prosess av
samle avgjørende informasjon som vil gi et grunnlag for å bygge en
komplekst system. Innkapsling er en prosess for å utvikle et komplekst system mye
enklere å administrere sluttbruker, uten å bekymre seg for de indre kompleksitetene. De
forskjellen mellom abstraksjon og innkapsling er det
abstraksjon fokuserer på å identifisere de essensielle komponentene for å bygge en
system mens innkapsling fokuserer på å skjule de indre kompleksitetene i et system.
Innhold: Forskjell mellom abstraksjon og innkapsling
- Sammenligningstabell
- Hva er abstraksjon?
- Eksempel
- Hva er innkapsling?
- Eksempel
- Viktige forskjeller mellom abstraksjon og innkapsling
- Konklusjon
Sammenligningstabell
grunn~~POS=TRUNC | Abstraksjon | innkapsling |
Definisjon | Elementer som kreves for å utvikle en system. | Innkapsling er en prosess for å utvikle et komplekst system |
Oppnåelse | Oppnådd gjennom innkapsling. | Oppnådd gjennom å gjøre medlemmene av en klasse som privat. |
fokuserer | Fokus er på hva som bør gjøres | Fokus er på hvordan det skal gjøres. |
applikasjon | Under designnivå. | Under implementeringen nivå. |
eksempler | GUI for en mobiltelefon, den har noen ikoner å klikke på, som på klikk utfør den spesifikke funksjonen. | Når du klikker på ikonet, sluttbrukeren har ingen anelse om implementeringsdetaljene |
Hva er abstraksjon?
Abstraksjon er en mekanisme for å trekke ut de avgjørende elementene
for opprettelse av et system uten implementeringsdetaljer. I
abstraksjon, må vi bare konsentrere oss om hva som skal gjøres, i stedet for hvordan det blir gjort
må gjøres. Abstraksjon er en tankeprosess, den løser problemene ved designen
nivå.
Hierarkisk klassifisering hjelper oss å håndtere en kompleks abstraksjon. Det gjør oss i stand til å dele et komplisert system i håndterbare stykker og generere en lagdelt semantikk. Videre er det en generalisering.
Eksempel
La oss ta et godt eksempel på en bil, den er laget av en rekke undersystemer som motor, bremser, belysning, lydanlegg, stol og mye mer. ‘Bremsen’ som er et delsystem på en sykkel kan videre kategoriseres som forhjulsbrems og bakhjulsbrems, men generelt ser vi alle delsystemet som bremser. Så vi må administrere det komplekse systemet ved hierarkisk klassifisering, som hjelper oss å finne ut hva som er de avgjørende elementene som vil være nødvendige for å utvikle et system.
Så abstraksjon er bare å generalisere hva elementer er
viktig for å lage et system, dvs. plukke opp de viktige bare.
Hva er innkapsling?
Innkapsling er den viktige funksjonen i objektorientert programmering. Det er en mekanisme som
binder kode og data sammen og holder dem beskyttet mot det eksterne
innblanding. Det vil si at innkapsling skjuler et kompleksitet i et system,
siden nøkkelordet her er skjult data. Det ligner en beskyttende
innpakning som skjuler koden og dataene i klassen, hentes av
en annen kode som er definert utenfor klassen og medlemsfunksjonen / metoden
som ikke er medlemmene i klassen.
Når kode og data som fungerer
på disse dataene, er koblet i klassen, så blir objektene til denne klassen opprettet.
Tilgangen til elementene i elementet er begrenset av et godt definert grensesnitt
kjent som tilgangsspesifikator. Det er tre tilganger
spesifiserer i Java og C ++ Offentlig, Privat, Sikker.
Innkapslingen oppnås spesielt ved å lage koden
og data som fungerer på dataene, som private. De private medlemmene i klassen har ikke tilgang til fra koden som er definert
utenfor klassen. Det hjelper med å forhindre misbruk av data, mens det også skjuler kompleksiteten
av koden.
Eksempel
La oss ta et eksempel på en mobiltelefon. I en mobiltelefon, du
kan utføre mange funksjoner som å klikke på et bilde, spille inn en video / lyd,
ing, tilgang til nettet og mye mer. Du anser disse som
kjennetegn på en mobiltelefon. Men den endelige brukeren trenger ikke å gjøre det
forstå den interne kompleksiteten til disse funksjonene før du bruker disse
programmer, og du trenger heller ikke å endre funksjonaliteten til noen av funksjonene.
Så på denne måten skjuler innkapslingen kompleksiteten og
forhindre misbruk av dataene.
Viktige forskjeller mellom abstraksjon og innkapsling
- Abstraksjon fokuserer på komponenter som er nødvendige for
konstruere et system mens innkapsling fokuserer på å skjule kompleksiteten i
system. - Abstraksjonen gjøres under designnivået til et system og
innkapsling gjøres når systemet har
blitt implementert. - Hovedmotiv for abstraksjoner er hva som skal gjøres for å bygge
et system mens Encapsulations hovedmotiv er, hvordan det skal gjøres for å konstruere et system. - Abstraksjon oppnås av
innkapsling mens innkapslingen oppnås ved å lage elementene til
systemet privat.
Konklusjon
Abstraksjon og innkapsling
begge deler er den viktige egenskapen til OOP. En flott innkapsling kan oppnå en fantastisk abstraksjon.