„Objektumorientált szoftvertervezés - Vizsga, 2008.06.03.” változatai közötti eltérés

A VIK Wikiből
Ugrás a navigációhoz Ugrás a kereséshez
(Új oldal, tartalma: „{{GlobalTemplate|Infoszak|OotVizsga20080603}} ===OO Vizsga 2008-06-03=== __TOC__ ====1. Hibernate: Mi(k)nek a metódusa createQuery()? (2p)==== * '''session''' -> e…”)
(Nincs különbség)

A lap 2012. október 21., 20:44-kori változata

Ez az oldal a korábbi SCH wiki-ről lett áthozva. Az eredeti változata itt érhető el.

Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor kérlek javíts rajta egy rövid szerkesztéssel.

Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót


OO Vizsga 2008-06-03

1. Hibernate: Mi(k)nek a metódusa createQuery()? (2p)

  • session -> ez a jó
  • perzisztens kollekció
  • tábla
  • tranzakció

2. Adott az alábbi kód. Mit csinál, mi a következménye, hogy tehető korrekté? (6p)

Object object = db.getRoot("username");
ObjectStore.destroy(object);

A getRoot és a destroy közé kell:

db.setRoot("username", null);

Ezzel a root mögötti objektumot tudjuk törölni.

3. WMC (Weighted Method Class) metrika definíciója. (2p)

  • Egy osztályhoz tartozó metódusok CC-je (metódus bonyolultsága) összesen
  • Egy osztály elkézítésének bonyolultsága ?

4. Egy funkción belül mikor nevezzük a kohéziót procedurálisnak? Miről ismerhető fel könnyen? (2p)

  • instanceof (???)

5. Aktív objektum mintában az ütemező (Scheduler) a Request_Method példány meghívásakor átad egy paramétert. Mi az és mi a feladata?

Valószínűleg ez a Servanthoz lesz a referencia, ami majd futtatni fogja a metódus kódját. Másképp honnan tudja a method_request, hogy melyik servanthoz hívjon be? Ez tűnik logikusnak. forrás

6. Adott egy bináris fa, a fa csúcsaiban vagy Guard vagy Node objektumok, ezeknek közös az ősük, amely vizitálható. Adott a vizitor interfész, illetve két megvalósítása:

  • Visit_Print: ez kiírja a Node-ban tárolt értéket
  • Sequ3: a faelemet meglátogatja a konstruktorában megadott 3 vizitort (mint a diasorban a Sequence, csak ebben 3 van)
  • Visit_InOrder: a Sequ3-ból származik, a fa inorder bejárását végzi el, közben minden Node element végrehajtja a konstruktorában megadott vizitort. Ez nincs készen, ez a c) feladat
  1. Visitor interfészbe a metódusok beírása az UML diagramon (1p)
  2. Az inorder bejáráshoz szükséges egyéb vizitorok megadása az UML-diagramon és konstruktoraikkal, metódusaikkal (4p)
  3. Visit_InOrder konstruktorának megírása a fenti többi vizitor használatával (4p)
  4. A vizitorok létrehozása és meghívása, hogy a fa elemei listázásra kerüljenek (2p)

7. RMI során átadható paraméterek osztályozása és a paraméterátadás módja (felsorolás + 1-1 rövid mondattal jellemzés, 3p)

OotElosztottRendszerek

8. Volt egy XSD séma, ahol az elemen belül volt egy simpletype definiálva, át kellett írni olyanra, hogy kívül legyen (2p)

9. XSD sorrendiséget és gyakoriságot befolyásoló tag-ek (felsorolás + 1-1 rövid mondattal jellemzés, 5p)

Sorrendiséghez:

  • all - tetszőleges sorrendben
  • choice - a listából csak az egyik
  • sequence - pontosan ugyanabban a sorrendben

Gyakoriság:

  • minOccurs maxOccurs attribútumok

10. Milyen hibákat kaphatunk egy XML dokumentum SAX-al való feldolgozása során? (3p)

  • fatal error - a dokumentum nem jól formált (szintaktikai hiba, nincs lezárva tag)
  • error - a dokumentum nem valid (szemantikai hiba, pl nem felel meg a sémának)
  • warning - figyelmeztetés (pl. ha kétszer definiálunk egy típust)

11. Mik a SAX (simple api for XML) jellemzői? (3p)

  • eseményvezérelt
  • soros elérésű
    • alacsony memória-igény
    • nagy sebesség
    • nem lehet előre- és visszaugrani
  • állapotfüggetlen feldolgozás

12. Mik az AWT konténerek felelősségei? (3p)

  • komponensek megtalálása
  • fókusz továbbadása
  • komponensek elhelyezése

13. Milyen tervezési mintákat valósítanak meg (Swing)? (4p)

  • Konténerek és komponensek összekapcsolása
  • Eseménykezelés
  • LayoutManager használata
  • JScrollPane használata

Szerintem inkább ez kell ide:

  • Konténerek + komponensek - Composite pattern
  • Eseménykezelés - Observer pattern
  • LayoutManager - Strategy pattern
  • JScrollPane-nél Decorator pattern
  • JTree-nél Null Object pattern

14. Miért nem ajánlott beágyazott/mobil környezetben a Listener-alapú eseménykezelés? (2p)

  • túlságosan is erőforrásigényes
  • nem engedheti meg egy beágyazott környezet a beragadott objektumokat
  • sokszor dinamikusan jönnek létre és szűnnek meg az objektumok

-- aldaris - 2009.05.27.

-- buc - 2008.06.03.

-- Csádám - 2010.05.31.