Elméleti ZH-ra felkészülést segítő kérdések vizuális programozásból

Az alábbi kérdéssor nem teljes (a ZH-t megelőző előadást követő napig változhat), és nem teljesen azonos a ZH-n ténylegesen megjelenő kérdésekkel. A célja az, hogy egy fogódzót adva segítse a hallgatókat a felkészülésben.

  1. Nyelvi alapok és ismétlés
    1. Ismertesse az automatikus tulajdonság fogalmát, írjon rá egy példát.
    2. Mi az indexelő és milyen korlátozások vonatkoznak rá?
    3. Mi a bővítő metódus (ismertetés)?
    4. Írjon egy példát bővítő metódusdefiniálására és használatára.
    5. Mit jelent az, hogy egy metódus statikus?  (itt legalább két fontos tulajdonságot kell megadni)
    6. Ismertesse a virtuális metódus fogalmát és jellemzőit.
    7. Mi a lambda kifejezés (ismertetés)?
    8. Írjon egy példát lambda kifejezésre.
    9. Mi a metódusreferencia (ismertetés)?
    10. Ismertesse a közzétevő/feliratkozó eseménykezelési modellt.
    11. Hogyan adhatunk át paramétereket egy eseménykezelő metódusnak? (ismertesse úgy az egyparaméteres mint a kétparaméteres eseménykezelő esetét)
    12. Magyarázza el a null propagation működését és írjon rá egy példát.
    13. Mi a string interpolation? Írjon rá egy példát.
    14. Mi az expression body? Írjon rá egy példát.
    15. Ismertesse a Task és az async-await páros fogalmát, feladatát, alkalmazását.
  2. WPF
    1. Hogyan írják le a felhasználói felületet a WPF alkalmazások, amikor nem C# kódból definiáljuk a felületet? Készítsen egy példát, amelyben van egy három menüpontos főmenü, alatta egy eszköztár három gombbal, és az alatt egy szövegmező.
    2. Fordítást követően hol és milyen formában tárolódik a felület leírása (WPF)?
    3. Mi a logikai fa (WPF)? Rajzoljon egy példát, és magyarázza el annak segítségével a logikai fa felépítését.
    4. Ismertesse az Application osztály (WPF) legalább öt tulajdonságát.
    5. Miért van szükség rétegmenedzserekre WPF-ben? Ismertesse a 6 tanult rétegmenedzsert (feladat+jellemzők).
    6. Ismertesse a DependencyProperty fogalmát és jellemzőit (WPF).
    7. Ismertesse, hogy hogyan oldható meg az ikonok befordítása a szerelvénybe, illetve képek tárolása a szerelvényen kívül. (WPF)
    8. Milyen célt szolgálnak a "parancsok" (WPF)? Mi a CommandBinding feladata?
    9. Ismertesse a három WPF esemény típust.
    10. Mit jelent a vezérlők csatolása (WPF)?
    11. Ismertesse a validálási szabályokat. (WPF)
    12. Egy konkrét példán keresztül mutassa be, hogy hogyan oldható meg, hogy egy olyan metódus módosíthassa a felhasználói felület tartalmát, ami nem a felhasználói felület szálán fut?
  3. Grafikus megjelenítés WPF felületen
    1. Mutassa be a 2D rajzolás lehetőségeit (szintjeit) WPF-ben. Mindegyiknél nevezzen meg legalább egy előnyös és egy hátrányos tulajdonságot.
    2. Mutassa be egy-egy mondatban a transzformációhoz kapcsolódó 6 osztályt (WPF) és ábrák segítségével mutassa be a SkewTransform paramétereinek értelmezését.
    3. Ismertesse a három animáció típust egy-egy mondatban, és nevezzen meg mindegyikhez legalább egy tipikus osztályt (WPF).
    4. Ismertesse részletesen a lineáris animációt (WPF).
    5. Ismertesse részletesen az útvonal alapú animációt (WPF).
  4. Adatbázisok elérése
    1. Ismertesse az  ODBC-n és az OLE DB-n keresztüli adatbázis elérési módokat.
    2. Ismertesse a három rétegű alkalmazás fogalmát és az egyes rétegek feladatait.
    3. Hasonlítsa össze a két tanult adatelérési modellt (direct access, disconnected access).
    4. Ismertesse a "Provider" objektumokat és fontosabb jellemzőiket.
    5. Ismertesse a "Consumer" objektumokat és fontosabb jellemzőiket kiemelve a típusos objektumok előnyeit.
    6. Ismertesse kapcsolat alapú (direct access) adatbáziselérés esetén a lekérdezés, beszúrás, módosítás és törlés lépéseit.
    7. Ismertesse kapcsolat nélküli adatbáziselérés esetén a lekérdezés lépéseit, a táblák közötti kapcsolat létrehozását, valamint a módosítások végrehajtását és érvényesítését.
    8. Hasonlítsa össze a típusos és típus nélküli DataSet-eket. Melyik alkalmazása előnyösebb és miért?
    9. Milyen interfészt kell implementáljon egy gyűjtemény ahhoz, hogy LINQ lekérdezést hajthassunk végre rajta? Ha ezt az interfészt nem implementálja egy gyűjtemény, akkor milyen eszközzel és hogyan készíthetünk belőle egy olyan gyűjteményt, ami már lekérdezhető LINQ segítségével? Írjon egy egyszerű példát erre.
    10. Tervezzen meg egy két, egymással kapcsolatban álló táblából álló típusos DataSet-et a DataSet Designer által alkalmazott grafikus jelölésmódot használva. Az ábrán szerepelnie kell a DataSet névnek, a táblaneveknek, a táblaadapter neveknek, a mezőneveknek, kulcsoknak és az idegen kulcsnak. Lássa el szöveges magyarázattal az ábrát. Írjon egy egytáblás lekérdezést, amiben szerepel a where, és az eredményrekordok tartalmaznak projekciót (select new {...}), és magyarázza azt el. Írjon egy kéttáblás (a táblák összekapcsolását tartalmazó) lekérdezést, amiben van csoportosítás (group-by-into) , és magyarázza azt el.
    11. Milyen objektumra hívhatóak meg a Distinct<>(), Count<>(), Sum<>(), Min<>() és Max<>() metódusok, és milyen feladatot látnak el?
    12. Írjon egy-egy példát lambda kifejezésre FindAll és Any metódusokhoz, és magyarázza el azokat.
    13. Milyen objektumok tartják nyilván WPF alkalmazásokban azt, hogy az adatforrás mely rekordja/objektuma az aktuális?
    14. Ismertesse egy-egy mondatban a három WPF adatkötési módot (OneTime, OneWay, TwoWay).
    15. Ismertesse az XML dokumentumok felépítését, és mutassa be egy példán keresztül, hogy milyen formában tárolhatunk adatot egy XML dokumentumban. A példában alkalmazzon álnévvel rendelkező névteret is.
    16. Mutassa be egy példán keresztül, hogy hogyan állíthatunk elő a memóriában egy XML dokumentumot egy gyűjtemény lekérdezésével.
    17. Készítsen egy XML dokumentumot (egy XML fájl tartalmát írja le a lapra), ami attribútumként és beágyazott formában is tartalmaz adatot. Készítsen egy-egy LINQ lekérdezést mindkét adattípushoz.
    18. Mi az Entity Framework? Mit nyújt?
    19. Ismertesse a Database First és a Model First koncepciókat. Mit jelent a Lazy Loading és az Eager Loading megoldás? (Entity Framework)
    20. Mutassa be egy példán keresztül a Code First típusú megközelítést. (Entity Framework)