NYISD KI



OOP vagy objektum-orientált programozás

Alan Kay alkotta objektumorientált programozás , más néven NYISD KI vagy OO programozás , egy programozási nyelv paradigma. Egy objektumorientált programban a kód újrafelhasználható összetevőként strukturálható, amelyek némelyikének tulajdonságai vagy viselkedése megegyezhet.



Az objektum-orientált programozás javíthatja a fejlesztő gyors prototípus-készítési képességét, kibővítheti a meglévő funkciókat, átalakíthatja a kódot és fenntarthatja azt a fejlesztés során.

Objektum-orientált programozási koncepciók

Ha objektum-orientált programozási nyelven programoz, tartsa szem előtt a következő négy kulcsfontosságú fogalmat.



  • Egységbezárás - A kapcsolódó funkciók és adatok csoportosítása ( változók ) együtt egy an tárgy a bonyolultság csökkentése és a kód egyes részei újrafelhasználásának lehetővé tétele érdekében.
  • Absztrakció - Csak a lényeges dolgokat mutassa be a változás absztraktjának csökkentésére.
  • Öröklés - A funkciók és adatok más osztályokból való öröklésével megszüntesse a redundáns kódot.
  • Polimorfizmus - Az objektum működésének módosítása az adatoktól vagy az osztálytól függően.

Mi az OOPL?

An OOPL ( objektum-orientált programozási nyelv ) egy programozási nyelv amely a fent kifejtett objektum-orientált programozási modellen alapul. Példák az objektum-orientált programozási nyelvekre C ++ , C #, Jáva , Python, Simula és Smalltalk.

Általános OOP példa

Tegyük fel, hogy videojátékot ír, ahol a játékosok irányítják és versenyzik a járműveket. Ha objektum-orientált programozási nyelvet használ, definiálhat egy osztály a „jármű” elnevezésű tárgyakat. Ez az osztály tartalmazhatja az összes jármű közös tulajdonságainak és viselkedésének meghatározását. Például minden jármű gyorsul és lassít, valamint üzemanyagot fogyaszt. Ezen osztálydefiníción belül meghatározhatja mód (hasonló funkciókat ), amelyeket „gyorsítanak” és „lassítanak”, és a ingatlan (egyfajta változó), az úgynevezett „üzemanyag”, amelynek érték tudsz kap vagy készlet .



Akkor meghatározhatnád alosztályok , más néven származtatott osztályok vagy gyermekórák , azt örököl módszerek és tulajdonságok a „jármű” osztályból. Például meghatározhat egy kétkerekű „motorkerékpár” nevű alosztályt és egy négy kerekű „autó” nevű alosztályt. Közös tulajdonságaik (gyorsulás, lassulás és üzemanyag-fogyasztás) már meg vannak határozva a „járműben”, így ezeket nem kell újra megírni.

Akkor lehetne példányosítani ezen alosztályok az egyes játszható járművek meghatározásához. Az alosztály minden példánya örökölni fogja a módszereket és tulajdonságokat annak minden eleméből szülő osztályok , és saját tulajdonságokkal és módszerekkel rendelkeznek. Például egyedi tulajdonságai lehetnek a festék színe („piros”, „kék” stb.) És az ár (ha a játékos a játékon belüli pénznemben szeretné megvásárolni).

Később, amikor meg akarja változtatni a motorkerékpárra jellemző kódot, nem kell megváltoztatnia a szülő „jármű” osztályát. A „jármű” kódot már tesztelték, és jól működik, ezért a program módosítása kevesebb munkát igényel. Továbbá, mivel kevesebb kódsor módosul, kisebb az esélye annak, hogy a bogár valahol az új kódban kerül bevezetésre. Ha mégis megjelenik egy hiba, akkor nem kell azon gondolkodni, hogy a „jármű” osztály kódjában szerepel-e, mert az adott osztályt nem módosították. A szoftver fejlesztése és karbantartása ezért hatékonyabb lehet, időt és erőfeszítést megtakarítva.