Tervezési minták - gyakorló feladatai

1. feladat

Készítsen egy egyszerûsített szakértõ rendszert, amely a következõ formátumú nyelvet értelmezi IF kifejezés THEN utasitas

ahol a kifejezés egy logikai kifejezés, ami tartalmazhat a) valós számok közötti +, -, *, / operátorokat b) valós számok közötti <, ⇐, ==, >, >=, != operátorokat, c) logikai kifejezések közötti AND, OR NOT operátorokat

az utsítás egy CCommand osztályból származó objektum

Felhasználandó minták: interpreter, factory

2. feladat

Egészítse ki az elõadáson tárgyalt Command pattern példaprogramját, úgy, hogy az hozzáadás, törlés mellett módosítás, illetve még két, tetszõlegesen kiválasztott parancsot tartalmazzon Tegye lehetõvé makrók írását, ahol a makró elemi parancsokat illetve további makrókat tartalmazhaz.

Felhasználandó minták: command, composite

3. feladat

Egészítse ki az elõadáson tárgyalt Iterátor pattern példaprogramját, úgy, hogy létrehoz négy külsõ iterátort, amelyek csupán az egyes emloyee peldányokon iterálnak végig.

Felhasználandó minták: iterator

4. feladat

Egészítse ki az elõadáson tárgyalt Command pattern példaprogramját, úgy, hogy az egyes mûveletek elõtt elmenti a relevásn objektumok státuszát, és lehetõvé teszi egy vagy több parancs visszavonását.

Felhasználandó minták: command, memento

5. feladat

Egészítse ki az elõadáson tárgyalt Command pattern példaprogramját, úgy, hogy az minden eseményt 'lustán' logol egy fájlba. A 'lusta' logolás egy bejegyzés listát tart kaban, amely n bejegyzés után vagy kilépéskor ír a fájlba.

Felhasználandó minták: command, observer, proxy

6. feladat

Implementáljon 4 kölönbözõ sorbarendezõ algoritmust egész számokból álló tömb sorbarendezésére. A tömb méretétõl függõen alkalmazzon más-más algoritmust.

Felhasználandó minták: strategy, factory

7. feladat

Imlementáljon genetikus algoritmust. Az alkalmazás működjön hatékonyan nagyszámú populáció esetén. (flyweight). A genetikus operátorok (command) mentsék el az objektumok státuszát, így legyen lehetőség a kezdeti populáció újra előhívására illetve az algoritmus 'ujrajátszására' (memento)

Felhasználandó minták: flyweight, command, memento

8. feladat

1. Tekintse a következő tipikus domain nevet:

alpha.ait.uni-miskolc.hu

Ez különböző al-domainekből épül fel. Tegyük fel, hogy mindegyik al- domain az uni-miskolc.hu nevű gép fájlrendszerének egy könyvtárát jelöli. Bármely al-domain tartalmazhat al-domaineket, illetve HTML fájlokat, amiket URL segítségével érünk el. Építse fel az al-domain hierarchiát. A composite pattern segítségével mutassa meg a) a könyvtár tartalmát vagy b) a hivatkozott fájl tartalmát.

Felhasználandó minták: composite

 
tanszek/oktatas/modern_szoftverfejlesztesi_modszerek/feladatok.txt · Last modified: 2007/02/11 18:48 by nehez
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki