„Záróvizsga kvíz - Sznikák” változatai közötti eltérés

A VIK Wikiből
Ugrás a navigációhoz Ugrás a kereséshez
(kérdések hozzáadása)
a (csonk kérdés javítás)
18. sor: 18. sor:
 
# A C# eseményekről leiratkozás a -= operátorral lehetséges.
 
# A C# eseményekről leiratkozás a -= operátorral lehetséges.
  
== A feladat egy DocumentRepository (dokumentum tár) osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha a egy dokumentumot töröltek belőle, és az esemény paramétereiben megadja a törölt dokumentum nevét (docName, string típusú)! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2023 jun) ==
+
== A feladat egy DocumentRepository (dokumentum tár) osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha egy dokumentumot töröltek belőle, és az esemény paramétereiben megadja a törölt dokumentum nevét (docName, string típusú)! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2023 jun) ==
 
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)
 
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)
 
{{Kvízkérdés|típus=több|válasz=2,5,6,9}}
 
{{Kvízkérdés|típus=több|válasz=2,5,6,9}}
 
 
# public DocumentDeletedHandler DocumentDeleted;
 
# public DocumentDeletedHandler DocumentDeleted;
 
# DocumentDeleted(docName);
 
# DocumentDeleted(docName);
37. sor: 36. sor:
 
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)
 
(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)
 
{{Kvízkérdés|típus=több|válasz=2,5,6,9}}
 
{{Kvízkérdés|típus=több|válasz=2,5,6,9}}
 
 
# Amikor egy .NET alapú projektet - speciálisabb beállítások alkalmazása nélkül - lefordítunk (pl. Visual Studioban), olyan .NET szerelvény (exe, dll) születik, mely natív utasításokat tartalmaz
 
# Amikor egy .NET alapú projektet - speciálisabb beállítások alkalmazása nélkül - lefordítunk (pl. Visual Studioban), olyan .NET szerelvény (exe, dll) születik, mely natív utasításokat tartalmaz
 
# .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk
 
# .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk

A lap 2023. december 8., 08:45-kori változata

ZVSznikák
Statisztika
Átlagteljesítmény
-
Eddigi kérdések
0
Kapott pontok
0
Alapbeállított pontozás
(-)
-
Beállítások
Minden kérdés látszik
-
Véletlenszerű sorrend
-
-


Tartalomjegyzék

Az alábbiak közül mely állítások igazak? (2023 jun)

Típus: több. Válasz: 1,2. Pontozás: nincs megadva.

  1. Az érettség a szoftvertermékre vonatozó nemfunkcionális követelmény
  2. A Model-View-Controller interaktív rendszerek tervezésekor használható architektúra stílus
  3. Az ekvivalencia particionálás fehérdoboz tesztelési technika
  4. A SPICE lépcsős érettségi modell

Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jun)

(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)

Típus: több. Válasz: 4. Pontozás: nincs megadva.

  1. C# nyelven nincs lehetőség arra, hogy egy delegate objektumot függvényeknek paraméterként adjunk át.
  2. Egy C# property (tulajdonság) bevezetésekor a beállító szakasz megírása során a set kulcsszót kell használni, és a set kulcsszót követően "(" ")" zárójelek között be kell vezetni egy paramétert, melyben a tulajdonság új értékét megkapjuk.
  3. C# nyelven a readonly kulcsszó alkalmazásával van lehetőségünk csak olvasható tulajdonságok (property-k) bevezetésére.
  4. A C# eseményekről leiratkozás a -= operátorral lehetséges.

A feladat egy DocumentRepository (dokumentum tár) osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha egy dokumentumot töröltek belőle, és az esemény paramétereiben megadja a törölt dokumentum nevét (docName, string típusú)! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2023 jun)

(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)

