Erinevus Kapseldamise Ja Abstraktsiooni Vahel

Erinevus Kapseldamise Ja Abstraktsiooni Vahel
Erinevus Kapseldamise Ja Abstraktsiooni Vahel

Video: Erinevus Kapseldamise Ja Abstraktsiooni Vahel

Video: Erinevus Kapseldamise Ja Abstraktsiooni Vahel
Video: Келли МакГонигал: Как превратить стресс в друга? 2024, Mai
Anonim

Kapseldamine vs abstraktsioon

Kapseldamine ja abstraktsioon on kaks erinevat, kuid omavahel seotud mõistet, mis on leitud OOP (Object Oriented Programming) keeltes. Kapseldamine on andmete ja käitumise ühtse tervikuna ühendamise mõiste. Teisest küljest on abstraktsioon protsess, mille abil esitatakse üksuse käitumist / välja, mitte selle rakendamist.

Mis on kapseldamine?

Kapseldamine on andmete mähkimine ja toimimine, mis neid opereerib ühte olemisse. See tähendab sisuliselt seda, et andmetele juurdepääsuks tuleks kasutada teatud eelnevalt määratletud meetodeid. Teisisõnu, kapseldatud andmetele pole otsest juurdepääsu. See tagab andmete terviklikkuse säilimise, kuna kasutajal ei ole võimalik andmetele otseselt juurde pääseda ja neid vastavalt soovile muuta. Kasutajad saavad või määravad andmeväärtused ainult kasutajatele avalikult kättesaadavate meetodite abil. Need meetodid võimaldavad tavaliselt andmete valideerimist, nii et väljadele lubatakse sisestada ainult sobivas vormingus andmeid. Seetõttu on kapseldamise eelised kolmekordsed. Kapseldamise kaudu saab programmeerija muuta klassi väljad kirjutuskaitseks või kirjutada. Teiseksklassil saab olla täielik kontroll selle väljadele salvestatu üle. Lõpuks ei pea klassi kasutajad muretsema, kuidas selle andmeid säilitatakse. Java programmis saab programmeerija kuulutada kõik eksemplari muutujad privaatseks ning pakkuda privaatsetele väljadele juurdepääsuks ja nende muutmiseks avalikke get ja set meetodeid.

Mis on abstraktsioon?

Abstraktsioon on esitluse üksikasjade eraldamine rakenduse üksikasjadest. Seda tehakse nii, et arendaja vabastataks keerukamatest rakenduse üksikasjadest. Selle asemel saab programmeerija keskenduda üksuse esitlusele või käitumise üksikasjadele. Lihtsamalt öeldes keskendub abstraktsioon sellele, kuidas teatud olemit saab kasutada, mitte selle rakendamisele. Abstraktsioon varjab sisuliselt rakenduse üksikasjad, nii et isegi kui rakendamise metoodika aja jooksul muutub, ei peaks programmeerija muretsema, kuidas see tema programmi mõjutab. Süsteemi saab abstraktselt moodustada mitmes kihis või tasandil. Näiteks madala taseme abstraktsioonikihid paljastavad riistvara üksikasjad, kõrgetasemeline abstraktsioon aga ainult üksuse äriloogika. Mõistet abstraktsioon võib kasutada nii üksuse kui protsessi tähistamiseks ja see tekitab teatud segadust. Protsessina tähendab abstraktsioon oluliste detailide väljavõtmist, eirates eseme või üksuste rühma ebaolulisi üksikasju, ent olemina tähendab abstraktsioon üksuse mudelit või vaadet, millel on ainult olulised üksikasjad. Javas saab programmeerija märksõna abstraktne deklareerida klassi abstraktse üksusena, mis esindab reaalse maailma olemuse olulisi määratlusi.programmeerija võib kasutada klassi abstraktse üksusena deklareerimiseks märksõna abstraktne, mis esindab reaalse maailma olemuse olulisi määratlusi.programmeerija võib kasutada klassi abstraktse üksusena deklareerimiseks märksõna abstraktne, mis esindab reaalse maailma olemuse olulisi määratlusi.

Mis vahe on kapseldamisel ja abstraktsioonil?

Ehkki kapseldamine ja abstraktsioon on objektorienteeritud programmeerimiskeeltes tihedalt seotud mõisted, on neil peamisi erinevusi. Abstraktsioon on tehnika, mis aitab meil tuvastada, mis peaks olema nähtav ja mis peaks olema peidetud. Kapseldamine on teabe pakkimise tehnika, mis muudab nähtavaks selle, mis peaks olema nähtav, ja peidab peidetava. Teisisõnu võib kapseldamist tuvastada kui ühte sammu abstraktsioonist kaugemale. Ehkki abstraktsioon taandab reaalse maailma objekti olulistele määratletavatele omadustele, laiendab kapseldamine seda ideed, modelleerides ja sidudes selle üksuse selle funktsionaalsuse.

Soovitatav: