Beágyazás vs absztrakció
Az beágyazás és az absztrakció két különböző, de egymással összefüggő fogalom, amelyeket az OOP (Object Oriented Programming) nyelvekben találnak. A beágyazás az adatok és a viselkedés egyetlen entitásként történő egyesítésének fogalma. Másrészt, az absztrakció az entitás viselkedésének \ bemutatásának folyamata, szemben a megvalósítás módjával.
Mi az a kapszula??
A beágyazás az adatok csomagolása és működése, amely rájuk vonatkozik, egyetlen entitásba. Ez lényegében azt jelenti, hogy az adatokhoz való hozzáféréshez bizonyos előre meghatározott módszereket kell használni. Más szavakkal, a beágyazott adatok nem érhetők el közvetlenül. Ez biztosítja az adatok integritásának megőrzését, mivel a felhasználó nem tudja közvetlenül elérni és módosítani az adatokat, ahogy kívánja. A felhasználók csak akkor kapják meg, vagy állítják be az adatértékeket, amelyek a felhasználók számára nyilvánosan elérhetők. Ezek a módszerek általában az adatok validálását biztosítják, így csak a megfelelő formátumú adatokat lehet beilleszteni a mezőkbe. Ezért a beágyazás előnyei háromszorosak. Az Encapsulation révén a programozó osztályok mezőit írhatóvá vagy írásvé teheti. Másodszor, az osztály teljes ellenőrzést gyakorolhat a mezőiben tárolt adatok felett. Végül, az osztály felhasználóinak nem kell attól tartaniuk, hogy az adatai hogyan kerülnek tárolásra. A Java programban a programozó minden példányváltozót magánnak nyilváníthat, és a nyilvános get and set módszereket biztosít a privát mezők eléréséhez és módosításához..
Mi az absztrakció??
Az absztrakció a prezentáció részleteinek és a megvalósítás részleteinek elválasztása. Ez úgy történik, hogy a fejlesztő megszabaduljon a bonyolultabb végrehajtási részletektől. Ehelyett a programozó az entitás bemutatására vagy viselkedésének részleteire összpontosíthat. Egyszerűen fogalmazva, az absztrakció arra összpontosít, hogy egy adott entitás hogyan használható fel, nem pedig annak végrehajtására. Az absztrakció lényegében elrejti a megvalósítás részleteit, így még akkor is, ha a megvalósítási módszertan idővel megváltozik, a programozónak nem kell aggódnia, hogy ez miként érinti a programját. A rendszer több rétegben vagy szinten is kivonható. Például az alacsony szintű absztrakciós rétegek felfedi a hardver részleteit, míg a magas szintű absztrakció csak az entitás üzleti logikáját tárja fel. Az absztrakció kifejezés az entitásra és a folyamatra egyaránt utalhat, és ez némi zavart okoz. Folyamatként az absztrakció az alapvető részletek kinyerését jelenti, miközben figyelmen kívül hagyja az elem vagy cikkek csoportjának lényegtelen részleteit, míg entitásként az absztrakció egy entitás modelljét vagy nézetét jelenti, amely csak az alapvető részleteket tartalmazza. A Java programban a programozó az abszolút kulcsszóval állíthatja be az osztály elvont entitásként megadását, amely egy valós entitás alapvető meghatározó jellemzőit képviseli..
Mi a különbség a beágyazás és az absztrakció között??
Annak ellenére, hogy a beágyazás és az absztrakció szorosan összefüggő fogalmakat találnak az objektumorientált programozási nyelvekben, ezek között vannak alapvető különbségek. Az absztrakció olyan technika, amely segít azonosítani, hogy mi legyen látható és mi rejtett. A kapszulázás az információ csomagolásának technikája, amely láthatóvá teszi azt, ami láthatónak kell lennie, és elrejti, amit el kell rejteni. Más szavakkal: a beágyazás az absztrakciót meghaladó lépéssel azonosítható. Míg az absztrakció egy valós objektumot lényeges meghatározó jellemzőire redukál, a beágyazás kiterjeszti ezt az ötletet az entitás ezen funkciójának modellezésével és összekapcsolásával.