Típus: több. Válasz: 2,5,6,9. Pontozás: nincs megadva.

  1. public DocumentDeletedHandler DocumentDeleted;
  2. DocumentDeleted(docName);
  3. public DocumentDeletedHandler DocumentDeleted(string docName);
  4. event void DocumentDeleted(string docName);
  5. delegate void DocumentDeletedHandler(string docName);
  6. if (DocumentDeleted != null)
  7. DocumentDeletedHandler(docName);
  8. public event DocumentDeletedHandler DocumentDeleted(string docName);
  9. public event DocumentDeletedHandler DocumentDeleted;
  10. public delegate DocumentDeletedHandler DocumentDeleted;
  11. if (DocumentDeletedHandler != null)

Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2023 jun)

(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)

Típus: több. Válasz: 2,5,6,9. Pontozás: nincs megadva.

  1. Amikor egy .NET alapú projektet - speciálisabb beállítások alkalmazása nélkül - lefordítunk (pl. Visual Studioban), olyan .NET szerelvény (exe, dll) születik, mely natív utasításokat tartalmaz
  2. .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk
  3. A C# JIT compiler feladata, hogy a C# kódot köztes kódra fordítsa le
  4. A .NET futtatókörnyezet rövid neve: CLR (Common Language Runtime)

Jelölje meg, mely állítások igazak .NET környezetben szálkezelés vonatkozásában! FIGYELEM, akárhány helyes válasz létezhet! (2023 jun)

(A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.)

Típus: több. Válasz: 1,2. Pontozás: nincs megadva.

  1. A .NET szál létrehozásakor egy szálfüggvényt kell a Thread osztály konstruktorának megadni (egy delegate formájában).
  2. A Thread osztály Join műveletével lehet egy szál futásának a végét bevárni.
  3. Amikor egy .NET AutoResetEvent objektum jelzett állapotba kerül, minden rá várakozó szál tovább futhat.

Adottak az alábbi állítások a Factory Method tervezési mintával kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jun)

Típus: több. Válasz: 1,2. Pontozás: nincs megadva.

  1. A Factory Method tervezési minta megvalósításában egy osztály a leszármazott osztályára bízza egy másik osztály egy objektumának létrehozását.
  2. A Factory Method tervezési minta segítségével egy osztály akkor is létre tudja hozni egy másik osztály egy példányát, ha annak típusát nem ismeri.

Jelölje meg, mely állítások igazak! (A feladat csak akkor ér pontot, ha minden helyes választ -- és csakis ezeket -- megjelöl.) (2023 jun)

Típus: több. Válasz: 1,2. Pontozás: nincs megadva.

  1. A háromrétegű architektúra egyik rétege az üzleti logikai réteg (Business Logic Layer).
  2. A Document-View architektúra az Observer tervezési minta elveire épül.

A Composite tervezési minta fontosabb osztályai a következők: Client, Component, Composite (összetett) és Leaf (levél). Jelölje meg a helyes választ! (2023 jun)

Típus: egy. Válasz: 2. Pontozás: nincs megadva.

  1. A Component osztálynak van egy közös gyűjteménye Composite és Leaf objektumokból.
  2. A Composite osztálynak van egy művelete, mely egy ciklusban meghívja a tartalmazott objektumok ugyanolyan nevű műveletetét.
  3. A Composite osztálynak van egy gyűjteménye Component, valamint egy másik gyűjteménye Leaf objektumokból.
  4. A Client osztálynak van egy gyűjteménye Composite, valamint egy másik gyűjteménye Leaf objektumokból.
  5. A Component osztálynak van egy gyűjteménye Composite, valamint egy másik gyűjteménye Leaf objektumokból.

Adott az alábbi osztály: (2023 jun)

class DataProcessor
{
	static object syncRoot = new object(); // *1
	bool exit = false; // *2
	List<int> data = new List<int>(); // *3
	public void AddData(int n)
	{
		data.Add(n); // *4
	}
	public void SignalExit()
	{
		lock (syncRoot)
		{
			exit = true; // *5
		}
	}
	public void ProcessData()
	{
		while (!exit)
		{
			lock (syncRoot) // *6
			{
				if (data.Count > 0) // *7
				{
					int n = data[0];
					data.RemoveAt(0);
					Console.WriteLine(n);
				}
			}
			Thread.Sleep(10);
		}
	}
}

