Különbség az absztrakció és a kapszulázás között
Főbb különbségek az absztrakció és a beágyazás között
- Az absztrakció csak hasznos adatokat jelenít meg a legszükségesebb részletek megadásával, míg az Encapsulation a szükséges információk kódját és adatait csomagolja.
- Az absztrakció elsősorban arra összpontosít, hogy mit kell tenni, míg az Encapsulation arra összpontosít, hogyan kell csinálni.
- Az absztrakció elrejti a bonyolultságot azáltal, hogy elvontabb képet ad, míg az Encapsulation elrejti a belső munkát, így később megváltoztathatja.
- Az absztrakció segít abban, hogy a programot több független részre particionálja, míg az Encapsulation könnyen megváltoztatható az új követelményekkel.
- A beágyazás és az absztrakció összehasonlítása során az absztrakció a tervezési szinten oldja meg a problémákat, míg az Encapsulation a megvalósítás szintjén oldja meg a problémákat.
- Az absztrakció elrejti a kódban található irreleváns részleteket, míg az Encapsulation segít a fejlesztőknek a teljes kód egyszerű rendszerezésében.

Az absztrakció definíciója
Az absztrakció egy OOP fogalom, amely csak az objektum releváns adataira összpontosít. Elrejti a háttér részleteit, és kiemeli a lényeges adatpontokat a bonyolultság csökkentése és a hatékonyság növelése érdekében. Általában csak azokat az információkat őrzi meg, amelyek az adott folyamat szempontjából a legrelevánsabbak. Absztrakció A módszer elsősorban az ötletre összpontosít a tényleges működés helyett.
A tokozás definíciója
A tokozás egy olyan módszer, amellyel egy összetett rendszert könnyebben kezelhet a végfelhasználók számára. A felhasználónak nem kell aggódnia a rendszer belső részletei és összetettsége miatt. Egységbezárás egy olyan folyamat, amely az adatokat és a kódot egyetlen entitásba csomagolja, amelyek az adatokon működnek. Feltételezheti, hogy ez egy védőburkoló, amely megakadályozza a kódoláson kívül definiált kód véletlenszerű elérését.
Különbség az absztrakció és a kapszulázás között
Itt van a fő különbség az absztrakció és a beágyazás között:
Vizsgált paraméter | Absztrakció | Egységbezárás |
---|---|---|
Használ | Az absztrakció megoldja a tervezési szakaszban felmerülő problémákat és problémákat. | A beágyazás megoldja a megvalósítási szakaszban felmerülő problémákat és problémákat. |
Összpontosít | Az absztrakció lehetővé teszi, hogy arra összpontosítson, amit az objektum csinál, ahelyett, hogy hogyan teszi | A beágyazás lehetővé teszi a kód és az adatok egyetlen egységbe való elrejtését, hogy megvédje az adatokat a külvilágtól. |
Implementáció | Az absztrakciót az Interfész és az Absztrakt osztály használatával használhatja. | A tokozást a hozzáférés-módosítók (nyilvános, védett és privát) segítségével valósíthatja meg. |
fókuszok | Főleg arra koncentráljon, hogy mit kell tennie. | Elsősorban arra összpontosítson, hogyan kell ezt csinálni. |
Alkalmazás | Tervezési szinten. | A Megvalósítási szinten. |
Miért van szükséged az absztrakcióra?
Íme a fő okok, amelyek miatt az absztrakcióra van szükség az objektum-orientált programozáshoz:
- Segít leegyszerűsíteni a tartománymodellek ábrázolását.
- Az absztrakció elrejti a kódban található irreleváns részleteket.
- Az absztrakció segítségével a programot számos független fogalomra oszthatja fel.
- A legnagyobb rugalmasságot kínálja az ADT (absztrakt adattípus) objektumok különböző helyzetekben történő használatakor
Miért van szükség kapszulázásra?
A kapszulázás fő előnyei a következők
- Javítja az alkalmazás karbantarthatóságát.
- Rugalmasságot biztosít a felhasználónak a rendszer egyszerű használatához
- Segít a fejlesztőknek a kód jobb rendszerezésében
- Megkönnyíti az általános kódolási folyamatot, mivel Ön csak azzal foglalkozik, hogy egy másik osztály mit csinál, nem pedig az, hogyan csinálja
- Ez a módszer segíti a fejlesztőket abban, hogy „objektívebb” és eredményorientáltabbak legyenek.
- Az Encapsulated Code meglehetősen rugalmas és könnyen módosítható az új követelményekkel.
- A tokozás megkönnyíti az egységtesztet.
- Lehetővé teszi a modulok összekapcsolásának csökkentését és növeli a kohéziót a modulon belül, mivel egy dolog minden darabja egy helyen van tokozva.
- A beágyazás segít a kód egy részének megváltoztatásában anélkül, hogy a kód más részeit befolyásolná.
- Javítja az alkalmazás kód olvashatóságát
- Fokozott biztonság és egyszerűbbé teszi az alkalmazás karbantartását
- A tokozási felület csak jól meghatározott interakciót tesz lehetővé.
Példa az absztrakcióra
Tegyük fel, hogy banki alkalmazást szeretne létrehozni, és a rendszer felkéri, hogy gyűjtsön össze minden információt az ügyfeléről. Valószínű, hogy a következő információkkal találkozik az ügyfélről.
A banki alkalmazás létrehozásához azonban nem szükséges a fenti információk mindegyike.
Tehát ebből a készletből csak a banki alkalmazáshoz szükséges hasznos információkat kell kiválasztania. Az olyan adatok, mint a név, cím, adózási információk stb., hasznosak egy banki alkalmazás számára.
Mivel az ügyféladatokat egy nagyobb készletből vettük/eltávolítottuk/válogattuk ki, a folyamatot absztrakciónak nevezzük.
Ugyanaz az információ azonban, ha egyszer kinyerjük, számos alkalmazáshoz felhasználható. Ugyanazokat az adatokat használhatja például kórházi jelentkezéshez, állásportál-jelentkezéshez, kormányzati adatbázishoz stb., csekély módosítással vagy anélkül. Ennélfogva ez lesz a törzsadatod. Ez az absztrakció előnye.
Példa a tokozásra
Vegyünk egy példát a mobileszközre. A mobileszközök segítségével különféle funkciókat hajthat végre, mint például fényképezés, üzenetküldés, videó/hang rögzítése, internet elérése és még sok más.
A fent említett funkciók a legtöbb okostelefon funkciói. A program használata előtt azonban nem kell megértenie ezeknek a funkcióknak a belső működési részleteit. Például nem kell tudnia, hogyan számítja ki a fényképezőgépe a gamma-korrekciót, vagy hogyan azonosítja az emberi arcot a képen. Csak meg kell tanulnia a szoftveres felületet. Ez a kapszulázás.