Objektumvezérelt rendszerek tervezése 4.óra – Composite, Decorator © Fülöp Lajos.

Slides:



Advertisements
Hasonló előadás
Tervezési minták és a PHP 5
Advertisements

UML Példa © Fülöp Lajos.
Rendszerfejlesztés gyakorlat - © Fülöp Lajos
CENTROSZET Szakképzés-szervezési Nonprofit Kft TÁMOP /1-2F KMOP-4.1.1/A Szoftverfejlesztés eredményei Közös szervezetmenedzsment.
Rendszerfejlesztés II gyak
Programozás III FACTORY, KOMPOZÍCIÓ és EGYEBEK.
1 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék IT rendszerek modellezése Micskei Zoltán
IT infrastruktúra modellezése
OBJEKTUMORIENTÁLT PROGRAM
Vizuális modellezés Uml és osztálydiagram UML eszközök
Rendszerfejlesztés gyakorlat - © Nagy Csaba

Fejlett Programozási Technológiák II. Világos Zsolt 1. gyakorlat.
Fejlett Programozási Technológiák II. Világos Zsolt 12. gyakorlat.
Az objektum-orientált tervezési alapelvek kritikai vizsgálata
Ismétlés Szabály: Minden diák kap egy-egy kártyát 1-8- ig. Minden diák ír egy-egy ismétlő kérdést a lapjára. Click a Gomb-ra. A diák akinek a számnak.
Hasonlóságelemzés COCO használatával a MY-X elemzőben
Nézettáblák létrehozása, módosítása és törlése
Az UML 4 rétegű metamodell szerkezete
Ficsor Lajos CPP6 / 1 Virtuális bázisosztály Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék.
Objektum Vezérelt Szoftverek Analízise Ferenc Rudolf és Beszédes Árpád Szegedi Tudományegyetem FrontEndART.
1Objektumorientált elemzés és tervezés - Alapfogalmak Gyurkó György Objektumorientált elemzés és tervezés Alapfogalmak.
Objektumorientált tervezés és programozás II. 3. előadás
Vezérlők használata és írása Ez az előadó neve beosztása vállalata.
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT
Önálló labor munka Csillag Kristóf 2005/2006. őszi félév Téma: „Argument Mapping (és hasonló) technológiákon alapuló döntéstámogató rendszerek vizsgálata”
2008/2009 – 2. félév levelező tagozat
Hernyák Zoltán Programozási Nyelvek II.
Objektumorientált programozás
Objektumorientált tervezés
UML Unified Modelling Language Szabványos jelölésrendszer elemeivel írja le diagramok formájában a rendszer működését a különböző modell-nézetek szempontjából.
Adatbázisok gyakorlat
Adatbázis kezelés.
IT rendszerek modellezése
A projekt célja Egy 2 dimenziós rakpart készítése a TBA cég megbízásából. Az Eclipse plug-in megengedi a felhasználónak, hogy különböző tárgyakat rajzoljon.
Objektumvezérelt rendszerek tervezése
Objektumvezérelt rendszerek tervezése 7. óra – Iterator, State, Interpreter © Szőke Gábor.
Adatbázis-kezelés.
Miskolci Egyetem Gazdaságtudományi Kar Üzleti Információgazdálkodási és Módszertani Intézet Mintavételes Eljárások.
Objektumvezérelt rendszerek tervezése
Objektumvezérelt rendszerek tervezése 9.óra – Builder, Observer © Nagy Csaba.
Objektumvezérelt rendszerek tervezése 5.óra – Singleton, Visitor, Abstract Factory © Nagy Csaba.
Komponens alapú programozásKompAlap Komponens alapú programozás Bevezetés Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék Ez a tananyag felhasználja.
UML modellezés 3. előadás
Számítógépes grafika I. AUTOCAD alapok
Ficsor Lajos CPP2 / 1 Származtatási mechanizmus a C++ nyelvben Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék.
Haladó C++ Programozás Programtervezési minták – alapok Sonkoly Balázs
Webes MES keretrendszer fejlesztése Kiss Miklós Dániel G-5S8 Tervezésvezető: Dr. Hornyák Olivér.
Gyurkó György. Az OO programozás és tervezés története 1960-as évek: SIMULA (véletlen folyamatokat szimuláló programok írása) az OO nyelvek őse 1970-es.
1 Objektum orientált programozás Az objektumok és az osztályok – példányosodás Nagy Szilvia.
Programozás I. 3. gyakorlat.
1 Számítógépek felépítése 13. előadás Dr. Istenes Zoltán ELTE-TTK.
Objektumvezérelt rendszerek tervezése 6.óra – Factory Method © Szőke Gábor.
A projekt célja O Egy 2 dimenziós rakpart készítése a TBA cég megbízásából. O Az Eclipse plug-in megengedi a felhasználónak, hogy különböző tárgyakat.
Ficsor Lajos Objektumok inicializálása CPP4 / 1 Objektumok inicializálása Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék.
Reverse Engineering Rendszerfejlesztés II. 2. óra.
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 6. gyakorlat.
Programozás III JPA.
A szoftver mint komplex rendszer: objektumorientált megközelítés.
Strukturális tervezési minták
Programtervezési minták
Szemantikai adatmodellek
UML használata a fejlesztésben, illetve a Visual Studio 2010-ben
Neumann János Informatikai Kar
Hernyák Zoltán Programozási Nyelvek II.
Adatkötés Sablonokkal
Hálózati architektúrák
Bevezetés Tematika Számonkérés Irodalom
3. osztályban.
Nagy Attila1,2, Rovó László1, Kiss József Géza1
Előadás másolata:

Objektumvezérelt rendszerek tervezése 4.óra – Composite, Decorator © Fülöp Lajos

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék OMT notations © Nagy Csaba OMT (Object Modeling Technique) Nem UML! (de azért nagyon hasonló) Gamma et al. használják minták megadásához Osztály, Object, Interaction diagramok-at ír le

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék OMT notations © Nagy Csaba A kliensnek tényleges szerepe van a mintában. A kliensnek szerepe nincsen meghatározva a mintában, de a megértésben segíthet melyik osztályokkal állhat kapcsolatban.

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék OMT notations © Nagy Csaba Öröklődés Tartalmazás 1..* Asszociáció példányosítás Attribútum neve

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék OMT notations © Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Composite Cél: rész-egész szerkezetek leképezése objektum- hierarchiára (fa-szerkezetre), miközben a kliens a rész és egész egységeket azonosan kezeli Alkalmazhatóság:  rész-egész szerkezetek hierarchiáját kell leírni  a kliensnek nem kell hogy észrevegye a különbségeket a kompozíciók és primitívek között © Fülöp Lajos

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Példa Számítógép alkatrészekből/egységekből épül fel  Reprezentáljuk composite mintával? Adott számítógép árát az alkatrészek árai határozzák meg  Számoljuk ki, de hogyan? © Fülöp Lajos

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Composite példa – Composite.cpp Component – Egység Composite – Összetettegység  Specializáljuk a Composite-ot: Szgep, Lap, Kartya Leaf  FloppyDisk, Videokartya, Hangkartya, Alaplap Operation – Ar() : visszaadja az adott egység árát Jeloljuk a mintaresztvevoket sztereotipusokkal  Minta neve::minta résztvevő neve © Fülöp Lajos

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Composite példa © Fülöp Lajos, Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Decorator Cél: további felelősségek/tulajdonságok dinamikus csatolása az objektumhoz. Flexibilis alternatíva a funkcionalitás öröklődéses bővítése mellett Alkalmazhatóság:  új felelősségeket kell hozzáadni egyes objektumokhoz dinamikusan, miközben a kliens objektumok ezt transzparensen érzékelik © Fülöp Lajos, Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Decorator © Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Decorator példa Szövegmegjelenítő program Tetszőleges szöveget akarunk módosítani A módosításnak flexibilisnek kell lennie  A felhasználó futási időben (dinamikusan) közli a rendszerrel, hogy nagybetűsíteni szeretné a szöveget (megnyom egy gombot a user interfacen, amit a kiválasztott szövegre érvényesíteni kell) © Fülöp Lajos

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Decorator példa Component – Text ConcreteComponent – Literal Decorator – TextDecorator ConcreteDecorator – ToUpperDecorator Operation – get() Decorator.cpp © Fülöp Lajos

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Decorator példa © Fülöp Lajos

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Feladat Minden hallgató mondjon a teremben egy további lehetséges konkrét dekorátort az előző példához! Minden csapat mondjon a teremben saját ötleten alapuló Composite vagy Decorator példát! (nem hangzott el órán és nem volt választható projekttéma) © Fülöp Lajos, Nagy Csaba