Jelölje meg mely állítások igazak a kódrészlet vonatkozásában többszálú környezetben! Célunk, hogy a DataProcessor osztály szálbiztos (thread-safe) legyen. FIGYELEM, akárhány helyes válasz létezhet!

Típus: több. Válasz: 1,2,3. Pontozás: nincs megadva.

  1. A SignalExit() függvényben a *5 sor körüli lock utasítás eltávolítható.
  2. A *1 sor elejéről a static kulcsszó eltávolítható, és célszerű is eltávolítani.
  3. A helyes működés érdekében a *4 sor köré egy lock blokkot kell tenni.
  4. A DataProcessor osztály jelen formájában szálbiztos (thread safe).

Adottak az alábbi állítások a Proxy tervezési minta vonatkozásában! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2023 jun)

Típus: több. Válasz: 1,2,3. Pontozás: nincs megadva.

  1. A Proxy mintában van egy interfész/ősosztály, mely elrejti a kliens számára, hogy nem az eredeti, hanem egy proxy objektummal kommunikál.
  2. A Proxy tervezési minta lehetővé teheti, hogy egy objektumhoz más objektumok szabályozott módon férhessenek hozzá.
  3. A Proxy mintában a kliens objektum kéréseit az alkalmazás futása közben egy proxy objektum fogadja (vagyis a kliens egy proxy objektummal van közvetlen kapcsolatban).
  4. A Proxy tervezési minta lehetővé teszi objektumok fastruktúrába szervezését.


Adottak az alábbi állítások a Proxy tervezési minta vonatkozásában! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2022 jan)

Típus: több. Válasz: 1,3. Pontozás: nincs megadva.

  1. A Proxy mintában van egy interfész/ősosztály, mely elrejti a kliens számára, hogy nem az eredeti, hanem egy proxy objektummal kommunikál.
  2. A Proxy tervezési minta lehetővé teszi objektumok fastruktúrába szervezését.
  3. A Proxy mintában a kliens objektum kéréseit az alkalmazás futása közben egy proxy objektum fogadja (vagyis a kliens egy proxy objektummal van közvetlen kapcsolatban).
  4. A Proxy tervezési minta lehetővé teszi elemi és összetett objektumok egységes kezelését

Adottak az alábbi állítások a C# property, delegate és attribute vonatkozásában. Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! (2022 jan)

Típus: több. Válasz: 2,3. Pontozás: nincs megadva.

  1. Egy C# attribútum alkalmazásakor az attribútum neve elé a @ karaktert kell tenni.
  2. Egy C# delegate objektumot át lehet adni függvényparaméterként is.
  3. A C# attribútumok segítségével deklaratív módon tudunk információt csatolni többek között tagváltozókhoz, metódusokhoz és osztályokhoz.
  4. Feltéve, hogy adott egy Rectangle osztály és annak egy Width tulajdonsága (property), valamint a Rectangle osztály egy rect nevű példánya/objektuma, akkor a tulajdonság beállítása a rect.SetWidth(10) formában lehetséges.

Adottak az alábbi állítások a .NET AutoResetEvent osztályával kapcsolatban. Jelölje meg mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2022 jan)

Típus: több. Válasz: 2,4. Pontozás: nincs megadva.

  1. Eseményére feliratkozni a += operátorral lehet.
  2. Alapvetően a többszálú környezetben történő hatékony jelzés és jelzésre várakozás probléma megoldásának egy eszköze.
  3. Egy objektuma automatikusan jelzett állapotba kerül, amikor egy szál várakozni kezd rá.
  4. Amikor több szál is várakozik egy objektumára, és az objektum jelzett állapotba kerül, csak egy szál futhat tovább.

