Objektumvezérelt rendszerek tervezése 5.óra – Singleton, Visitor, Abstract Factory © Nagy Csaba.

Slides:



Advertisements
Hasonló előadás
7. előadás.  Zend_Auth komponens  Authentikációs típusok  Az authentikáció menete  Zend_Acl_Resource  Zend_Acl_Role  Jogosultságkezelés ZF-ben.
Advertisements

Valóban azt látjuk, ami a retinára vetül? Dr. Kosztyánné Mátrai Rita Eötvös Loránd Tudományegyetem, Bölcsészettudományi Kar, Informatika Tanszék.
Osztály leszármaztatás
2010/2011 ősz Klár Gergely  A DirectX egy alacsonyszintű API gyűjtemény  Multimédiás alkalmazások futtatására, írására szolgál  Részei.
Tervezési minták és a PHP 5
C++ programozási nyelv Gyakorlat hét
Programozás III OOP ALAPOK.
Mi van a számítógépházban?
Programozás III KOLLEKCIÓK 2..
Programozás III FACTORY, KOMPOZÍCIÓ és EGYEBEK.
Objective-C Memória kezelés
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Plugin fejlesztés – tervezési minták.
© Kozsik Tamás Beágyazott osztályok A blokkstrukturáltság támogatása –Eddig: egymásba ágyazható blokk utasítások Osztálydefiníciók is egymásba.
OBJEKTUMORIENTÁLT PROGRAM
Fájlkezelés, IO Kivételkezelés Belső osztályok
Vizuális modellezés Uml és osztálydiagram UML eszközök
Abstract osztályok és interface-ek Beolvasás és kiíratás 7. gyakorlat.
Rendszerfejlesztés gyakorlat - © Nagy Csaba
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 5. Gyakorlat Öröklődés, virtuális függvények,
Programozás II. 3. Gyakorlat C++ alapok.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 6. Gyakorlat const, static, dinamikus 2D.

Fejlett Programozási Technológiák II. Világos Zsolt 1. gyakorlat.
Fejlett Programozási Technológiák II. Világos Zsolt 12. gyakorlat.
Tömbök ismétlés Osztályok Java-ban Garbage collection
Polák József Tanszéki mérnök Közúti és Vasúti Járművek Tanszék
A Java programozási nyelvSoós Sándor 1/17 Java programozási nyelv 4. rész – Osztályok II. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai.
A C++ programozási nyelvSoós Sándor 1/15 C++ programozási nyelv Gyakorlat hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet.
A C++ programozási nyelvSoós Sándor 1/12 C++ programozási nyelv Gyakorlat - 8. hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet.
Java programozási nyelv 5. rész – Osztályok III.
C# tagfüggvények.
Modellezés és tervezés c. tantárgy Budapesti Műszaki Főiskola Neumann János Informatikai Kar Alkalmazott Informatikai Intézet Mérnöki Informatikus MSc.
A CAD/CAM modellezés alapjai
6. előadás Parametrikus polimorfizmus. Generikus programozás. Az Ada sablonok.
© Kozsik Tamás Csomagok. © Kozsik Tamás A program tagolása Típusdefiníciók (osztályok, interfészek) Metódusok Blokk utasítások Csomagok.
Ficsor Lajos Template-ek CPP8/ 1 Template-ek. Ficsor Lajos Template-ek CPP8/ 2 A template fogalma Kiindulási probléma: tetszőleges típusokon kellene ugyanolyan.
Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék
Objektumok. Az objektum információt tárol, és kérésre feladatokat hajt végre. Az objektum adatok (attribútumok) és metódusok (operációk,műveletek) összessége,
Objektumorientált tervezés és programozás II. 3. előadás
Javascript Microsoft által készített kiegészítése Statikus típusosság Nagy projektek Windows 8 fejlesztésénél WinRT egy részét ebben írták Nyílt forráskódú,
A Neumann-elvek 3. ÓRA.
Dokumentumkészítés Emelt szint: 60 perc 30 pont.
Objektumvezérelt rendszerek tervezése
Objektumvezérelt rendszerek tervezése 7. óra – Iterator, State, Interpreter © Szőke Gábor.
Objektumvezérelt rendszerek tervezése 4.óra – Composite, Decorator © Fülöp Lajos.
Objektumvezérelt rendszerek tervezése
Objektumvezérelt rendszerek tervezése 9.óra – Builder, Observer © Nagy Csaba.
Programozás III KIVÉTEL.
Komponens alapú programozásKompAlap Komponens alapú programozás Bevezetés Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék Ez a tananyag felhasználja.
Adatbáziskezelés. Adat és információ Információ –Új ismeret Adat –Az információ formai oldala –Jelsorozat.
Ficsor Lajos CPP2 / 1 Származtatási mechanizmus a C++ nyelvben Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék.
1 Objektum orientált programozás Az objektumok és az osztályok – példányosodás Nagy Szilvia.
Programozás I. 3. gyakorlat.
Intelligens Mérnöki Rendszerek Laboratórium Alkalmazott Matematikai Intézet, Neumann János Informatikai Kar, Óbudai Egyetem Mielőtt a virtuális térbe lépnénk.
Objektumvezérelt rendszerek tervezése 6.óra – Factory Method © Szőke Gábor.
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.
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 4. gyakorlat.
TÁMOP /1-2F JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam Osztályok, objektumok definiálása és alkalmazása. Saját.
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
Viselkedési minták Behavioral patterns.
Objektumorientált fejlesztés – szoftverobjektumok fizikai megjelenése
Neumann János Informatikai Kar
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
3. osztályban.
Konverziós operátorok
Előadás másolata:

Objektumvezérelt rendszerek tervezése 5.óra – Singleton, Visitor, Abstract Factory © Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Singleton Cél: biztosítja, hogy egy osztályból csak egy objektum keletkezzen amely globálisan elérhető Alkalmazhatóság:  pontosan egy példány létezhet amelyeket a kliensek elérhetnek  az egyedüli példány bővíthető kell hogy legyen (származtatással) amely ugyanúgy használható © Nagy Csaba

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

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Singleton példa – Singleton.cpp Singleton – Singleton osztály  Protected konstruktor  Instance metodus, amivel lekérdezhetjük és létre is hozzuk az egyetlen példányt s1,s2 pointerek az egyetlen Singleton objektumra © Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Singleton példa © Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Visitor Cél: objektum-hierarchián végezhető művelet reprezentálása az osztályok megváltoztatása nélkül Alkalmazhatóság:  több független műveletet kell elvégezni egy objektum-struktúrán (az osztályok „beszennyezése” nélkül)  a struktúrát meghatározó osztályok ritkán változnak, új műveleteket viszont sűrűn definiálhatunk © Nagy Csaba

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

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Visitor példa Composite mintánál vizsgált számítógép alkatrészek példája Van két számítógép konfiguráció, különböző árkategóriájú alkatrészekkel Az alkatrészeknek van egy drága és egy olcsó ára Két különböző konfigurációjú számítógép árát számoljuk ki két különböző visitorral! © Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Visitor példa Element – CompositeElement  Composite pattern: Component - Equipment Composite – CompositeEquipment Specializáljuk a Composite-ot:  Szgep, Lap Leaf  FloppyDisk,Processzor, Alaplap Visitor – EquipmentVisitor ConcreteVisitor – Conf_1_Visitor, Conf_2_Visitor © Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Visitor példa © Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Abstract Factory Cél: kapcsolódó vagy függő objektumcsaládok létrehozása a konkrét osztály megnevezése nélkül Alkalmazhatóság:  rendszer független a termékek szerkezetétől, gyártásától  több termékcsalád kell hogy legyen  termékcsalád termékeit együtt kell használni  termékek implementációja rejtett, interfész adott © Nagy Csaba

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

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Abstract Factory példa Beolvasunk egy szöveget és a hosszától függően dőlt vagy vastag betűs szövegként jelenítjük meg. A megoldáshoz definiálunk egy ItalicsWord és egy BoldWord osztályt, a szöveg hosszától függően a megfelelő formájúvá alakítjuk, azaz a megfelelő osztályt példányosítjuk. © Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Abstract Factory példa – AbstractFactory.cpp AbstractFactory – Abstract Factory ConcreteFactory – ItalicsFactory, BoldFactory AbstractProduct – AbstractWord ConcreteProduct – ItalicsWord, BoldWord © Nagy Csaba

Szegedi Tudományegyetem – Szoftverfejlesztés Tanszék Abstract Factory példa © Nagy Csaba