ObjektumorientaltProgramozas

Download Report

Transcript ObjektumorientaltProgramozas

Objektumorientált programozás Készítette: Rummel Szabolcs Elérhetőség: [email protected]

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.

S P E C I A L I Z Á C I Ó Öröklődési szerkezetek ősosztály alosztály1 alosztály1 alosztály2 alosztály2 Á L T Á N O S Í T Á S

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.