Egy alkalmazásban egy osztályt működését minél egyszerűbben bővíthetővé, kiterjeszthetővé szeretnénk tenni, akár a működésének/viselkedésének különböző aspektusai (szempontjai) szerint is. Mely tervezési mintát választaná ehhez? (2022 jan)

Típus: egy. Válasz: 9. Pontozás: nincs megadva.

  1. Singleton
  2. Factory method
  3. Abstract factory
  4. Adapter
  5. Memento
  6. Proxy
  7. Template Method
  8. Composite
  9. Strategy
  10. Observer

Az alábbi állítások a .NET Framework platformra vonatkoznak! Jelölje meg, mely állítások igazak! FIGYELEM, akárhány helyes válasz létezhet! (2022 jan)

Típus: több. Válasz: 2,4. Pontozás: nincs megadva.

  1. C# kódot a JIT compiler fordítja köztes (IL) kódra
  2. A .NET IL kód processzor és architektúra független 
  3. .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk
  4. Egy alkalmazás több szerelvényből is állhat

Adott az alábbi Pipes and filters (csővezeték) architektúra filter megvalósítás pszeudokód: (2022 jan)

Data Read()
{
    Data data = prevFilter.Read();
    Data processedData = ProcessData(data);
    return processedData;
}

Melyik forgatókönyvnek felel meg a fenti kód?

Típus: egy. Válasz: 4. Pontozás: nincs megadva.

  1. Passzív szűrő által vezérelt
  2. Csővezeték által vezérelt
  3. Adatforrás által vezérelt
  4. Adatnyelő által vezérelt
  5. Aktív szűrő által vezérelt

Jelölje meg, mely állítások igazak .NET környezetben szálkezelés vonatkozásában! FIGYELEM, akárhány helyes válasz létezhet! (2022 jan)

Típus: több. Válasz: 1,4. Pontozás: nincs megadva.

  1. A szálbizosság (thread safety) fogalma azt jelenti, hogy az adott osztály többszálú környezetben is biztonságosan használható.
  2. A .NET Framework List osztálya szálbiztos (thread safe).
  3. Szálak kiléptetésére a Thread osztály Abort művelete javasolt.
  4. A Thread osztály Join műveletével lehet egy szál futásának a végét bevárni.

A feladat egy Collection (gyűjtemény) osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha az elemszáma megváltozott, és az esemény paramétereiben megadja a régi és az új elemszámot! Adja meg, mely sorok alkalmazásával oldható meg az esemény megvalósítása és biztonságos elsütése! (2022 jan)

Típus: több. Válasz: 3,7,9,11. Pontozás: nincs megadva.

  1. public LengthChangedDelegate LengthChanged;
  2. event void LengthChanged(int oldValue, int newValue);
  3. delegate void LengthChangedDelegate(int oldValue, int newValue); 
  4. public delegate LengthChangedDelegate LengthChanged;
  5. public event LengthChangedDelegate LengthChanged(int oldValue, int newValue);
  6. public LengthChangedDelegate LengthChanged(int oldValue, int newValue);
  7. public event LengthChangedDelegate LengthChanged; 
  8. if (LengthChangedDelegate != null)
  9. if (LengthChanged != null) 
  10. LengthChangedDelegate(oldValue, newValue);
  11. LengthChanged(oldValue, newValue);

Adott egy osztály. Az objektumainak állapotát úgy szeretnénk elmenteni és visszaállítani egy másik osztályból, hogy nem tesszük publikussá a tagváltozóit. Mely tervezési mintát célszerű használni a megoldás során? (2022 jan)

Típus: egy. Válasz: 1. Pontozás: nincs megadva.

  1. Memento
  2. Strategy
  3. Observer
  4. Proxy
  5. Singleton
  6. Composite
  7. Adapter
  8. Factory method
  9. Snapshot
  10. UndoStore