340 likes | 463 Views
Objektumorientált tervezés. Út az objektumig Az objektum fogalma, jellemzői Objektummal kapcsolatos fogalmak Hardverfogalmak A rendszer modell nézetei Objektumorientált programtervezés Objektumorientált módszertanok UML. Út az objektumig. bottom-up. top-down. A modellezés problémája:.
E N D
Objektumorientált tervezés • Út az objektumig • Az objektum fogalma, jellemzői • Objektummal kapcsolatos fogalmak • Hardverfogalmak • A rendszer modell nézetei • Objektumorientált programtervezés • Objektumorientált módszertanok • UML
Út az objektumig bottom-up top-down A modellezés problémája: Számítástechnikai információ: utasítás, algoritmus adat, adatszerkezet Fogalmi modell Implementációs modell Mi legyen a modellek alapja ? Modell alkotás Valós világ VAGY
Struktúrált programozás top-down • Moduláris programozás: • a teljes feladat egy absztrakt utasítás • időbeli sorrendben részekre bontás, rétegenként • az adatok a programban szétszórtan találhatók • háttérbe szorul az adatszerkezet • legkisebb egysége az eljárás • ritkán eredményez újrafelhasználható elemet Adatalapú programozás:
Objektum és jellemzői: példákkal 1. Objektum lehet bármi aminek a határai pontosan meghatározhatók • esemény objektum Baleset esemény
Objektum és jellemzői: példákkal 1. Objektum lehet bármi aminek a határai pontosan meghatározhatók • esemény objektum Rendőr szerep Sérült szerep • szerep objektum
Objektumok és jellemzőik: példákkal 1. Objektum lehet bármi aminek a határai pontosan meghatározhatók • esemény objektum Intézmény, szervezeti egység • szerep objektum • szervezeti egység objektum
Objektumok és jellemzőik: példákkal 1. Objektum lehet bármi aminek a határai pontosan meghatározhatók • esemény objektum tárgy (rendszer) autó • szerep objektum • szervezeti egység objektum • tárgy(rendszer) objektum
Objektum és jellemzői: példákkal 1. Objektum lehet bármi aminek a határai pontosan meghatározhatók • esemény objektum process (történés) futam • szerep objektum • szervezeti egység objektum • tárgy(rendszer) objektum • process objektum
Objektum és jellemzői: példákkal 1. Objektum lehet bármi aminek a határai pontosan meghatározhatók • esemény objektum hely(szín) Hungaroring • szerep objektum • szervezeti egység objektum • tárgy(rendszer) objektum • process objektum • hely objektum
sérült objektum biztosító objektum Objektum és jellemzői: példákkal 2. Az objektum más objektumokra hatást gyakorol és más objektumok hatással vannak rá: az objektumok interakcióban vannak egymással: • üzenet (message) - adatátvitel név, kötvényszám, baleset helyszín,időpont
rendőr objektum rendőrség objektum Objektum és jellemzői: példákkal 2. Az objektum más objektumokra hatást gyakorol és más objektumok hatással vannak rá: az objektumok interakcióban vannak egymással: • üzenet (message) - adatátvitel - vezérlés helyszínelés
baleset objektum rendőrség objektum Objektum és jellemzői: példákkal 2. Az objektum más objektumokra hatást gyakorol és más objektumok hatással vannak rá: az objektumok interakcióban vannak egymással: • üzenet (message) - adatátvitel - vezérlés • event (esemény) - pillanatszerű történés segélyhívás
rendőrség objektum Objektum és jellemzői: példákkal 3. Az objektum viselkedése:valamilyen cselekvésben, tevékenységben, műveletben (metódusban) nyilvánul meg. • aktív objektum - vezérlő objektum - mindig interaktív aktív objektum diszpécser1 Szolgálat Szolgálat diszpécser2 Szolgálat rendőr1 Szolgálat rendőr1
rendőrség objektum Objektum és jellemzői: példákkal 3. Az objektum viselkedése:valamilyen cselekvésben, tevékenységben, műveletben (metódusban) nyilvánul meg. • aktív objektum - vezérlő objektum - mindig interaktív • passzív objektum – csak akkor működik ha interakciót kap passzív objektum felveszi a telefont diszpécser1 Szolgálat diszpécser2 Szolgálat kiszáll rendőr1 rendőr1
Objektum és jellemzői: példákkal 3. Az objektum viselkedése:valamilyen cselekvésben, tevékenységben, műveletben (metódusban) nyilvánul meg. • aktív objektum - vezérlő objektum - mindig interaktív • passzív objektum – csak akkor működik ha interakciót kap Művelet = metódus (Method) (fogalmi modell) (implementációs modell) Üzenetek hatására létrejövő viselkedésforma
Objektum és jellemzői: példákkal 4. Az objektum belső struktúrája: a külvilág nem lát bele az objektumba – egységbe zárt - egységbezárt – encapsulation - az információ elrejtés elve ember objektum másik objektum tehát:van foga, állkapcsa harap (interakció)
Objektum és jellemzői: példákkal 4. Az objektum belső struktúrája: a külvilág nem lát bele az objektumba – egységbe zárt - egységbezárt – encapsulation - az információ elrejtés elve Az objektumot a külvilág csak a viselkedésén keresztül érzékeli encapsulation
Objektum és jellemzői: példákkal 5. Az objektum állapota: az állapot határozza meg, hogy adott üzenetre, hogyan viselkedik • állapot: az objektum pillanatnyi tulajdonságai (attribútumai) Objektumok Viselkedés Állapot Kutya Jól lakott eszik Éhes nem eszik Gazdi
Objektum és jellemzői: példákkal 5. Az objektum állapota: az állapot határozza meg, hogy adott üzenetre, hogyan viselkedik ÚJRA • állapot: az objektum pillanatnyi tulajdonságai (attribútumai) Objektum Viselkedés Állapot Kutya Jól lakott eszik Kaja Éhes nem eszik Gazdi
Objektum és jellemzői: példákkal 5. Az objektum állapota: az állapot határozza meg, hogy adott üzenetre, hogyan viselkedik • állapot: az objektum pillanatnyi tulajdonságai (attribútumai) A viselkedés az állapotok időbeli változásának eredménye Minden művelet (method) viselkedésforma nyomot hagy az objektum állapotában
továbbítom TŰZ!!! diszpécser objektum megyek tűzoltó objektum Objektum és jellemzői: példákkal 6. Polimorfizmus (több alakúság): ugyanarra az üzenetre más-más objektumok másképpen viselkednek viselkedés üzenet
BIZTOSÍTÓ objektum objektum osztály Objektum és jellemzői: példákkal 7. Osztályok és példányok: • hasonló struktúrájú és tulajdonságú objektumokat osztályokba sorolunk Osztályszámosság: hány példánya van egy osztálynak • az objektum az osztály egy példánya osztály osztály példányosítás osztályba sorolás objektum objektum
Pénzintézet osztály BIZTOSÍTÓ osztály objektum objektum Objektum és jellemzői: példákkal 8. Öröklés ( inharitance ): • a meglévő osztályokból képzett újabb osztályok öröklik a szülő osztályok struktúráit, tulajdonságait és újabbakkal bővülnek osztályhierarchia
Objektum=entitás Objektum Állapot Jellemzők: Viselkedés Struktúra Objektum Objektum Objektum Objektum Objektum jellemzői 1 megnyilvánulása Művelet = method befolyásolja attribútum csoportok Attribútum = tulajdonság pillanatnyi tulajdonság állapot időbeli változása
Objektum orientált programműködési elvei osztályba sorolás: közös tulajdonságú objektumik csoportja Objektum-orientált program: egymással interakcióban lévő objektumok halmaza - Működése: az interakciós műveletek egymásutánja - Szerkezete: osztályok és objektumok hierarchiája példányosítás: az objektum az osztály egy példánya egységbe zárás (encapsulation): a külvilág csak a viselkedésen keresztül látja az objektumot – információ elrejtés öröklés(inharitance): hierarchikus kapcsolatrendszer az osztályok és objektumok között polimorfizmus: interakcióra az objektumok különbözőképpen viselkednek
Objektum jellemzői 2 Osztály:táblázat Oszlop: attribútum, tulajdonság Sor: objektum, egyed, entitás, példány Struktúra: oszlopok száma, fajtái Viselkedés: tulajdonságok(cellaértékek) módosulása Cellák: objektum állapot
Hardver fogalmak 1 magos processzor: multitask futtatás A processzor ciklikusan, rövid időszeletenként, időben egymásután futtatja a programokat. Taszkváltáskor memória mentési és beolvasási műveleteket végez. MEMÓRIA task1 adat adatok CPU task2 adat task3 adat
Hardver fogalmak 1 magos processzor: hyper threading technológia(többszálas processzor) A processzor ciklikusan, rövid időszeletenként, időben egymásután 2 programot futtat: NINCS memória mentési és beolvasási művelet!Több program futás esetén: multitask adatok1 adatok2 CPU
Hardver fogalmak Többmagos, többszálas processzor.iCore7 A processzor 8 szálat futtat egyszerre A hardver a több aktív objektummal rendelkező többszálas programok futtatását támogatja!
Objektom-orientált program készítés A folyamat akkor ér véget: - ha nem szükséges több absztrakciós szint(alosztály.. hierarchikus szint - vagy a felfedezett új osztály, objektum, már létező szoftver komponensekkel implementálható modellkészítés + implementálás START STOP Objektumok, osztályok azonosítása. Osztályok, műveletek implementálása Statikus struktúra (hierarchia) Modell értékelés (validáció) Dinamikus struktúra (műveletek)
Tervezési módszertanok A modell tervezés módszertana: OMT – Object Modelling Techniquea rendszert 3 nézetből alkotott 3 modellel írja le Statikus hierarchia ábrázolása Objektum modell a feladat szempontjából történő leírás Rendszer Funkcionális modell Dinamikus modell időbeli működés leírása
Példány2 Példány1 Valós objektum Tervezési módszertanok A modell tervezés módszertana: OMT – Object Modelling Techniquea rendszert 3 nézetből alkotott 3 modellel írja le Statikus hierarchia ábrázolása Komplexitás csökkentése: MÁSIK 2 NÉZET absztrakció, általánosítás Objektum modell Absztrakt objektum annyi példány(objektum) kell, hogy interakcióik megoldják a feladatot a feladat szempontjából történő leírás Rendszer Osztály Funkcionális modell Dinamikus modell időbeli működés leírása
Tervezési módszertanok A módszertanokhoz modell leíró CASE eszközök és implementációs eszközök (programozási nyelvek tartoznak OMT modellek leírása: UML segítségével UML: a nézetek modelljeit szabványos diagramok segítségével szemlélteti Implementáció (objektum orientált programozási nyelvek): • C++- Java- Object Pascal- php
Legismertebb tervezési módszertanok OOT – Object Oriented Technologies Egy rendszerben kezeli a az analízis és a tervezés lépéseit. 5 modellben adja meg a leírást: követelmény-, analízis-,tervezési- implementációs, teszt modell Objektum orientáltságra épülő adatbázis kezelő rendszer Önálló objektumként kezeli a megjelenítést A rendszer statikus leírásához használt módszerek együttese (osztálydiagramok, objektum diagramok) OOD – Object Oriented Design OOSE – Object Oriented Software Engineering OOAD – Object Oriented Analysies and Design OODBMS – Object Oriented Database Management System GUI – Grafical User Interface