Abstrakcija ir kapsuliacija
Turinys
- Turinys: skirtumas tarp abstrakcijos ir kapsulės
- Palyginimo diagrama
- Kas yra abstrakcija?
- Pavyzdys
- Kas yra kapsulė?
- Pavyzdys
- Pagrindiniai abstrakcijos ir kapsulės skirtumai
- Išvada
Abstrakcija yra procesas
rinkti svarbią informaciją, kuria remiantis bus galima kurti
sudėtinga sistema. Inkapsuliacija yra sudėtingos sistemos kūrimo procesas
lengviau valdyti galutinį vartotoją, nesijaudinant dėl jo vidinio sudėtingumo.
skirtumas tarp abstrakcijos ir kapsuliavimo yra tas
abstrakcija yra skirta nustatyti pagrindinius komponentus kuriant a
sistema, o kapsuliacija yra skirta slėpti vidinius sistemos sudėtingumus.
Turinys: skirtumas tarp abstrakcijos ir kapsulės
- Palyginimo diagrama
- Kas yra abstrakcija?
- Pavyzdys
- Kas yra kapsulė?
- Pavyzdys
- Pagrindiniai abstrakcijos ir kapsulės skirtumai
- Išvada
Palyginimo diagrama
Pagrindinis | Abstrakcija | Inkapsuliacija |
Apibrėžimas | Elementai, kuriuos reikia kurti a sistema. | Inkapsuliacija yra sudėtingos sistemos kūrimo procesas |
Pasiekimas | Pasiekiama per kapsulę. | Pasiekta padarius narius a klasė kaip privati. |
Dėmesys | Dėmesys skiriamas tam, ką reikėtų padaryti | Didžiausias dėmesys skiriamas tam, kaip tai turėtų būti daroma. |
Taikymas | Projektavimo metu. | Įgyvendinimo metu lygis. |
Pavyzdžiai | Mobiliojo telefono vartotojo sąsaja, joje yra keletas piktogramų, kurias spustelėti spustelėkite atlikti konkrečią funkciją. | Kai spustelėjama piktograma, galutinis vartotojas neturi supratimo apie jo įgyvendinimo detales |
Kas yra abstrakcija?
Abstrakcija yra svarbiausių elementų išgavimo mechanizmas
sistemos sukūrimui, be jos įgyvendinimo detalių. Į
abstrakcija, turime sutelkti dėmesį tik į tai, ką reikia padaryti, o ne į tai, kaip tai padaryti
reikia padaryti. Abstrakcija yra minties procesas, jis išsprendžia dizaino problemas
lygis.
Hierarchinė klasifikacija padeda mums susidoroti su sudėtinga abstrakcija. Tai leidžia mums suskaidyti sudėtingą sistemą į valdomus elementus ir sugeneruoti sluoksniuotą semantiką. Be to, tai yra apibendrinimas.
Pavyzdys
Paimkime gerą automobilio pavyzdį, jis yra sukurtas iš daugelio posistemių, tokių kaip variklis, stabdžiai, apšvietimas, garso sistema, kėdė ir dar daugiau. „Stabdys“, kuris yra dviračio posistemis, gali būti toliau klasifikuojamas kaip priekinio rato stabdis ir galinio rato stabdis, tačiau paprastai mes matome, kad visas posistemis yra stabdžiai. Taigi, mes turime valdyti sudėtingą sistemą pagal hierarchinę klasifikaciją, kuri mums padeda išsiaiškinti, kokie yra esminiai elementai, kurių reikės kuriant sistemą.
Taigi abstrakcija tik apibendrina, kas yra elementai
būtinas kuriant sistemą, t.y teisingai pasiimant svarbius.
Kas yra kapsulė?
Inkapsuliacija yra svarbi objektyvaus programavimo ypatybė. Tai yra mechanizmas, kuris
susieja kodą ir duomenis kartu ir saugo juos nuo išorės
trukdžiai. T. y., Kapsuliavimas slepia sistemos sudėtingumą,
nes raktinis žodis čia yra duomenų slėpimas. Tai panašu į apsauginį
įvyniotojas, kuris slepia kodą ir duomenis klasėje, kurį gauna
kitas kodas, kuris yra apibrėžtas už klasės ribų, ir nario funkcija / metodas
kurie nėra klasės nariai.
Kai veikia kodas ir duomenys
pagal tuos duomenis yra susieti klasėje, tada sukuriami šios klasės objektai.
Prieigą prie elemento elementų riboja tiksliai apibrėžta sąsaja
žinomas kaip prieigos specifikatorius. Yra trys prieigos
„Java“ ir „C ++“ specifikatoriai: viešas, privatus, saugus.
Inkapsuliacija ypač pasiekiama sudarius kodą
ir duomenis, veikiančius su duomenimis, kaip privačius. Privatūs klasės nariai negali naudotis nurodytu kodu
už klasės ribų. Tai padeda užkirsti kelią piktnaudžiavimui duomenimis, tuo pačiu slepia ir sudėtingumą
kodo.
Pavyzdys
Paimkime mobiliojo telefono pavyzdį. Mobiliajame telefone, tu
gali atlikti daugybę funkcijų, tokių kaip nuotraukos spustelėjimas, vaizdo / garso įrašymas,
prisijungti, pasiekti internetą ir dar daugiau. Jūs manote, kad tai
mobiliojo telefono charakteristikos. Bet galutiniam vartotojui to nereikia
prieš naudodamiesi, supraskite vidinį šių funkcijų sudėtingumą
programų, taip pat nereikia keisti jokios funkcijos funkcijos.
Taigi tokiu būdu kapsulė slepia sudėtingumą ir
užkirsti kelią netinkamam duomenų naudojimui.
Pagrindiniai abstrakcijos ir kapsulės skirtumai
- Abstrakcija orientuojama į komponentus, kurių reikia
sukonstruoti sistemą, o kapsulė daugiausia dėmesio skiria sistemos sudėtingumo slėpimui
sistema. - Abstrakcija atliekama projektuojant sistemos lygį ir
inkapsuliacija atliekama, kai sistema turi
buvo įgyvendinta. - Abstrakcijų pagrindinis motyvas yra tai, ką reikia daryti norint kurti
sistema, o Enkapsuliacijų pagrindinis motyvas yra, kaip tai turėtų būti padaryta kuriant sistemą. - Abstrakcija pasiekiama
inkapsuliacija, tuo tarpu inkapsuliacija pasiekiama iš
sistema privati.
Išvada
Abstrakcija ir kapsuliacija
abu yra svarbi OOP savybė. Puiki kapsulė gali pasiekti fantastišką abstrakciją.