Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

1Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Gyurkó György Objektumorientált elemzés és tervezés Alapfogalmak.

Hasonló előadás


Az előadások a következő témára: "1Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Gyurkó György Objektumorientált elemzés és tervezés Alapfogalmak."— Előadás másolata:

1 1Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Gyurkó György Objektumorientált elemzés és tervezés Alapfogalmak

2 2Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Amiben az OO megközelítés különös Feltalálta a szoftverépítés, az absztrakció (vele az elrejtés), az újrafelhasználás optimális alapegységét az objektumot (típusszinten az osztályt); és arra ráépített néhány igen hasznos konstrukciót (öröklődés, polimorfizmus).

3 3Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Az objektum (a szerkezet és a viselkedés egysége)

4 4Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Osztály (= típus) Az osztály:  egyrészt a bele tartozó objektumok halmaza,  másrészt a közös vonásokat (a közös sémát) hordozó kategória. Azonos osztályba tartoznak az azonos szerkezetű és viselkedésű objektumok.

5 5Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Osztály és példánya

6 6Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Megjegyzések: Egy objektum tökéletes másolata egy új objektumot képez. - Tehát bár két objektum minden attribútum-értékében azonos mégis két különböző objektum. Következmény: Az objektum nem azonosítható valamely attribútumával. Minden objektumnak belső azonosítója van, ami a memóriában mutatóra (memóriacímre) képeződik le.

7 7Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Általánosítás és specializáció Általánosítás---------> <---------Specializáció

8 8Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Az öröklődés

9 9Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Az öröklődés (folytatás) Analitikus öröklődés Utódnál: plusz attribútum vagy plusz művelet vagy valamely műveletének más a megvalósítása Korlátozó öröklődés Az utódnál valamely attribútum vagy művelet nem értelmezhető. Pl. a négyzet (mint a téglalap utódja) esetén az egyik oldallal párhuzamos nyújtás. (A szoftvertervezésben általában kerülendő!)

10 10Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Megjegyzés: Az öröklődés az újrafelhasználás egyik módja. Minimális redundancia a tervezésben - egyértelműség

11 11Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Polimorfizmus Az ős egy művelete új metódust (megvalósítást) kap az utódnál, valamely attribútum új értelmezést kap.

12 12Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Megjegyzés: A polimorfizmus teljessé teszi az elrejtést. Elrejti azt a tényt, hogy azonos műveletnek különböző osztályoknál más a megvalósítása. Szilárd, hordozható alkalmazás. A polimorfizmus következménye: A program egy változója futási időben a programkódban adott típusának (=sztatikus típusának) bármely leszármazott osztályából vett példányt hivatkozhat (=dinamikus típus).

13 13Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. A polimorfizmus haszna: idomA: Téglalap; idomB: Kör; IF idomA.Terület() < idomB.Terület() THEN … Ugyanez polimorfizmus nélkül: idomA: Téglalap; idomB: Kör; IF Tégla_Terület(idomA) < Kör_terület(idomB) THEN … Az utóbbi kód érzékeny arra, ha egy téglalap helyett kört (vagy fordítva) kell venni. Az objektumorientált kódot akkor sem kell módosítani, ha a valamelyik objektum egy később definiált osztályba tartozik (pl. háromszög).

14 14Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Absztrakt osztály Csak olyan objektumok tartoznak bele, amelyek valamely alosztályának is példányai. (Nincsenek közvetlen példányai.) Absztrakt művelet: A műveletnek az ős osztálynál nincs megvalósítása (metódusa), az csak az alosztályokban rendelődik a művelethez. – A műveletet csak azért tüntetik fel a magasabb osztály szintjén, hogy utaljanak arra a legszélesebb objektumhalmazra, amire a művelet értelmezhető. (Java: Van legalább egy absztrakt művelete.)

15 15Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Példányattribútum: Minden példányra új másolat jön létre belőle. Osztályattribútum: Az osztály egy példányban létezik. Osztály attribútumai: példányattribútumok + osztályattribútumok. Példányművelet: Példány hajtja végre. Közvetlenül példányattribútumokat kezel. Osztályművelet: Osztály hajtja végre. Közvetlenül csak osztályattribútumokat ér el. Konstruktor: Ez hozza létre az osztály egy új példányát, és beállítja annak kezdeti állapotát. (Se nem osztályművelet, se nem példányművelet.) Nem példányosodó osztály: Akár közvetlenül, akár örökölten csak osztályattribútumai és osztályműveletei vannak.

16 16Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Az újrafelhasználás esetei Példányosítás Öröklődés (kiegészülve a polimorfizmussal) Kész objektumok újrafelhasználása

17 17Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Objektumok kapcsolatai Asszociáció Az asszociáció olyan kapcsolat, ami kifejezésre jut az egyik vagy mindkét objektum szerkezetében: Az egyik objektumot vagy annak mutatóját attribútumként tartalmazza a másik objektum szerkezete.

18 18Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Objektumok kapcsolatai Asszociáció (folytatás) Kapcsolat neve (+szerepnevek) multiplicitása navigáció iránya (láthatóság) minősítése

19 19Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Objektumok kapcsolatai Aggregáció és kompozíció Általában a kompozíciónak közvetlen attribútuma a komponens. Általában az aggregációnak a részobjektum mutatója képezi egy attribútumát.

20 20Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Objektumok (osztályok) kapcsolatai Függőség Ez a kapcsolat nem látszik az osztályok szerkezetéből.

21 21Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Megjegyzések: Egy OO alkalmazás (program) nem utasítások sorozata, hanem objektumok együttműködése. Az objektumok közötti kapcsolat mindig azt jelenti, hogy az egyik objektum (az ügyfél = a kliens) használja a másikat (a szolgáltatót = a szervert). Az ügyfél objektumnak „látni” kell a szolgáltató objektumot, különben nem tudja felkérni a szolgáltatásra. - Ha két objektum kölcsönösen használja egymást, akkor kölcsönösen látniuk kell egymást. Egy x objektum általában úgy látja az y objektumot, hogy az x-nek egyik attribútuma vagy maga az y, vagy az y mutatója.

22 22Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Osztályok közötti függőségek


Letölteni ppt "1Objektumorientált elemzés és tervezés - Alapfogalmak2009.09.01. Gyurkó György Objektumorientált elemzés és tervezés Alapfogalmak."

Hasonló előadás


Google Hirdetések