Objektumorientált programozás Készítette: Rummel Szabolcs Elérhetőség: rsz@mailbox.hu
Strukturált programozás Hierarchikus programozásnak is nevezik. Minden program, algoritmus leírható az alábbi vezérlési formákkal: Szekvencia(elemi utasítás) Szelekció(elágazás) Iteráció(ciklus)
Szekvencia Az utasítások sorban egymás után hajtódnak végre. Egyszerű, elemi utasítások tartoznak ide. Pl: értékadó utasítás
Szelekció A program vagy algoritmus végrehajtása során elágazunk, de továbbra is előre halad a program vagy algoritmus. Pl ha, case
Iteráció A program vagy algoritmus végrehajtása során elágazunk és a program vagy algoritmus egy korábbi sorára térünk vissza mindaddig, amíg a feltétel teljesül. Pl: számlálós, tesztelős ciklusok
Oop történeti áttekintés Alan Kay: 1969 elméletben felvázolja a pc korszerű működését! 1972-ben megtervezi a Smallt nyelvet, ami az első oop. nyelv. Megszületik a grafikus felületű op rendszer elmélete, ikonok, menürendszer, ablakok elmélete. Ezen elmélet alapján készül a windows 3.1
Oop történeti áttekintés 1980-tól az oop az elfogadott programozási filozófia. A nyelvek két fejlődési trendet követnek: Eljárás-orientált nyelvek Tisztán oop nyelvek
Tisztán oop nyelvek Támogatja az objektumok használatát Minden objektum egy osztályhoz van hozzárendelve. Az osztályok öröklik a szüleik tulajdonságait. Az objektumok üzenetekkel kommunikálnak egymással. Az osztályok metódusai (eljárások, függvények) az osztályra jellemző módon működnek. Támogatja a metódusok címének futásidő alatti meghatározását.
Tisztán oop nyelvek Smallt Eiffel
Eljárás-orientált nyelvek A programozás alapvetően eljárásokra épül, az objektumok csak egy új eszközként, lehetőségként jelennek meg.
Eljárás-orientált nyelvek C++ Turbo Pascal Object Pascal Oop Cobol Lisp
Oop programozás alapfogalmai Az oop a természetes gondolkodást közelítő programozási mód. Egy ooprogam strukturáltabb, modulárisabb mint egy hagyományos program, ezért könnyebb bővíteni, karbantartani.
Oop nyelv jellemzői Egységbeágyazás Öröklés többrétűség
Egységbe ágyazás Az objektumokat, az adatok és a hozzá tartotó metódusok (eljárások- függvények alkotják). ezek egy egységet alkotnak és a külvilág számára láthatatlanok.
Egységbe ágyazás Attributumok: adatelemek Metódusok: az objektum adatain elvégezhető műveletek. Amikor kívülről hatás éri az objektumot akkor az adatok megváltoznak és a metódusok ezekkel az adatokkal végzik el a feladatot.
Példa Számológép: edit boxba beírok egy számot, a számológép onnantól kezdve azzal a számmal számol és az objektum műveletét azzal a számmal végzi el.
Objektumosztály Az azonos attributumokat és metódusokat tartalmazó objektumok együttese. Először mindig az osztályokat hozzuk létre és utána az objektumokat, mert ilyenkor minden egyes példány tartalmazza az osztály összes attributumát és metódusát: ez az alapja az öröklődésnek.
Öröklődés Egy osztályból származtathatók további osztályok, ezek az ős összes metódusát öröklik. Az alosztályokban ezeket a metódusokat módosítani lehet. Az alosztályok lehetnek ősei további osztályoknak, így azok metódusai tovább módosulhatnak.
Öröklődési szerkezetek ősosztály S P E C I A L Z Á Ó Á L T N O S Í alosztály1 alosztály1 alosztály2 alosztály2
Többrétegűség Az örökölt metódusokat az alosztályokban megváltoztathatjuk a metódus neve azonban ugyanaz marad. Ha nem akarjuk megváltoztatni a metódus működését, akkor a deklarációban nem kell felsorolni. Ebben az esetben a metódus ugyanúgy működik mint az ősosztályban.
Alosztályok metódusai Ha egy alosztálynál hivatkozunk egy metódusra akkor: Szerepel a deklarációban és az fog végrehajtódni (módosult működés) Nem szerepe, örökölt metódus visszafelé megkeresi melyik ősben történt a deklaráció és végrehajtódik.