Top Banner
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
34

Objektumorientált tervezés

Dec 30, 2015

Download

Documents

Irma Cameron

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
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 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

Page 2: Objektumorientált tervezés

Ú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

Page 3: Objektumorientált tervezés

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:

Page 4: Objektumorientált tervezé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

Page 5: Objektumorientált tervezés

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

Page 6: Objektumorientált tervezés

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

Page 7: Objektumorientált tervezés

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

Page 8: Objektumorientált tervezés

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

Page 9: Objektumorientált tervezés

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

Page 10: Objektumorientált tervezés

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

Page 11: Objektumorientált tervezés

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

Page 12: Objektumorientált tervezés

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

Page 13: Objektumorientált tervezés

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

Page 14: Objektumorientált tervezés

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

Page 15: Objektumorientált tervezés

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

Page 16: Objektumorientált tervezés

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

Page 17: Objektumorientált tervezés

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

Page 18: Objektumorientált tervezés

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

Page 19: Objektumorientált tervezés

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

Page 20: Objektumorientált tervezés

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)

Page 21: Objektumorientált tervezés

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

Page 22: Objektumorientált tervezés

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

Page 23: Objektumorientált tervezés

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

Page 24: Objektumorientált tervezés

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

Page 25: Objektumorientált tervezés

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

Page 26: Objektumorientált tervezés

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

Page 27: Objektumorientált tervezés

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

Page 28: Objektumorientált tervezés

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

Page 29: Objektumorientált tervezés

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!

Page 30: Objektumorientált tervezés

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ó

Page 31: Objektumorientált tervezés

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

Page 32: Objektumorientált tervezés

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

Page 33: Objektumorientált tervezés

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

Page 34: Objektumorientált tervezés

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