Objektumorientált tervezés

34
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

description

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:. - PowerPoint PPT Presentation

Transcript of Objektumorientált tervezés

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

A modellezés problémája:

Számítástechnikai információ:

utasítás, algoritmus

adat, adatszerkezet

Valós világ

Fogalmi modell

Implementációs modell

Modell alkotás

top-downbottom-up

Mi legyen a modellek

alapja?

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

Sérült

szerep

• szerep objektum Rendőr

szerep

Objektumok és jellemzőik: példákkal

1. Objektum lehet bármi aminek a határai pontosan meghatározhatók • esemény objektum

• szerep objektum

• szervezeti egység objektumIntézmény,szervezeti

egység

Objektumok és jellemzőik: példákkal

1. Objektum lehet bármi aminek a határai pontosan meghatározhatók • esemény objektum

• szerep objektum

• szervezeti egység objektumtárgy

(rendszer)autó• 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

• szerep objektum

• szervezeti egység objektum

• tárgy(rendszer) objektum

process (történés)

futam• 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

• szerep objektum

• szervezeti egység objektum

• tárgy(rendszer) objektum

• process objektum

hely(szín)

Hungaroring

• hely 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

sérült objektumsérült objektum biztosító objektumbiztosító objektum

név, kötvényszám, baleset helyszín,időpont

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

rendőr rendőr objektumobjektum

rendőrség objektumrendő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

• event (esemény) - pillanatszerű történés

- vezérlés

segélyhívás

rendőrség objektumrendőrség objektumbaleset objektumbaleset 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

rendőrség objektumrendőrség objektum

diszpécser2diszpécser2

rendőr1rendőr1

diszpécser1diszpécser1

rendőr1rendőr1

Szolgálat

Szolgálat

SzolgálatSzolgálat

aktív 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

rendőrség objektumrendőrség objektum

diszpécser2diszpécser2

rendőr1rendőr1

diszpécser1diszpécser1

rendőr1rendőr1

Szolgálat

Szolgálat

passzív objektum

felveszi a telefont

kiszáll

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

harap (interakció)

tehát:van foga,

állkapcsa

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)

Kutyaeszik

Jól lakott

Éhes

Objektumok Viselkedés Állapot

Gazdi

nem eszik

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)

Kutyaeszik

Jól lakott

Éhes

Objektum Viselkedés Állapot

Gazdi

Kajanem eszik

ÚJRAÚJRA

Objektum és jellemzői: példákkal

5. Az objektum állapota: az állapot határozza meg, hogy adott üzenetre, hogyan viselkedik

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

• állapot: az objektum pillanatnyi tulajdonságai (attribútumai)

Objektum és jellemzői: példákkal

6. Polimorfizmus (több alakúság):

diszpécser objektumdiszpécser objektum

TŰZ!!!

üzenet viselkedés

tűzoltó objektumtűzoltó objektum

továbbítom

megyek

ugyanarra az üzenetre más-más objektumok másképpen viselkednek

Objektum és jellemzői: példákkal

7. Osztályok és példányok:

objektumobjektum objektumobjektum

osztályosztály

BIZTOSÍTÓ

• hasonló struktúrájú és tulajdonságú objektumokat osztályokba sorolunk

• az objektum az osztály egy példánya

osztályba sorolás

objektum

osztály

példányosítás

objektum

osztály

Osztályszámosság:

hány példánya van egy osztálynak

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ályosztály

BIZTOSÍTÓ

objektumobjektumobjektumobjektum

osztályosztály

Pénzintézet

osztályhierarchia

Objektum jellemzői 1Objektum jellemzői 1

ObjektumObjektum=entitás

ObjektumJellemzők:

ObjektumViselkedés

ObjektumÁllapot

Attribútum = tulajdonság

ObjektumStruktúra

Művelet = method

pillanatnyi tulajdonság

állapot időbeli változása

megnyilvánulása

befolyásolja

attribútum csoportok

osztályba sorolás: közös tulajdonságú objektumik csoportja

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öttpolimorfizmus: interakcióra az objektumok különbözőképpen viselkednek

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

Objektum orientált programObjektum orientált programműködési elveiműködési elvei

Objektum jellemzői 2Objektum jellemzői 2

azonosító tulajd1 tulajd2

n adat n1 adat n2

Osztály:táblázat Oszlop: attribútum, tulajdonság

Sor: objektum, egyed, entitás, példány

Cellák: objektum állapot

Struktúra: oszlopok száma, fajtái

Viselkedés: tulajdonságok(cellaértékek) módosulása

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.

CPUCPU

adatok

MEMÓRIA

task1 adat

task2 adat

task3 adat

Hardver fogalmak1 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

CPUCPU

adatok1 adatok2

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

modellkészítés + implementálás

Objektumok, osztályok azonosítása.

Statikus struktúra (hierarchia) Dinamikus

struktúra (műveletek)

Modell értékelés (validáció)

Osztályok, műveletek implementálása

START STOPA 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ó

Tervezési módszertanok

A modell tervezés módszertana:

OMT – Object Modelling Techniquea rendszert 3 nézetből alkotott 3 modellel írja le

Rendszer

Objektum modell

Funkcionális modell Dinamikus modell

Statikus hierarchia ábrázolása

a feladat szempontjából történő leírás

időbeli működés leírása

Tervezési módszertanok

A modell tervezés módszertana:

OMT – Object Modelling Techniquea rendszert 3 nézetből alkotott 3 modellel írja le

Rendszer

Objektum modell

Funkcionális modell Dinamikus modell

Statikus hierarchia ábrázolása

a feladat szempontjából történő leírás

időbeli működés leírása

Valós objektum

Absztrakt objektum

Osztály

Példány1 Példány2

absztrakció, általánosítás

annyi példány(objektum)

kell, hogy interakcióik megoldják a feladatot

Komplexitás csökkentése:

MÁSIK 2 NÉZET

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

OOSE – Object Oriented Software Engineering

Legismertebb tervezési módszertanokOOT – Object Oriented Technologies

OOD – Object Oriented Design

OOAD – Object Oriented Analysies and Design

OODBMS – Object Oriented Database Management System

GUI – Grafical User Interface

A rendszer statikus leírásához használt

módszerek együttese

(osztálydiagramok, objektum

diagramok)

5 modellben adja meg a leírást:követelmény-,

analízis-,tervezési- implementációs,

teszt modell

Egy rendszerben kezeli a az analízis

és a tervezés lépéseit.

Objektum orientáltságra épülő

adatbázis kezelő rendszer

Önálló objektumként kezeli a

megjelenítést