<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="hu">
	<id>https://vik.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=D%C3%B3zsa+Domonkos</id>
	<title>VIK Wiki - Felhasználó közreműködései [hu]</title>
	<link rel="self" type="application/atom+xml" href="https://vik.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=D%C3%B3zsa+Domonkos"/>
	<link rel="alternate" type="text/html" href="https://vik.wiki/Speci%C3%A1lis:Szerkeszt%C5%91_k%C3%B6zrem%C5%B1k%C3%B6d%C3%A9sei/D%C3%B3zsa_Domonkos"/>
	<updated>2026-05-03T06:22:28Z</updated>
	<subtitle>Felhasználó közreműködései</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://vik.wiki/index.php?title=Sznik%C3%A1k_vizsga_kik%C3%A9rdez%C5%91&amp;diff=206448</id>
		<title>Sznikák vizsga kikérdező</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Sznik%C3%A1k_vizsga_kik%C3%A9rdez%C5%91&amp;diff=206448"/>
		<updated>2025-05-27T09:09:37Z</updated>

		<summary type="html">&lt;p&gt;Dózsa Domonkos: /* Adott az alábbi C# nyelvű .NET alkalmazás kódrészlet. class Counter{int counter = 0; // *1object syncRoot = new object(); // *2public int GetValue() // *3{lock (syncRoot){ return counter; }}public void IncreaseCounter(int delta) // *4{lock (syncRoot){ counter += delta; }}} */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Vissza|Szoftvertechnikák}}&lt;br /&gt;
&#039;&#039; Megjegyzés: A (?) jelölt kérdésekre a válasz nem 100%-ig helyes, amennyiben tudod rá a helyes választ, írd át a helyes megoldásra vagy épp szedd ki a ?-et a kérdésből, ha alapból jó a válasz, ezzel segítve a többiek, és az én munkámat! :) &#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{{kvízoldal|cím=vizsga felkészítő kikérdező|pontozás=-}}&lt;br /&gt;
&lt;br /&gt;
== .JIT köztes kódot fordítja natív gépi kódra. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== .NET Framework alapú konzol alkalmazások Linuxon is futnak. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== .NET Framework alapú környezetben egy könyvtárat (dll) készítünk. Jelölje meg, mely állítások igazak! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,2|pontozás=-}}&lt;br /&gt;
# A könyvtár kódja könnyen visszafejthető.&lt;br /&gt;
# Lehetőség van a könyvtár egy kulcspár privát tagjával történő digitális aláírására.&lt;br /&gt;
# A könyvtárat semmilyen feltételek mellett nem célszerű központi helyre telepíteni, mert névütközés veszélye áll fent.&lt;br /&gt;
# A könyvtárat semmilyen feltételek mellett nem célszerű központi helyre telepíteni, mert verzióütközés veszélye áll fent.&lt;br /&gt;
# A könyvtárat priváttá tehetjük azáltal, hogy egy kulcspár titkos kulcsával titkosítjuk.&lt;br /&gt;
&lt;br /&gt;
== .NET NuGet csomagok formájában lehet kiegészítő könyvtárakat letölteni. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== .NET beépített osztályok legtöbbje szálbiztos. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== .NET környezetben 2 folyamat között kölcsönös kizárás a lock utasítással megvalósítható. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== .NET környezetben egy folyamat a kilépéskor bevárja az összes előtér szálat. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== .NET környezetben egy kiszolgáló alkalmazást készítünk, melynek egyidőben nagyon sok klienst kell tudni kiszolgálnia. Adja meg annak a .NET fogalomnak/osztálynak a nevét maximum egy-két szóval, amit ilyen esetben a legcélszerűbb használni a klisensek hatékony párhuzamos kiszolgálása érdekében. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=3|pontozás=-}}&lt;br /&gt;
# Deadlock&lt;br /&gt;
# Lock&lt;br /&gt;
# Thread-pool&lt;br /&gt;
# Control.Invoke&lt;br /&gt;
&lt;br /&gt;
== .NET környezetben egy munkaszálból szeretnénk egy a fő szálból létrehozott TextBox Text tulajdonságát lekérdezni. Adja meg milyen mechanizmust/műveletet kell ehhez használni? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=4|pontozás=-}}&lt;br /&gt;
# Deadlock&lt;br /&gt;
# Lock&lt;br /&gt;
# Thread-pool&lt;br /&gt;
# Control.Invoke&lt;br /&gt;
&lt;br /&gt;
== .NET környezetben egy objektumot gyakran olvasunk, de ritkán írunk. Mit használna a kölcsönös kizárás megvalósítására? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=3|pontozás=-}}&lt;br /&gt;
# WriterLock&lt;br /&gt;
# ReaderLock&lt;br /&gt;
# ReaderWriterLock&lt;br /&gt;
# ExecuterLock&lt;br /&gt;
&lt;br /&gt;
== .NET környezetben egy szálban hatékonyan kell várakozni arra, hogy egy másik szál valamilyen adatot előkészítse a számára. Milyen szinkronizációs konstrukciót a legcélszerűbb erre használni? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=4|pontozás=-}}&lt;br /&gt;
# Lock&lt;br /&gt;
# Synchronized&lt;br /&gt;
# Mutex&lt;br /&gt;
# ManualResetEvet&lt;br /&gt;
# ReaderWriterLock&lt;br /&gt;
# Semaphore&lt;br /&gt;
&lt;br /&gt;
== .NET környezetben egy többszálú alkalmazást készítünk, melyben az egyik szál lock utasítással zárat szerez előbb X, majd Y objektum paraméterekkel. Egy másik szál előbb az Y, majd az X paraméterekkel szerez zárat. Adja meg egy szóval, minek a veszélye áll fent egy ilyen forgatókönyv esetén? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Deadlock&lt;br /&gt;
# Lock&lt;br /&gt;
# Thread-pool&lt;br /&gt;
&lt;br /&gt;
== .NET több nyelvet is támogat. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A .NET Core csak Windowson fut. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A .NET Windows Forms bizonyos osztályai a beépített Component osztályból származnak. Mi ennek a következménye? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Lehetőség van a Visual Studio designerében felparaméterezni.&lt;br /&gt;
# Natív ablakot csomagol be.&lt;br /&gt;
# Szülő-gyerek viszonyban állíthatók egymással.&lt;br /&gt;
# Örökli a vezérlőkre közös tulajdonságokat, mint pl. A helye, mérete, stb.&lt;br /&gt;
&lt;br /&gt;
== A .NET alkalmazásban a .NET &amp;quot;megkerülésével&amp;quot;, közvetlenül a Win32 API használatával erőforrásokat foglalunk egy osztályba (pl. Fájlt nyitunk meg). Ez esetben az osztályunkban írunk Dispose műveletet, mert az lehetővé teszi ezen erőforrások mielőbbi felszabadítását.(?) ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A .NET nem támogatja a (managed) C++ nyelvet. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A .NET szerelvények (exe, dll) natív gépi kódú utasításokat tartalmaznak. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A .NET több programozási nyelvet is támogat. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A C# delegate objektumok a C függvénypointerek modern megfelelői, ugyanakkor több függvényre is tudnak mutatni/hivatkozni. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A C# kódból a fordítás során - amikor a szerelvény létrejön - köztes kód keletkezik, vagyis a szerelvények köztes (IL) kódot tartalmaznak. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A DLL hell probléma elkerülésének egyik módja, ha az alkalmazás által használt dll-eket nem egy központi helyre, hanem az alkalmazás mappájába telepítjük (privát telepítés). ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A Dependency Injection tervezési minta lényege, hogy az osztály a függőségeit konstruktor vagy művelet paraméterekben kapja meg (interfész típusonként). ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A JIT fordító a C# kódot fordítja IL kódra. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A JIT fordító a köztes kódot fordítja natív gépi kódra. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A Pipes and Filters architektúrában aktív szűrők esetében az adatok feldolgozása jellemzően egy ciklusban történik. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A Singleton minta globális hozzáférést biztosít egy osztály egyetlen objektumához, és ezt az objektumot egy globális változóban tárolja. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A Singleton tervezési minta célja mindösszesen az, hogy egy adott osztályból egyetlen példányt lehessen létrehozni. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A Template method mintában az ősosztály működése a belőle való leszármaztatással és bizonyos absztrakt/virtuális műveleteinek felülírásával terjeszthető ki. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A Win32 API függvények számos programozói környezetből, pl. .NET alól is elérhetők. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A Win32 API-t jellemzően C# nyelven programozzuk. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A Windows Forms alkalmazásokban van lehetőség a rajz, pl. Szöveg 2 dimenziós térben történő elforgatására. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A Windows Forms alkalmazásokban van lehetőség a rajz, pl. Szöveg 3 dimenziós térben történő elforgatására. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A feladat egy Car osztály elkészítése C# nyelven, mely egy eseménnyel jelzi, ha az autó sebessége meghalad egy adott sebességkorlátot! Adja meg, mely sorok alkalmazására van szükség a megoldásban, ha nem használhatja a ?. Operátort! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=2,4,9,12|pontozás=-}}&lt;br /&gt;
# Event void SpeedLimitExceededDelegate(int speed, double percent);&lt;br /&gt;
# Delegate void SpeedLimitExceededDelegate(int speed, double percent);&lt;br /&gt;
# Public SpeedLimitExceededDelegate SpeedLimitExceeded;&lt;br /&gt;
# Public event SpeedLimitExceededDelegate SpeedLimitExceeded;&lt;br /&gt;
# Public delegate SpeedLimitExceededDelegate SpeedLimitExceeded;&lt;br /&gt;
# Public event SpeedLimitExceededDelegate SpeedLimitExceeded(int speed, double percent);&lt;br /&gt;
# Public SpeedLimitExceededDelegate SpeedLimitExceeded(int speed, double percent);&lt;br /&gt;
# Public delegate SpeedLimitExceededDelegate SpeedLimitExceeded(int speed, double percent);&lt;br /&gt;
# If (SpeedLimitExceeded != null)&lt;br /&gt;
# If (SpeedLimitExceededDelegate != null)&lt;br /&gt;
# SpeedLimitExceededDelegate(speed, percent);&lt;br /&gt;
# SpeedLimitExceeded(speed, percent)&lt;br /&gt;
&lt;br /&gt;
== A feladat egy Pipes and filters (csővezeték) architektúrájú alkalmazás elkészítése, melynek során célunk egy több CPU magos hardver környezet lehető legjobb kihasználása. Melyik megközelítést választaná ehhez? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=5|pontozás=-}}&lt;br /&gt;
# Passzív szűrő által vezérelt&lt;br /&gt;
# Csővezeték által vezérelt&lt;br /&gt;
# Adatnyelő által vezérelt&lt;br /&gt;
# Adatforrás által vezérelt&lt;br /&gt;
# Aktív szűrő által vezérelt&lt;br /&gt;
&lt;br /&gt;
== A feladatunk egy ablakozós keretrendszer kifejlesztése. A keretrendszerben bevezetünk egy absztrakt Window osztályt, melyből a keretrendszerre épülő alkalmazások fejlesztésekor le kell származtatni és meg kell valósítani az alkalmazásspecifikus ablak viselkedését. A keretrendszerben egy WindowManager osztályt is megvalósítunk, melynek felelőssége bizonyos feltételek esetén a Window leszármazott objektumok létrehozása, tárolása és menedzselése. A felületelemek vonatkozásában (pl. Button, Dropdown, stb.) az alkalmazásfejlesztőknek nem kell a keretrendszer osztályaiból leszármaztatni. Mely tervezési mintát a legcélszerűbb választani a Window leszármaztatott osztály keretrendszeren belüli létrehozására? Olyan megoldást válasszon, mely a legkevesebb új osztály bevezetésével jár. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=7|pontozás=-}}&lt;br /&gt;
# Composite&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Strategy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Factory method&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
&lt;br /&gt;
== A feladatunk egy alkalmazás elkészítése egy gyártósor által előállított termék különböző modelljeinek a teszteléséhez. A különböző modellekhez mindig ugyanazon alkatrészkategóriákból (pl. Hangszóró, csatlakozó, vezérlőegység stb.) van szükség egy-egy alkatrészre, de az egyes modellekhez az egyes alkatrészkategóriákból más-más modellspecifikus alkatrész beépítésére van szükség (pl. Más típusú hangszóró, csatlakozó stb.) tartozik a Galaxy S20 és Galaxy A20 modellekhez), melyekhez az alkalmazásunkban különböző tesztelést végző osztálybeli objektumra van szükség. Mely tervezési minta alkalmazása a legcélszerűbb az alábbiak közül? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=9|pontozás=-}}&lt;br /&gt;
# Composite&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Strategy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Factory method&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
&lt;br /&gt;
== A feladatunk egy keretrendszer megtervezése. A keretrendszerben létre kell hozni egy adott típusú objektumot, de annak típusát nem ismerjük, mert az csak a keretrendszerre épülő alkalmazás esetén dől el. Mely tervezési mintát használná a probléma megoldására? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Factory method&lt;br /&gt;
# Abstract method&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
# Observer&lt;br /&gt;
# Adapter&lt;br /&gt;
# Singleton&lt;br /&gt;
# Strategy&lt;br /&gt;
&lt;br /&gt;
== A közös dll-ek egy központi mappába történő telepítésének egyik előnye, hogy így minden esetben elkerülhető dll hell probléma. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A privát .NET szerelvények telepítése egyszerű, csak fel kell másolni a számítógépre. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== A szoftverarchitektúra jelentőségét szokás egy kiegyensúlyozott mérleggel is ábrázolni. Mire vonatkozik ez? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# A szoftvernek jól kell működnie (funkcionalitás), de ugyanilyen fontos, hogy legyen jól struktúrált.&lt;br /&gt;
# Az architektúra különböző aspektusainak, úgymint szerkezet, karbantarthatóság, tesztelhetőség egyensúlyban kell lennie.&lt;br /&gt;
# A szoftvert magas szinten alapvetően azonos léptékű modulokra célszerű bontani.&lt;br /&gt;
# Az architektúra/kód struktúrálás kihat a teljesítményre (pl. Túl sok modul/réteg csökkenti a teljesítményt), ennek vonatkozásában meg kell találni az egyensúlyt.&lt;br /&gt;
&lt;br /&gt;
== Adja meg mely állítás igaz a kiszolgáló oldali megvalósításra! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,4,5|pontozás=-}}&lt;br /&gt;
# A kiszolgáló oldali kód általában lefordítható, így a hibák egy része már fordításkor kiderül.&lt;br /&gt;
# Ha szüksége van interakcióra a kliens oldallal, akkor kis adatforgalommal, hatékonyan tud kommunikálni.&lt;br /&gt;
# Gyorsabb, mint a kliens oldali, mert nincs szükség interakcióra a klienssel.&lt;br /&gt;
# A kiszolgáló oldali kóddal általában könnyebb böngésző független megvalósítást készíteni.&lt;br /&gt;
# Az alkalmazás futása gyorsabb a kliens oldalihoz képest.&lt;br /&gt;
&lt;br /&gt;
== Adja meg mely állítás igaz a kliens oldali megvalósításra! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=2,3|pontozás=-}}&lt;br /&gt;
# A kliens oldali kód általában lefordítható, így a hibák egy része már fordításkor kiderül.&lt;br /&gt;
# Ha szüksége van interakcióra a kiszolgálóval, akkor kis adatforgalommal, hatékonyan tud kommunikálni.&lt;br /&gt;
# Gyorsabb, mint a kiszolgáló oldali, mert nincs szükség interakcióra a kiszolgálóval.&lt;br /&gt;
# A kliens oldali kóddal általában könnyebb böngésző független megvalósítást készíteni.&lt;br /&gt;
# Az alkalmazás futása gyorsabb a kiszolgáló oldalihoz képest.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi C# nyelvű .NET alkalmazás kódrészlet, mely egymásba ágyazott zárakat tartalmaz.&amp;lt;code&amp;gt;&amp;lt;br&amp;gt;class Program{&amp;lt;br&amp;gt;static object syncObject = new object();&amp;lt;br&amp;gt;static void Main(string[] args){&amp;lt;br&amp;gt;lock (syncObject) {&amp;lt;br&amp;gt;f();}}&amp;lt;br&amp;gt;static void f(){&amp;lt;br&amp;gt;lock (syncObject) {&amp;lt;br&amp;gt;Console.WriteLine(&amp;quot;Hello!&amp;quot;);}}}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Az alkalmazás kiírja a &amp;quot;Hello!&amp;quot; szöveget a konzolra.&lt;br /&gt;
# Az alkalmazás soha nem fejezi be a futását, mert az f() függvényben a lock utasításnál már egy a Main függvényben zárolt objektumra próbál zárolni (holtpont alakul ki).&lt;br /&gt;
# Az f() függvényben a lock utasítás kivételt dob annak érdekében, hogy ne alakuljon ki holtpont.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi C# nyelvű .NET alkalmazás kódrészlet, melyben a .NET beépített List&amp;lt;T&amp;gt; osztályát használjuk (és nem lehet helyette más osztályt használni).&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;class DataProcessor{&amp;lt;br&amp;gt;List&amp;lt;int&amp;gt; items = new List&amp;lt;int&amp;gt;();&amp;lt;br&amp;gt;static object syncObject = new object();&amp;lt;br&amp;gt;public int GetItem(int index) {&amp;lt;br&amp;gt;lock (syncObject) { return items[index]; }}&amp;lt;br&amp;gt;public void AddItem(int n) {&amp;lt;br&amp;gt;lock (syncObject) { items.Add(n); }}} &amp;lt;/code&amp;gt; ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=3|pontozás=-}}&lt;br /&gt;
# A megoldás jelen formájában nem szálbiztos (thread safe), de azzá tehető, ha a syncObject tagváltozó elől a static kulcsszót eltávolítjuk.&lt;br /&gt;
# A megoldás szálbiztos (thread safe) és nem tehető triviális módon hatékonyabbá.&lt;br /&gt;
# A megoldás szálbiztos (thread safe), de a syncObject tagváltozó előtti a static kulcsszó eltávolításával hatékonyabbá tehető.&lt;br /&gt;
# A megoldás szálbiztos (thread safe), de a lock utasítások eltávolításával hatékonyabbá tehető.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi C# nyelvű .NET alkalmazás kódrészlet. &amp;lt;code&amp;gt;&amp;lt;br&amp;gt;class Counter{&amp;lt;br&amp;gt;int counter = 0; // *1&amp;lt;br&amp;gt;object syncRoot = new object(); // *2&amp;lt;br&amp;gt;public int GetValue() // *3&amp;lt;br&amp;gt;{&amp;lt;br&amp;gt;lock (syncRoot)&amp;lt;br&amp;gt;{ return counter; }&amp;lt;br&amp;gt;}&amp;lt;br&amp;gt;public void IncreaseCounter(int delta) // *4&amp;lt;br&amp;gt;{&amp;lt;br&amp;gt;lock (syncRoot)&amp;lt;br&amp;gt;{ counter += delta; }}}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,2,3|pontozás=-}}&lt;br /&gt;
# A *2 sor elejére nem kell plusszban beírni a static kulcsszót, anélkül is helyes a működés.&lt;br /&gt;
# A kód nem működne megfelelően, ha a *2 sorban a syncRoot típusát int-re cserélnénk.&lt;br /&gt;
# A *3 GetValue() függvényben a lock utasítás eltávolítható (ha legalább 32 bites környezetről van szó).&lt;br /&gt;
# A *4 IncreaseCounter() függvényben a lock utasítás eltávolítható.&lt;br /&gt;
# A *4 IncreaseCounter() függvényben a lock utasítás eltávolítható, de akkor ki kell írni a függvény elé a synchronized kulcsszót.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi C# nyelvű .NET alkalmazás kódrészlet.&amp;lt;code&amp;gt;&amp;lt;br&amp;gt;class ClassA&amp;lt;br&amp;gt;{&amp;lt;br&amp;gt;int counter = 0;&amp;lt;br&amp;gt;List&amp;lt;int&amp;gt; values = new List&amp;lt;int&amp;gt;();&amp;lt;br&amp;gt;public void SetValue (int n) { counter = n; }&amp;lt;br&amp;gt;public void ResetIfGreaterThanZero() { if(counter &amp;gt; 0) counter = 0; }&amp;lt;br&amp;gt;public void Subtract(int n) { counter -= n; }&amp;lt;br&amp;gt;public void AddItem(int n) { values.Add(n); }&amp;lt;br&amp;gt;… további kód&amp;lt;br&amp;gt;}&amp;lt;br&amp;gt;&amp;lt;/code&amp;gt; Jelölje meg mely műveletek esetében kell többszálú környezetben a kölcsönös kizárást megvalósítani! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=2,3,4|pontozás=-}}&lt;br /&gt;
# SetValue&lt;br /&gt;
# Subtract&lt;br /&gt;
# ResetIfGreaterThanZero&lt;br /&gt;
# AddItem&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi Pipes and filters (csővezeték) architektúra filter megvalósítás pszeudokód:&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;Data Read(){&amp;lt;br&amp;gt;Data data = prevFilter.Read();&amp;lt;br&amp;gt;Data processedData = ProcessedData(data);return processedData; }&amp;lt;/code&amp;gt; ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Adatforrás által vezérelt.&lt;br /&gt;
# Adatnyelő által vezérelt.&lt;br /&gt;
# Csővezeték által vezérelt.&lt;br /&gt;
# Aktív szűrő által vezérelt.&lt;br /&gt;
# Passzív szűrő által vezérelt.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi Pipes and filters (csővezeték) architektúra filter megvalósítás pszeudokód:&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;void Write(Data data){&amp;lt;br&amp;gt;Data processedData ProcessData(data);&amp;lt;br&amp;gt;nextFilter.Write(processedData);&amp;lt;br&amp;gt;}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Adatforrás által vezérelt.&lt;br /&gt;
# Adatnyelő által vezérelt.&lt;br /&gt;
# Csővezeték által vezérelt.&lt;br /&gt;
# Aktív szűrő által vezérelt.&lt;br /&gt;
# Passzív szűrő által vezérelt.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi Pipes and filters architektúra, filter megvalósítás pszeudokód. Melyik forgatókönyv felel meg a lenti kódnak? &amp;lt;br&amp;gt;&amp;lt;p style = &amp;quot;font-family:consolas&amp;quot;&amp;gt;void Run(){ &amp;lt;br&amp;gt; Data data; &amp;lt;br&amp;gt; while(data = inputPipe.Read()){ &amp;lt;br&amp;gt; Data processedData = ProcessedData(data); &amp;lt;br&amp;gt; outputPipe.Write(processedData);}}}&amp;lt;/p&amp;gt; ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=4|pontozás=-}}&lt;br /&gt;
# Csővezeték által vezérelt.&lt;br /&gt;
# Passzív szűrő által vezérelt.&lt;br /&gt;
# Adatnyelő által vezérelt.&lt;br /&gt;
# Aktív szűrő által vezérelt.&lt;br /&gt;
# Adatforrás által vezérelt.&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi kódrészlet, mely Oracle típusú kapcsolat és parancs objektumok segítségével Oracle adathozzáférési réteget valósít meg. &amp;lt;code&amp;gt; &amp;lt;br&amp;gt; IConnection conn = new OracleConnection(); &amp;lt;br&amp;gt;conn.Open(); &amp;lt;br&amp;gt;ICommand cmd = new OracleCommand(&amp;quot;SELECT * FROM Orders&amp;quot;); &amp;lt;br&amp;gt;cmd.ExecuteReader(); &amp;lt;/code&amp;gt; &amp;lt;br&amp;gt; T.f.h. Hasonló kódrészletek az adathozzáférési réteg több osztályában előfordulnak. Melyik tervezési minta alkalmazásával lenne legpraktikusabb az adathozzáférési réteg kódját úgy általánosítani, hogy tetszőleges adatkezelő (nem csak Oracle) rendszer esetén működőképes legyen? Jelölje meg a helyes választ! ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Proxy&lt;br /&gt;
# Abstract Factory&lt;br /&gt;
# Factory Method&lt;br /&gt;
# Adapter&lt;br /&gt;
# Strategy&lt;br /&gt;
&lt;br /&gt;
== Adott az alábbi állítás: C# nyelven a nem statikus tagváltozókat nem statikus lock objektummal kell védeni, mert statikus lock objektum alkalmazása esetén nem teljesülne a kölcsönös kizárás (inkonzisztens állapotba kerülhetne a védett objektum). Jelölje meg a helyes választ! ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Csak az első tagmondat igaz (+ -)&lt;br /&gt;
# Csak a második tagmondat igaz (- +)&lt;br /&gt;
# Mindkét tagmondat igaz, de a következtetés hamis (+ + -)&lt;br /&gt;
# Mindkét tagmondat igaz és a következtetés is helyes (+ + +)&lt;br /&gt;
# Egyik tagmondat sem igaz (- -)&lt;br /&gt;
&lt;br /&gt;
== 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? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=6|pontozás=-}}&lt;br /&gt;
# Proxy&lt;br /&gt;
# Repository&lt;br /&gt;
# Strategy&lt;br /&gt;
# Command Processor&lt;br /&gt;
# Snapshot&lt;br /&gt;
# Memento&lt;br /&gt;
# Command&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások .NET szerelvények (assembly) vonatkozásában. Jelölje meg az igaz állításokat. ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=3,4|pontozás=-}}&lt;br /&gt;
# Privát szerelvényekből lehet két azonos nevűt egymás mellé telepíteni.&lt;br /&gt;
# Az azonosított szerelvények titkosítottak a kiadó privát kulcsával.&lt;br /&gt;
# Az azonosított szerelvények digitálisan alá vannak írva a kiadó privát kulcsával.&lt;br /&gt;
# A .NET szerelvényekben a kód IL (Intermediate Language) formátumban van, mely telepítéskor vagy első művelethíváskor fordul le gépi kódra.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a .NET szálkezelés/szinkronizáció vonatkozásában. Jelölje meg a helyes állításokat. ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=3,4|pontozás=-}}&lt;br /&gt;
# A ManualResetEvent szinkronizációs objektumot tipikusan kölcsönös kizárás megvalósítására alkalmazzuk.&lt;br /&gt;
# A ManualResetEvent objektum set művelete lezárja az objektumot, így a többi szál várakozni kényszerül.&lt;br /&gt;
# Arra várakozni, hogy ManualResetEvent objektum jelzett állapotba kerüljön, az objektum WaitOne műveletével lehet.&lt;br /&gt;
# ManualResetEvent és AutoResetEvent típusú objektumokra ugyanúgy kell várakozni.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# események (event) vonatkozásában. Jelölje meg a helyes állításokat! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,4|pontozás=-}}&lt;br /&gt;
# A C# delegate-ek állnak a működésük hátterében.&lt;br /&gt;
# Adott eseményre feliratkozni a &amp;quot;++&amp;quot; operátorral lehet.&lt;br /&gt;
# Adott eseményre egyszerre egy előfizető iratkozhat fel.&lt;br /&gt;
# Egy osztály több eseményt is publikálhat.&lt;br /&gt;
# Egy esemény tag osztályban való felvételkor az esemény tagváltozó előtt a delegate kulcsszót kell szerepeltetni.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a C# nyelvi eszközökről (property, delegate, event és attribute). Jelölje meg, hogy mely állítások igazak. ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=4,6,9,10,11,12,14|pontozás=-}}&lt;br /&gt;
# A C# property-k 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.&lt;br /&gt;
# C# eventre feliratkozni az &amp;quot;=&amp;quot; operátorral lehet.&lt;br /&gt;
# C# event tagváltozóra helyes példa a következő: &amp;lt;code&amp;gt;event int CompareDelegate(object a, object b);&amp;lt;/code&amp;gt;&lt;br /&gt;
# C# event tag értéke null abban az esetben, ha nincs az eseményre feliratkozó.&lt;br /&gt;
# A C# attribútumok definiálásakor egy get és egy set blokkot adunk meg, melyek az attribútum lekérdezésekor, illetve beállításakor hívódnak meg (nem kötelező mindkettőt megadni).&lt;br /&gt;
# C# delegate objektumot át lehet adni függvényparaméterként is.&lt;br /&gt;
# C# delegate típus definícióra szintaktikailag helyes példa a következő: &amp;lt;code&amp;gt;event int CompareDelegate(object a, object b);&amp;lt;/code&amp;gt;&lt;br /&gt;
# C# event események vonatkozásában a -= operátor valamennyi előfizetőt leiratkoztat.&lt;br /&gt;
# Egy delegate objektum/változó több metódusra is hivatkozhat.&lt;br /&gt;
# 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.&lt;br /&gt;
# C# eventre feliratkozni a &amp;quot;+=&amp;quot; operátorral lehet.&lt;br /&gt;
# C# delegate típus definícióra szintaktikailag helyes példa a következő: &amp;lt;code&amp;gt;delegate int CompareDelegate(object a, object b);&amp;lt;/code&amp;gt;&lt;br /&gt;
# C# események elsütésekor a beregisztrált eseménykezelő függvények a hatékonyság érdekében külön szálakon hívódnak meg.&lt;br /&gt;
# Egy osztály több eseményt is publikálhat.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Document-View (Dokumentum-Nézet) architektúra vonatkozásában. Jelölje meg, mely állítások igazak! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=3,4,5|pontozás=-}}&lt;br /&gt;
# A Document-View architektúrában a Controller osztály feladata a felhasználói interakciók kezelése.&lt;br /&gt;
# A Document-View architektúrában a dokumentumban külön tagváltozót vezetünk be minden egyes nézetre.&lt;br /&gt;
# A Document-View architektúrában a dokumentumnak van egy vagy több olyan művelete, mellyel az állapotát a nézetek bármikor le tudják kérdezni.&lt;br /&gt;
# A Document-View architektúrában a nézetnek van egy hivatkozása a dokumentumára.&lt;br /&gt;
# A dokumentumnak van egy listája a beregisztrált nézeteire.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Memento tervezési mintával kapcsolatban. Jelölje meg a helyes válaszokat! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=2,3,6,7|pontozás=-}}&lt;br /&gt;
# A mintában a Memento osztálynak van olyan művelete, melynek egy Originator objektumot lehet átadni. Ez a művelet az Originatorban levő adatok alapján a Memento állapotát állítja.&lt;br /&gt;
# A mintában az Originator osztálynak van olyan művelete, mellyel egy Memento objektumot lehet kérni. Ez a Memento objektum az Originator állapotának másolatát tárolja.&lt;br /&gt;
# A mintában az Originator osztálynak van olyan művelete, melynek egy Memento objektumot lehet átadni. Ez a művelet a Mementoban levő adatok alapján az Originator állapotát állítja.&lt;br /&gt;
# A mintában a CareTaker Originator objektumokat tárol.&lt;br /&gt;
# A mintában az Originator osztályt becsomagoljuk egy Memento objektummal, a Memento tárolja az Originator állapotát.&lt;br /&gt;
# A minta elérhetővé teszi a külvilág számára az objektum belső állapotát az egységbezárás megsértése nélkül (vagyis anélkül, hogy publikussá tennénk az állapotát.)&lt;br /&gt;
# A mintát használhatjuk az Undo funkció megvalósítására.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a Strategy tervezési mintával kapcsolatban. Jelölje meg, mely állítások igazak! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=3,5|pontozás=-}}&lt;br /&gt;
# A minta globális függvénypointereket vezet be annak érdekében, hogy a kliens szemszögéből az általa használt algoritmusok szabadon kicserélhetőek legyenek.&lt;br /&gt;
# A minta lehetővé teszi, hogy egy adott osztály viselkedésének különböző aspektusai paraméterezhetőek legyenek. Mindezt elsődlegesen úgy éri el, hogy magából az osztályból számos leszármazottat vezet be (minden viselkedés kombinációhoz egyet).&lt;br /&gt;
# A minta lehetővé teszi, hogy egy adott osztály viselkedésének különböző aspektusai paraméterezhetőek legyenek. Mindezt úgy, hogy minden aspektushoz egy osztályhierarchiát vezet be.&lt;br /&gt;
# A mintában a Context (vagy Client) osztályban van egy vagy több mutató/referencia, mely típusa egy vagy több konkrét algoritmus implementáció.&lt;br /&gt;
# A mintában a Context (vagy Client) osztályban van egy vagy több mutató/referencia, mely típusa egy vagy több algoritmus interfész/absztrakció.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások a kétrétegű, valamint a háromrétegű architektúrával kapcsolatban! Jelölje meg, mely állítások igazak! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=3,4|pontozás=-}}&lt;br /&gt;
# A kétrétegű architektúrát ma már soha nem használjuk a háromrétegű architektúra előnyei miatt.&lt;br /&gt;
# A kétrétegű architektúra lehetővé teszi, hogy adott üzleti logikához egyszerűen készítsünk különböző frontend alkalmazásokat, úgy mint desktop, web, mobil.&lt;br /&gt;
# A háromrétegű architektúra lehetővé teszi, hogy adott üzleti logikához egyszerűen készítsünk különböző frontend alkalmazásokat, úgy mint desktop, web, mobil.&lt;br /&gt;
# A háromrétegű architektúra előnye a kétrétegűvel szemben, hogy az adatbázis sémája a kliensalkalmazástól függetlenül egyszerűbben átszervezhető.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások az Observer tervezési mintával kapcsolatban. Jelölje meg, mely állítások igazak. ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,2|pontozás=-}}&lt;br /&gt;
# A minta az egyes subject típusoknak bevezet egy ősosztályt, melynek szerepe többek között az, hogy tárolja a beregisztrált observereket.&lt;br /&gt;
# A minta az egyes observer típusoknak bevezet egy ősosztályt (vagy interfészt), melynek szerepe, hogy a subject számára egységessé tegyék az egyes observer típusok kezelését.&lt;br /&gt;
# Az observer implementációkból egy dependency (függőség) kapcsolat mutat a konkrét subject osztály irányába.&lt;br /&gt;
# Az observer implementációknak van egy általános subject listájuk, mellyel egységesen hivatkoznak a különböző típusú subject-ekre.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások különböző tervezési mintákkal kapcsolatban! Jelölje meg a helyes állításokat! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,2|pontozás=-}}&lt;br /&gt;
# A Proxy tervezési mintában a Proxy objektum egy transzparens csomagoló az eredeti objektum körül, mely szabályozhatja az eredeti objektumhoz való hozzáférést.&lt;br /&gt;
# Az Adapter minta - pontosabban annak Object Adapter változata - az objektum becsomagolásával teszi lehetővé, hogy az objektum interfésze kompatibilis legyen azzal, amit a kliens/környezete elvár.&lt;br /&gt;
# A Singleton minta globális hozzáférést biztosít egy osztály egyetlen objektumához, és ezt az objektumot egy globális változóban tárolja.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások különböző tervezési mintákkal kapcsolatban! Jelölje meg, mely állítások igazak. FIGYELEM, akárhány helyes válasz létezhet! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,2,4,5,6,7|pontozás=-}}&lt;br /&gt;
# Az Adapter tervezési mintában a Client osztálynak van egy Target típusú mutatója vagy hivatkozása az Adapter osztály egy példányára.&lt;br /&gt;
# Az Adapter tervezési mintában az Adapter osztály a Target osztályból származik (vagy a Target interfészt implementálja).&lt;br /&gt;
# Az Adapter minta Object Adapter változatában a Adaptee implementálja a Target interfészt (vagy a Target osztályból származik).&lt;br /&gt;
# Az Adapter tervezési mintában (legalábbis annak object adapter változatában) az Adapter (adaptáló) osztály – amennyibe lehetősége van rá – továbbítja (delegálja) a kéréseket az Adaptee (adaptálandó) osztálynak.&lt;br /&gt;
# Bár az Adaptert tervezési mintának tekintik, valójában ez egy idióma, mert csak egy adott programozási nyelv kontextusában (Java) használatos.&lt;br /&gt;
# A minta lehetővé teszi olyan osztályok együttműködését, melyek egyébként az inkompatbilis interfészeik miatt nem tudnának együttműködni.&lt;br /&gt;
# Az Adapter mintában - pontosabban annak Object Adapter változatában - az Adapter osztály tartalmaz egy mutatót vagy referenciát az adaptálandó (Adaptee) osztályra. Az Adapter osztály a műveleteinek megvalósításában felhasználja az adaptálandó (Adaptee) osztály szolgáltasait.&lt;br /&gt;
&lt;br /&gt;
== Adottak az alábbi állítások különböző tervezési mintákkal kapcsolatban. Jelölje meg, mely állítások igazak. ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,3,4,5|pontozás=-}}&lt;br /&gt;
# A Document-View architektúra az Observer tervezési minta egy speciális alkalmazása.&lt;br /&gt;
# A Document-View architektúra a Composite tervezési minta egy speciális alkalmazása.&lt;br /&gt;
# Az Adapter minta lehetővé teszi olyan osztályok együttműködését, melyek egyébként az inkompatbilis interfészeik miatt nem tudnának együttműködni.&lt;br /&gt;
# Az Adapter mintában - pontosabban annak Object Adapter változatában - az Adapter osztály tartalmaz egy mutatót vagy referenciát az adaptálandó (Adaptee) osztályra. Az Adapter osztály a műveleteinek megvalósításában felhasználja az adaptálandó (Adaptee) osztály szolgáltatásait.&lt;br /&gt;
# A felhasználói interakciókat a View osztály kezeli.&lt;br /&gt;
# A nézethez tipikusan több dokumentum tartozik.&lt;br /&gt;
&lt;br /&gt;
== Amikor egy AutoResetEvent objektum jelzett lesz, a rá várakozó szálak közül csak 1 futhat tovább. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Amikor egy szál egy lock blokkon belül van, akkor más szál nem tartózkodhat olyan lock blokkon belül, melynek ugyanaz a szinkronizációs objektum a paramétere.(?) ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az Adapter tervezési mintában (legalábbis annak object adapter változatában) az Adapter (adaptáló) osztály - amennyiben lehetősége van rá - továbbítja (delegálja) a kéréseket az Adaptee (adaptálandó) osztálynak. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Az AutoResetEvent osztályt jellemzően arra használjuk, hogy hatékonyan tudjunk várakozni más szál jelzésére. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== 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! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,3,4,5|pontozás=-}}&lt;br /&gt;
# .NET platformra lehet C++ nyelven is fejleszten.&lt;br /&gt;
# .NET környezetben az objektumok azonnal felszabadulnak, amint az utolsó hivatkozás is megszűnik rájuk.&lt;br /&gt;
# A .NET futtatókörnyezet rövid neve: CLR.&lt;br /&gt;
# Egy alkalmazás több szerelvényből is állhat.&lt;br /&gt;
# A dinamikusan lefoglalt memória felszabadítása nem a fejlesztő feladata.&lt;br /&gt;
# Az elterjedtebb processzorok képesek a köztes (IL) kódot közvetlenül futtatni.&lt;br /&gt;
# A C# kódot a JIT compiler fordítja köztes (IL) kódra.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül mely adatok teszik egyedivé az erős névvel ellátott (azonosított) .NET szerelvényeket? Jelölje meg a helyes választ! ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Név, fejlesztő cég privát kulcsa, verzió, opcionális kultúra információ&lt;br /&gt;
# Név, fejlesztő cég nyilvános kulcsa, verzió, opcionális kultúra információ&lt;br /&gt;
# Név, verzió, pcionális kultúra információ&lt;br /&gt;
# Név, fejlesztő cég nyilvános kulcsa, verzió, digitális aláírás, opcionális kultúra információ&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik definiálja a legjobban a klasszikus DLL hell problémát? ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=3|pontozás=-}}&lt;br /&gt;
# Egy alkalmazás telepítésekor hiányzik egy vagy több DLL a célkörnyezetben, mely szükséges lenne az alkalmazás futásához, így az alkalmazás nem működik megfelelően (mert a szükséges DLL-ek telepítéséről a felhasználó nem gondoskodott).&lt;br /&gt;
# Egy alkalmazás telepítésekor felteszi a célkörnyezetbe az általa használt DLL-eket egy közös mappába. Ezeket a DLL-eket további alkalmazások is használják, melyek közül az egyik eltávolításakor (uninstall) a DLL-ek egy része eltávolításra kerül, így az alkalmazásunk működésképtelenné válik.&lt;br /&gt;
# Egy alkalmazás telepítésekor felteszi a célkörnyezetbe az általa használt DLL-eket egy közös mappába. Később, egy másik alkalmazás a telepítésekor felülírja a korábban telepített alkalmazás egyik DLL-jét egy másik verzióval. A korábban telepített alkalmazás ezzel az újonnan telepített DLL-lel nem működik megfelelően.&lt;br /&gt;
# Egy alkalmazás telepítésekor felülírja az operációs rendszer bizonyos DLL-jeit, mely következtében az operációs rendszer instabillá válik.&lt;br /&gt;
&lt;br /&gt;
== Az egyik tervezési minta azt javasolja, hogy a származtatás/komplex hierarchia helyett az osztály viselkedésének különböző aspektusait kompozícióval tegyük paraméterezhetővé. Melyzik ez a tervezési minta? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=4|pontozás=-}}&lt;br /&gt;
# Composite&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Strategy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Factory method&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
&lt;br /&gt;
== Azonosított .NET szerelvényekből lehet két ugyanolyan nevű telepítve egy számítógépre. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== C# nyelven a statikus tagváltozókat statikus lock objektummal kell védeni (a lock paraméterében statikus tagváltozót használni), mert nem statikus lock objektum alkalmazása esetén nem teljesülne a kölcsönös kizárás. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== C# nyelven az &amp;quot;@attribútumnév&amp;quot; szintaktikával lehet deklaratívan annotációkat osztályokhoz fűzni. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== C# nyelven egy eseményre kötelező legalább egy előfizetőt beregisztrálni. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== C# nyelvű kódunkban egy olyan objektumot hozunk létre, mely nem felügyelt erőforrást használ/csomagol be. Milyen C# konstrukciót használunk ilyen esetben, ha biztosítani szeretnénk a nem felügyelt erőforrás mielőbbi felszabadítását, miután befejeztük a használatát? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=4|pontozás=-}}&lt;br /&gt;
# Destroy&lt;br /&gt;
# Discard&lt;br /&gt;
# Dispose&lt;br /&gt;
# Using blokk&lt;br /&gt;
# Finalize&lt;br /&gt;
# Destruktor&lt;br /&gt;
&lt;br /&gt;
== 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! ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# A Composite osztálynak van egy Component gyűjteménye.&lt;br /&gt;
# A Component osztálynak van egy gyűjteménye Composite, valamint egy másik gyűjteménye Leaf objektumokból.&lt;br /&gt;
# A Component osztálynak van egy közös gyűjteménye (heterogén kollekció) Composite és Leaf objektumokból.&lt;br /&gt;
# A Composite osztálynak van egy gyűjteménye Component, valamint egy másik gyűjteménye Leaf objektumokból.&lt;br /&gt;
# A Client osztálynak van egy gyűjteménye Composite, valamint egy másik gyűjteménye Leaf objektumokból.&lt;br /&gt;
&lt;br /&gt;
== Egy .NET alkalmazásban a .NET &amp;quot;megkerülésével&amp;quot;, közvetlenül a Win32 API használatával erőforrásokat foglalunk egy osztályunkban (pl. Fájlt nyitunk meg). Milyen műveletet/műveleteket írunk ilyen esetben? Több válasz is megadható! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=4|pontozás=-}}&lt;br /&gt;
# Deadlock&lt;br /&gt;
# Lock&lt;br /&gt;
# Thread-pool&lt;br /&gt;
# Dispose&lt;br /&gt;
&lt;br /&gt;
== Egy .NET osztályunk konstruktorában nagyméretű .NET string tömböt foglalunk. Ez esetben írunk az osztályunkban destruktort és Dispose függvényt, melyben gondoskodunk a tömb felszabadításáról. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Egy 32 bites számmal történő egyszerű értékadás .NET környezetben mindig atomi. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Egy C# eseményre feliratkozni az = operátorral lehet. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Egy Win32 CALLBACK függvény olyan függvény, amit az operációs rendszer valósít meg és mi hívunk az alkalmazás fejlesztése során. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Egy Win32 üzenet billentyűlenyomás esetén tartalmazza a lenyomott billentyű kódját. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Egy Windows Forms alapú alkalmazás esetén egy saját státuszbárt (? Státuszsáv) szeretne megvalósítani. Ennek mindig a tartalmazó ablak alján kell elhelyezkednie fix magassággal (státuszbár az alsó/oldalsó élei és a tartalmazó űrlap élei között nem lehet szabad hely/rés). Milyen technikát legcélszerűbb ehhez választani? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Dockolás&lt;br /&gt;
# Anchor&lt;br /&gt;
# FillPanel&lt;br /&gt;
# SplitContainer&lt;br /&gt;
# Splitter&lt;br /&gt;
# Sticky container&lt;br /&gt;
# Grid panel&lt;br /&gt;
&lt;br /&gt;
== Egy Windows Forms alapú alkalmazás esetén egy saját státuszbárt szeretne megvalósítani. Ennek mindig a tartalmazó ablak alján kell elhelyezkednie fix magassággal (státuszbár az alsó/oldalsó élei és a tartalmazó űrlap élei között nem lehet szabad hely/rés). Milyen technikát legcélszerűbb ehhez választani? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Dockolás&lt;br /&gt;
# Anchor&lt;br /&gt;
# FillPanel&lt;br /&gt;
# SplitContainer&lt;br /&gt;
# Splitter&lt;br /&gt;
# Sticky container&lt;br /&gt;
# Grid panel&lt;br /&gt;
&lt;br /&gt;
== Egy Windows Forms alapú alkalmazásban a célunk egy olyan testreszabott, újrafelhasználható checkbox (jelölőnégyzet) vezérlő bevezetése, amely minden egyes kattintáskor egy üzenetablakban megkérdezi a felhasználót, biztos-e a döntésében. Mit használna ehhez? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Groupbox&lt;br /&gt;
# Checkbox osztályból származtatás&lt;br /&gt;
# Form&lt;br /&gt;
# Component&lt;br /&gt;
# CostumControl leszármaztatás&lt;br /&gt;
# UserControl&lt;br /&gt;
# Control leszármaztatás&lt;br /&gt;
&lt;br /&gt;
== Egy Windows Forms alapú alkalmazásban a célunk egy teljesen egyedi és újrafelhasználható vezérlő bevezetése, mely minden kattintásra egyel nagyobb értéket jelenít meg. Mit használna ehhez? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=6|pontozás=-}}&lt;br /&gt;
# Groupbox&lt;br /&gt;
# Checkbox osztályból származtatás&lt;br /&gt;
# Form&lt;br /&gt;
# Component&lt;br /&gt;
# CostumControl leszármaztatás&lt;br /&gt;
# UserControl&lt;br /&gt;
# Control leszármaztatás&lt;br /&gt;
&lt;br /&gt;
== Egy Windows Forms alapú alkalmazásban a célunk egy összetett (több vezérlőből álló) újrafelhasználható vezérlő kialakítása. Mit használna ehhez? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=6|pontozás=-}}&lt;br /&gt;
# Groupbox&lt;br /&gt;
# Checkbox osztályból származtatás&lt;br /&gt;
# Form&lt;br /&gt;
# Component&lt;br /&gt;
# CostumControl leszármaztatás&lt;br /&gt;
# UserControl&lt;br /&gt;
# Control leszármaztatás&lt;br /&gt;
&lt;br /&gt;
== Egy Windows Forms alapú alkalmazásban a célunk egy összetett (több vezérlőből álló), újrafelhasználható vezérlő kialakítása. Mit használna ehhez? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=6|pontozás=-}}&lt;br /&gt;
# Groupbox&lt;br /&gt;
# Checkbox osztályból származtatás&lt;br /&gt;
# Form&lt;br /&gt;
# Component&lt;br /&gt;
# CostumControl leszármaztatás&lt;br /&gt;
# UserControl&lt;br /&gt;
# Control leszármaztatás&lt;br /&gt;
&lt;br /&gt;
== Egy Windows Forms űrlapra egy Panel objektumot helyezünk olyan módon, hogy a Panel és az űrlap szélei között marad szaba hely. Milyen technikával lehet legegyszerűbben elérni, hogy az űrlap magasságának növelésével a Panel magassága is változzon (ugyanannyival). ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Dockolás&lt;br /&gt;
# Anchor&lt;br /&gt;
# FillPanel&lt;br /&gt;
# Splitter&lt;br /&gt;
# Sticky container&lt;br /&gt;
&lt;br /&gt;
== Egy Windows Forms űrlapra egy Panel objektumot helyezünk olyan módon, hogy a Panel és az űrlap szélei között marad szabad hely. Milyen technikával lehet legegyszerűbben elérni, hogy az űrlap magasságának növelésével a Panel magassága is változzon (ugyanannyival). ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Dockolás&lt;br /&gt;
# Anchor&lt;br /&gt;
# FillPanel&lt;br /&gt;
# Splitter&lt;br /&gt;
# Sticky container&lt;br /&gt;
&lt;br /&gt;
== Egy alkalmazásban a CommHandler osztály felelős egy külső rendszer adott szolgáltatásainak eléréséért. A CommHandler osztályt a felhasználói/kliensei egy interfész típusként (ICommHandler) kapják meg és használják. Egy új, jogosultság hozzáférést ellenőrző objektumot szeretnénk beékelni az osztály és a felhasználói közé olyan módon, hogy az osztályt és a felhasználóit a lehető legkevésbé érintse a változtatás. Mely tervezési mintát a legcélszerűbb választani a probléma megoldására? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=4|pontozás=-}}&lt;br /&gt;
# Factory method&lt;br /&gt;
# Abstract method&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
# Observer&lt;br /&gt;
# Adapter&lt;br /&gt;
# Singleton&lt;br /&gt;
# Strategy&lt;br /&gt;
&lt;br /&gt;
== Egy alkalmazásban a több helyről is használt SecurityService osztály biztonsági szempontból érzékeny műveleteket végez. A kliens osztályok a SecurityService-t már egy az általa implementált ISecurityService interfészen keresztül érik el. Mely tervezési minta segítségével tudjuk az osztály és a klienseinek módosítása nélkül megoldani, hogy az egyes kérések kiszolgálása csak bizonyos jogosultsági körrel rendelkező kliens kód esetében történjen meg? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=6|pontozás=-}}&lt;br /&gt;
# Composite&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Strategy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Factory method&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
&lt;br /&gt;
== Egy alkalmazáson belül a Windows üzenetek feldolgozása párhuzamos. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Egy kilens objektum egy nagy erőforrásigényű objektumot használ (pl. Egy szövegszerkesztő nagyméretű képeket), a nagy erőforrásigényű objektumra, azonban nincs mindig szükség, igény esetén tölthető be. A betöltés előtt is szükség van azonban a nagy erőforrásigényű objektum bizonyos paramétereire. Mely tervezési mintát használná a probléma megoldására? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=4|pontozás=-}}&lt;br /&gt;
# Factory method&lt;br /&gt;
# Abstract method&lt;br /&gt;
# Composite&lt;br /&gt;
# Proxy&lt;br /&gt;
# Observer&lt;br /&gt;
# Adapter&lt;br /&gt;
# Singleton&lt;br /&gt;
# Strategy&lt;br /&gt;
&lt;br /&gt;
== Egy kiszolgáló alkalmazás esetében praktikusabb külön szálakat indítani az egyes kérések kiszolgálásához, mert a thread-pool szálak elfogyhatnak. Jelölje meg a helyes választ! ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Csak az első tagmondat igaz (+ -)&lt;br /&gt;
# Csak a második tagmondat igaz (- +)&lt;br /&gt;
# Mindkét tagmondat igaz, de a következtetés hamis (+ + -)&lt;br /&gt;
# Mindkét tagmondat igaz és a következtetés is helyes (+ + +)&lt;br /&gt;
# Egyik tagmondat sem igaz (- -)&lt;br /&gt;
&lt;br /&gt;
== Egy nem statikus változót célszerű statikus lockkal (osztályszintű zárral) védeni, mert ez hatékonyabb megoldást jelent. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Egy online bolt alkalmazásban a feladata egy a bevásárlókosár lezárását (szállítási cím kezelése, megerősítés, fizetés) kezelő osztály megvalósítása. Az osztálynak több fizetési módot (pl. Bankkártya, átutalás) kell támogatnia, és könnyen kiterjeszthetőnek kell lennie újabb fizetési módokkal. Mely tervezési mintát alkalmazná a megvalósítás során? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=4|pontozás=-}}&lt;br /&gt;
# Composite&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Strategy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Factory method&lt;br /&gt;
# Adapter&lt;br /&gt;
# Abstract factory&lt;br /&gt;
&lt;br /&gt;
== Egy változó növelése .NET környezetben atomi. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Feladatunk egy .NET alkalmazásban Oracle adatbázisban bizonyos rekordok módosítása. Mi(k)re van ehhez szükség? ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=4,6,7|pontozás=-}}&lt;br /&gt;
# SQLCommand&lt;br /&gt;
# SQLDataReader&lt;br /&gt;
# SQLConnection&lt;br /&gt;
# OracleConnection&lt;br /&gt;
# OracleDataReader&lt;br /&gt;
# OracleCommand&lt;br /&gt;
# Try/finally vagy using blokk&lt;br /&gt;
&lt;br /&gt;
== Feladatunk egy Windows Forms alkalmazásban annak számolása és kirajzolása az ablak bal felső sarkába, hogy hányszor keletkezett érvénytelen terület. Mi(k)hez van erre szükség? ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,2,4|pontozás=-}}&lt;br /&gt;
# Egy tagváltozó a darabszám értékének nyilvántartására.&lt;br /&gt;
# Invalidate hívása.&lt;br /&gt;
# Timer.&lt;br /&gt;
# Paint esemény kezelése vagy OnPaint felülírása.&lt;br /&gt;
&lt;br /&gt;
== Feladatunk egy Windows Forms alkalmazásban annak számolása és kirajzolása az ablak bal felső sarkában, hogy hányszor keletkezett érvénytelen terület. Mi(k)hez van erre szükség? ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,2,4|pontozás=-}}&lt;br /&gt;
# Invalidate hívása.&lt;br /&gt;
# Paint esemény kezelése vagy OnPaint felülírása.&lt;br /&gt;
# Timer&lt;br /&gt;
# Egy tagváltozó a darabszám értékének nyilvántartására.&lt;br /&gt;
&lt;br /&gt;
== Feladatunk egy olyan alkalmazás megtervezése, mely szervezetek osztályainak hierarchiáját képes egy diagramon megjeleníteni. Egy szervezeten belül lehetnek osztályok és személyek, az osztályokon belül további osztályok és személyek, tetszőleges mélységben. Mely tervezési mintát a legcélszerűbb választani a probléma modellezésére? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=8|pontozás=-}}&lt;br /&gt;
# Prototype&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Strategy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Factory method&lt;br /&gt;
# Composite&lt;br /&gt;
# Abstract factory&lt;br /&gt;
&lt;br /&gt;
== Ha adott két objektum és ezekre a lock utasítással eltérő sorrendben szerez zárat két szál, nem alakulhat ki holtpont. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Ha egy osztályban egy költséges, nem felügyelt erőforrást foglalunk (pl. Win32 API hívással) a konstruktorban és ezt az osztályban eltároljuk, akkor destruktort írunk az osztályba, mert az biztosítja az erőforrás mielőbbi felszabadítását, amint az osztály objektumát nem használjuk.(?) ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== IL-t könnyű visszafejteni. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Jelöje meg, hogy a .NET Framework esetében mely állítások igazak! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=2,4,5|pontozás=-}}&lt;br /&gt;
# Az alábbi forgatókönyv a klasszikus DLL hell probléma legjellemzőbb esetének jó definíciója: egy alkalmazás telepítésekor hiányzik egy vagy több DLL a célkörnyezetben, mely szükséges lenne az alkalmazás futásához, így az alkalmazás nem működik megfelelően (mert a szükséges DLL-ek telepítéséről a felhasználó nem gondoskodott).&lt;br /&gt;
# A .NET IL kód processzor-és architektúrafüggetlen.&lt;br /&gt;
# A .NET IL kód nagyon hatékony, mert a processzorok közvetlenül tudják futtatni.&lt;br /&gt;
# Az azonosított (erős névvel aláírt) szerelvények lehetővé teszik, hogy a több kiadó/fejlesztőcég azonos fájlnévvel és azonos verzióval telepítsen .NET szerelvényeket.&lt;br /&gt;
# A privát szerelvényeket egyszerűbb telepíteni, mint az azonosított szerelvényeket.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg a helyes választ! ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# A Proxy tervezési mintában a Proxy objektum egy transzparens csomagoló az eredeti objektum körül, mely szabályozza az eredeti objektumhoz való hozzáférést.&lt;br /&gt;
# A Proxy tervezési minta adatok cache-elésére használt a web-en, a kérések gyorsabb kiszolgálása érdekében.&lt;br /&gt;
# A Proxy tervezési minta adatok cache-elésére használt bármilyen kontextusban, a kérések gyorsabb kiszolgálása érdekében.&lt;br /&gt;
# A Proxy tervezési mintában a kliens objektum az eredeti kiszolgáló helyett egy proxy objektumra mutat, és amikor szükséges, a mutatót az eredeti kiszolgáló objektumra állítjuk, hogy az szolgálja ki a kliens kéréseit&lt;br /&gt;
# A Proxy tervezési minta lehetővé teszi az egymással nem kompatibilis objektumok együttműködését.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak a Pipes and Filters architektúrára. ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,2|pontozás=-}}&lt;br /&gt;
# Egyik előnye, hogy a filterek tetszőlegesen kombinálhatók.&lt;br /&gt;
# Egyik előnye a párhuzamos feldolgozás lehetősége (aktív szűrők esetén).&lt;br /&gt;
# Adatnyelő által vezérelt architektúra esetén a szűrő egy ciklusban dolgozza fel a bemenetére érkező adatokat.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak a szálkezelésre .NET környezetben! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=2,3,5,6|pontozás=-}}&lt;br /&gt;
# A ManualResetEvent osztályt jellemzően arra használjuk, hogy adott erőforrás elérésére vonatkozó kölcsönös kizárást valósítunk meg a segítségével.&lt;br /&gt;
# A ManualResetEvent osztályt jellemzően arra használjuk, hogy hatékonyan tudjunk várakozni más szál jelzésére.&lt;br /&gt;
# A Mutex előnye a lock utasítással szemben, hogy különböző folyamatok szálai között is használható.&lt;br /&gt;
# Az x++ művelet .NET környezetben atomi (és így szálbiztos), ha az x típusa int (32 bites).&lt;br /&gt;
# A ReaderWriterLock használata akkor célszerű használni kölcsönös kizárásra, ha a védett erőforrást gyakran olvassuk és ritkán írjuk.&lt;br /&gt;
# Az x=10 művelet .NET környezetben atomi (és így szálbiztos), ha az x típusa int (32 bites).&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, mely állítások igazak az alábbiak közül! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=2|pontozás=-}}&lt;br /&gt;
# A JIT compiler fordítja a forrásfájlokat - pl. A .cs állományokat - IL (Intermediate Language) kódra.&lt;br /&gt;
# Az IL (Intermediate Language) kódot könnyű visszafejteni.&lt;br /&gt;
# .NET környezetben az adott nyelvhez tartozó fordító (compiler) kimenete forrásfájlonként egy .obj kiterjesztésű fájl. Mely IL (Intermediate Language) kódot tartalmaz. A .obj kiterjesztésű fájlokat a linker fűzi össze egy .exe vagy .dll kiterejesztésű állománnyá, mely natív hardverfüggő gépi kódot tartalmaz, majd ezeket a .exe és .dll állományokat telepítjük a célkörnyezetbe.&lt;br /&gt;
# C# támogatja a többszörös öröklést.&lt;br /&gt;
&lt;br /&gt;
== Melyek a Singleton tervezési minta megvalósításának kellékei? Jelölje meg a helyes válaszokat! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=2,3,6|pontozás=-}}&lt;br /&gt;
# Globális változó&lt;br /&gt;
# Statikus tagváltozó&lt;br /&gt;
# Statikus metódus vagy statikus property&lt;br /&gt;
# Virtuális metódus&lt;br /&gt;
# Absztrakt metódus&lt;br /&gt;
# Védett konstruktor&lt;br /&gt;
# Védett destruktor&lt;br /&gt;
# Globális pointer vagy referencia&lt;br /&gt;
&lt;br /&gt;
== Mi a Composite tervezési minta elsődleges célja? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Lehetővé teszi objektumok tetszőleges mélységben való egymásba ágyazását, és támogatja ezen objektumok fastruktúrába szervezését.&lt;br /&gt;
# Lehetővé teszi, hogy bizonyos műveletek tekintetében ne kelljen az elemi és összetett objektumokat megkülönböztetni, és támogatja ezen objektumok fastruktúrába szervezését.&lt;br /&gt;
# Lehetővé teszi, hogy összetett objektumokat úgy kezeljünk, hogy könnyű legyen új összetett objektumtípust bevezetni (a meglevőket ne legyen szükséges módosítani), valamint támogatja az objektumok fastruktúrába szervezését.&lt;br /&gt;
# Lehetővé teszi elemi és összetett objektumok közös heterogén kollekcióban való tárolását, valamint támogatja ezen objektumok fastruktúrába szervezését.&lt;br /&gt;
&lt;br /&gt;
== Mi a tervezési minták egyik elsődleges célja? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Adott funckionalitás legkevesebb kóddal történő megvalósítása.&lt;br /&gt;
# A kód újrafelhasználhatóságának elősegítése.&lt;br /&gt;
# Adott üzleti problémák jól érthető modellezése.&lt;br /&gt;
# Jobb teljesítményű kód írása.&lt;br /&gt;
# A valóság minél érthetőbb modellezése.&lt;br /&gt;
&lt;br /&gt;
== Mi az Observer tervezési minta elsődleges célja? Jelölje meg a helyes választ! ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=4|pontozás=-}}&lt;br /&gt;
# Lehetővé teszi a felhasználói eseményekre való reagálást.&lt;br /&gt;
# Lehetővé teszi, hogy egy dokumentum nézetei értesüljenek a dokumentum változásáról.&lt;br /&gt;
# Lehetővé teszi objektumok könnyű megfigyelését az objektumok becsomagolásával.&lt;br /&gt;
# Lehetővé teszi, hogy objektumok (közvetve) úgy értesítsék egymást állapotuk megváltozásáról, hogy nem tudnak egymásról.&lt;br /&gt;
# Lehetővé teszi algoritmusok folyamatának (progress) monitorozását.&lt;br /&gt;
&lt;br /&gt;
== Miben segítenek a tervezési minták? ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,2,4|pontozás=-}}&lt;br /&gt;
# Rendszer karbantarthatóság és módosíthatóság elősegítése.&lt;br /&gt;
# A kód újrafelhasználhatóságának elősegítése.&lt;br /&gt;
# Adott üzleti problémák jól érthető modellezése.&lt;br /&gt;
# Nem maguktól értetődő kódok megtalálása.&lt;br /&gt;
# A valóság minél érthetőbb modellezése.&lt;br /&gt;
&lt;br /&gt;
== Milyen lépéseket tartalmaz jellemzően egy meglévő modális dialógusablak használata? ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=2,5,6|pontozás=-}}&lt;br /&gt;
# A dialógusablakon levő vezérlők közvetlen inicializálása.&lt;br /&gt;
# A dialógusablak visszatérésének (DialogResult) vizsgálata.&lt;br /&gt;
# A dialógusablakon levő vezérlők inicializálása property-k (tulajdonságok) segítségével.&lt;br /&gt;
# MessageBox megjelenítés.&lt;br /&gt;
# Dialógusablak megjelenítése.&lt;br /&gt;
# Dialógusablak példányosítása.&lt;br /&gt;
# Időzítő felparaméterezése.&lt;br /&gt;
&lt;br /&gt;
== ReaderWriterLock osztály lehetővé teszi, hogy egy erőforrást több szál is írjon egyszerre. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Windows Forms nem modális dialógusablak a DialogResult-ban tudja jelezni, hogy a felhasználó Ok vagy Cancel gombbal zárta be a dialógus ablakot. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Windows Forms nem támogat lineáris transzformációkat. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=2|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Windows Forms vezérlők (Control) között lehetőség van a szülő/gyerek és birtokos/birtokolt viszony kialakítására. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Windows Forms vezérlők (Control) között lehetőség van szülő/gyerek viszony kialakítására. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Windows Forms űrlapok (Form) között lehetőség van birtokos/birtokolt viszony kialakítására. ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=1|pontozás=-}}&lt;br /&gt;
# Igaz&lt;br /&gt;
# Hamis&lt;br /&gt;
&lt;br /&gt;
== Ön egy alkalmazást fejleszt .NET platformra. Az alkalmazást a felhasználók a saját gépeiken több példányban is mepróbálhatják elindítani (akár teljesen egyidőben). Az ön feladata annak megoldása, hogy az alkalmazás csak egy példányban fusson: vagyis, ha az alkalmazásból úgy indít új példányt a felhasználó, hogy már fut, akkor az újabb példány ezt detektálja, és azonnal lépjen ki (fejezze be a futását). Mit használna az alábbiak közül ennek megvalósításához? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=5|pontozás=-}}&lt;br /&gt;
# Lock&lt;br /&gt;
# Synchronized&lt;br /&gt;
# StartCoordinator&lt;br /&gt;
# AutoResetEvent&lt;br /&gt;
# Mutex&lt;br /&gt;
# Singleton&lt;br /&gt;
# ThreadPool&lt;br /&gt;
&lt;br /&gt;
== 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! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=1,3|pontozás=-}}&lt;br /&gt;
# Feltéve, hogy adott egy Circle osztály és annak egy int típusú Radius tulajdonsága (property), valamint a Circle osztály egy circle nevű példánya/objektuma, akkor a tulajdonság lekérdezése pl. az int n = circle.Radius; formában lehetséges.&lt;br /&gt;
#  Egy C# attribútum alkalmazásakor az attribútum neve elé a @ karaktert kell tenni.&lt;br /&gt;
# 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.&lt;br /&gt;
# Egy C# property (tulajdonság) bevezetésekor mindig be kell vezetni egy tagváltozót is az osztályban, melyben a property értéke tárolásra kerül.&lt;br /&gt;
&lt;br /&gt;
== 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! ==&lt;br /&gt;
{{kvízkérdés|típus=több|válasz=2,3|pontozás=-}}&lt;br /&gt;
#  Amikor egy AutoResetEvent objektum jelzett állapotba kerül, valamennyi rá várakozó szál tovább futhat.&lt;br /&gt;
# .NET környezetben egy folyamat (processz) akkor áll le, ha az összes előtérszála leáll.&lt;br /&gt;
# Egy változó növelése a ++ operátorral nem szálbiztos (nem thread safe).&lt;br /&gt;
&lt;br /&gt;
== A feladat fájlrendszerbeli mappák és bennük levő fájlok nyilvántartása egy adott objektumstrukturában. Az egyes fájlokról a nevüket és a méretüket, valamint a mappákra a nevüket kell nyilvántartani (memóriában). Elegáns megoldást szeretnénk a következőre: Mappa tartalmának listázásakor a mappában levő fájlok és a közvetlen benne levő mappák nevét és méretét kell kiírni a konzolra. Az előző pontban, amikor egy mappa méretét írjuk ki a konzolra, akkor a mappa összméretét kell kiírni, melybe valamennyi - a hierarchiában tetszőlegesen mélységben levő - almappájában levő fájlok mérete is beleszámolódik. Mely tervezési minta biztosít a fentiekre elegáns megoldást? ==&lt;br /&gt;
{{kvízkérdés|típus=egy|válasz=8|pontozás=-}}&lt;br /&gt;
# Prototype&lt;br /&gt;
# Memento&lt;br /&gt;
# Observer&lt;br /&gt;
# Strategy&lt;br /&gt;
# Singleton&lt;br /&gt;
# Proxy&lt;br /&gt;
# Factory method&lt;br /&gt;
# Composite&lt;br /&gt;
# Abstract factory&lt;/div&gt;</summary>
		<author><name>Dózsa Domonkos</name></author>
	</entry>
	<entry>
		<id>https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=206447</id>
		<title>Záróvizsga kvíz - Adatbázis</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=Z%C3%A1r%C3%B3vizsga_kv%C3%ADz_-_Adatb%C3%A1zis&amp;diff=206447"/>
		<updated>2025-05-25T12:19:19Z</updated>

		<summary type="html">&lt;p&gt;Dózsa Domonkos: /* P: Ha egy relációs lekérdező nyelv képes az unió, különbség, Descartes-szorzat, vetítés és kiválasztás műveleteit kifejezni, akkor relációsan teljesnek nevezik, ... Q: ...mert az ilyen lekérdező nyelvek segítségével egy relációs adatbázisból mindent le tudunk kérdezni. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Kvízoldal&lt;br /&gt;
| cím = ZVAdatb&lt;br /&gt;
| pontozás = 0&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázis-kezelő rendszer szigorú tranzakciós protokollt és egyszerű zármodellt (tranzakciós modellt) használ. Az alábbi állítások közül melyik nem helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A zárkezelés kétfázisú (2PL) lesz.&lt;br /&gt;
# Nem fordulhat elő lavina.&lt;br /&gt;
# Naplózás esetén nem lesz szükség undo-ra a helyreállításhoz.&lt;br /&gt;
# A zárak a commit (kész) pont után felszabadíthatók&lt;br /&gt;
&lt;br /&gt;
== Melyik NEM fejezhető ki SQL lekérdezések segítségével a halmazalgebra alábbi műveletei közül? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# metszetképzés&lt;br /&gt;
# Descartes-szorzat&lt;br /&gt;
# komplementer-képzés&lt;br /&gt;
# különbségképzés&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy a keresés költségének nagyságrendjére vonatkozó alábbi 1), 2), 3), 4), 5), 6) állítások közül melyek igazak, ha az állományt B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2023 jun) ==&lt;br /&gt;
# A keresés költsége lineárisan nő a fa magasságával&lt;br /&gt;
# A keresés költsége logaritmikusan nő a fa magasságával&lt;br /&gt;
# A keresés költsége lineárisan aránylik az elágazási tényezőhöz&lt;br /&gt;
# A keresés költsége logaritmikusan aránylik az elágazási tényezőhöz&lt;br /&gt;
# Az elemek beszúrási sorrendjének nincs hatása a keresés költségére&lt;br /&gt;
# Az elemek beszúrási sorrendjének van hatása a keresés költségére&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=4}}&lt;br /&gt;
# 1), 4), 5)&lt;br /&gt;
# 2), 3), 6)&lt;br /&gt;
# 2), 4), 6)&lt;br /&gt;
# 1), 4), 6)&lt;br /&gt;
# 1), 3), 6)&lt;br /&gt;
# 2), 4), 5)&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését egymásba ágyazott ciklikus illesztéssel (nested loop join) végezzük. A két állomány rendre b és b számú blokkból áll, illetve n és n rekordot tartalmaz. (2023 jun) ==&lt;br /&gt;
Az alábbi lehetőségek közül melyik lehet a join blokkműveletek számában mért költsége a legrosszabb esetben, ha a relációknak csak egy- egy blokkja fér a memóriába?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r + n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_s + b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + b_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;b_r + n_r * b_s&amp;lt;/math&amp;gt;&lt;br /&gt;
# &amp;lt;math&amp;gt;n_r * n_s&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== A következő ábrák közül melyik nem szerepelhet ER-diagram részeként? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid1.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 2.png|keretnélküli]]&lt;br /&gt;
# [[Fájl:2023 jun zv adatb er valid 3.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
== Adott egy séma és az attribútumai között értelmezett funkcionális függések halmaza. Tudjuk, hogy a nemtriviális függések bal oldalán található attribútum(halmaz)on a rekordok értéke egyedi. Ekkor (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# lehet olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# van olyan, a sémára illeszkedő adathalmaz, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen adathalmazban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2023 jun) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:2023 június mérnökinformatikus záróvizsga Adatbázisok ER sémadekompozíció 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A(a, b, c), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
&lt;br /&gt;
== Időbélyeges tranzakciókezelés esetén melyik állítás NEM helyes? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy adott ütemezésnek mindig van soros ekvivalense (a tranzakciók időbélyegei szerinti növekvő sorrendű).&lt;br /&gt;
# Szigorú protokoll megvalósításához az időbélyegek mellett zárak is szükségesek.&lt;br /&gt;
# Egy adott ütemezésnek akár több soros ekvivalense is lehet.&lt;br /&gt;
# Egy adott ütemezésnek lehet soros ekvivalense.&lt;br /&gt;
&lt;br /&gt;
== Az SQL lekérdezésekben a &amp;quot;SELECT DISTINCT&amp;quot; az ismétlődéseket szűri az eredményhalmazból. A relációs algebrában hogyan valósítható meg ez a művelet? (2023 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Nincs rá szükség, mert a relációs algebra halmazokkal dolgozik, ahol nem szerepelnek ismétlődések.&lt;br /&gt;
# Az unió vagy a metszet műveleteket kell használni, ha követelmény az ismétlődések szűrése.&lt;br /&gt;
# A természetes illesztés alkalmas erre, hiszen az az azonos nevű attribútumokat csak egyszer adja vissza.&lt;br /&gt;
&lt;br /&gt;
== Egy adatállományt vödrös hash szervezéssel tárolunk. A következőket tudjuk az állományról: (2023 jun) ==&lt;br /&gt;
# Egy rekord egy blokknyi helyet foglal el.&lt;br /&gt;
# Az alkalmazott hash függvény: &#039;k mod 5&#039;, ahol a &#039;k&#039; a kulcsot jelenti.&lt;br /&gt;
# A vödrös hash kezdetben üres.&lt;br /&gt;
# A hashtábla elfér az operatív tárban.&lt;br /&gt;
A beszúrt rekordok kulcsai a következők: 5, 7, 3, 9, 10, 1, 4, 7, 19.&lt;br /&gt;
Hány blokkműveletet fog a rendszer végezni, ha azon rekordot keressük, amelynek kulcsa 24?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 1NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 1NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legalacsonyabb normál formája 3NF, ha van másodlagos attribútuma.&lt;br /&gt;
# Egy 1NF relációs séma lehetséges legmagasabb normál formája 3NF, ha nincs másodlagos attribútuma.&lt;br /&gt;
&lt;br /&gt;
== Egy állomány tárolása során két merevlemez közül lehet választani: (2023 jan) ==&lt;br /&gt;
* Az &amp;quot;A&amp;quot; lemeznél a blokkméret 4000 byte, egy blokkművelet ideje 10 ms&lt;br /&gt;
* Az &amp;quot;B&amp;quot; lemeznél a blokkméret 12000 byte, egy blokkművelet ideje 20 ms. A tárolni kívánt rekordok mérete lehetővé teszi, hogy a blokkokat mindkét esetben veszteség nélkül használjuk.&lt;br /&gt;
Melyik lemezt válasszuk, ha csak lineáris keresést kell támogatni?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert mindig jobb a nagyobb blokkméret, mint a kisebb.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ott gyorsabb az egyes blokkok elérése.&lt;br /&gt;
# Az &amp;quot;A&amp;quot;-t kell választani, mert ugyan 3-szor több blokkot kell használni, de ezt ellensúlyozza a hozzáférési sebesség felezése.&lt;br /&gt;
# A &amp;quot;B&amp;quot;-t kell választani, mert harmadannyi blokkot kell használni, ami jobban gyorsítja a keresést, mint az egyes blokkok hozzáférési sebességének duplázódása.&lt;br /&gt;
&lt;br /&gt;
== Hány eleme lehet C-nek, ha A 10, B pedig 50 elemű? (2023 jan) ==&lt;br /&gt;
&lt;br /&gt;
[[Fájl:Info zv 2023 jan adatb er 1.png|keretnélküli]]&lt;br /&gt;
&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Legalább 0, legfeljebb 500&lt;br /&gt;
# Legalább 0, legfeljebb 50&lt;br /&gt;
# Legalább 10, legfeljebb 50.&lt;br /&gt;
# Legalább 0, legfeljebb 10&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek jelenleg. Melyik ER-modell felel meg a leírtaknak? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülőgép és a Járat között.&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus.&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak.&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze.&lt;br /&gt;
&lt;br /&gt;
== Mi nem jellemző a fa protokollra? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Zár bármikor, bárhonnan eltávolítható.&lt;br /&gt;
# Zár - az elsőt kivéve - csak akkor helyezhető el egy csomóponton, ha a szülőcsomóponton is tart fenn zárat a tranzakció.&lt;br /&gt;
# A tranzakciók tehetik az első zárjukat a fa gyökerére is.&lt;br /&gt;
# A fa protokoll szerinti tranzakciók kétfázisúak.&lt;br /&gt;
&lt;br /&gt;
== A relációs lekérdezések végrehajtásának heurisztikus optimalizálása során az alábbiak közül melyik NEM történik (Süllyesztés alatt azt értjük, amikor a relációalgebrai fa átalakítása során az adott művelet a gyökércsomóponttól a levélcsomópontok irányába mozdul el.) (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Descartes-szorzások süllyesztése&lt;br /&gt;
# Szelekciók süllyesztése.&lt;br /&gt;
# Levélcsomópontok átrendezése&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része nem fejezhető ki relációs algebrával az alábbiak közül? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# GROUP BY&lt;br /&gt;
# FROM ... NATURAL JOIN ...&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
&lt;br /&gt;
== Egy adatállomány rekordjaira ritka indexet építettek: (2023 jan) ==&lt;br /&gt;
* Az adatrekordok és az indexrekordok egyaránt teljesen kitöltik a blokkokat&lt;br /&gt;
* Egy adatrekord 100 Byte&lt;br /&gt;
* Összesen 100000 adatrekordot tárolunk&lt;br /&gt;
* Az adatállomány blocking faktora 100&lt;br /&gt;
* Az indexállomány blocking faktora 400&lt;br /&gt;
* A mutató mérete 10 byte&lt;br /&gt;
* Egy blokk elérési ideje 15 ms&lt;br /&gt;
&lt;br /&gt;
Mekkora a kulcs mérete?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 5 Byte&lt;br /&gt;
# 10 Byte&lt;br /&gt;
# 15 Byte&lt;br /&gt;
# 20 Byte&lt;br /&gt;
&lt;br /&gt;
== Milyen hiba ellen nem véd a szigorú 2PL (kétfázisú zárolás) protokoll? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Abort az operatív tár sérülése miatt.&lt;br /&gt;
# Abort patt miatt.&lt;br /&gt;
# Abort nem-sorosíthatóság miatt.&lt;br /&gt;
# Felhasználói abort.&lt;br /&gt;
&lt;br /&gt;
== Mit jelent a relációs adatbázis katalógusinformációi között szereplő kiválasztási kardinalitás (selection cardinality) az SC(A, r) formában? (2023 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Azon blokkok átlagos száma, amelyeket be kell olvasni az r relációból a keresés során az A attribútumra felírt egyenlőségi feltétel alapú szelekció esetén.&lt;br /&gt;
# Az r reláció A attribútumára időegység alatt végrehajtott kiválasztás műveletek (szelekciók) átlagos száma.&lt;br /&gt;
# Azon rekordok átlagos száma az r relációban, amelyek kielégítenek egy egyenlőségi feltételt az A attribútumra, feltéve, hogy legalább egy rekord kielégíti ezt az egyenlőségi feltételt.&lt;br /&gt;
# Az r reláció A attribútumában található különböző értékek száma.&lt;br /&gt;
&lt;br /&gt;
== Legfeljebb mekkora lehet két reláció természetes illesztésének rekordszáma, ha az egyik rekordszáma n, a másik rekordszáma m? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# max (n, m)&lt;br /&gt;
# n * m&lt;br /&gt;
# n + m&lt;br /&gt;
# min(n, m)&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 2NF, ha nincs másodlagos attribútuma&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 3NF, ha minden attribútuma elsődleges&lt;br /&gt;
# Egy relációs sémának lehet minden attribútuma másodlagos.&lt;br /&gt;
# Egy relációs sémának a legalacsonyabb normál formája 3NF, ha nincs másodlagos attribútuma&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik NEM szerepel a relációkra vonatkozó katalógus-információk között, amely a végrehajtási terv készítését támogatja? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# A reláció rekordjaiban a mezők száma.&lt;br /&gt;
# A reláció egy rekordjának mérete.&lt;br /&gt;
# A reláció rekordjainak száma.&lt;br /&gt;
# A relációban levő rekordokat tartalmazó blokkok száma.&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket nem befolyásolja a keresési kulcs mérete? (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# &amp;lt;math&amp;gt;B^{*}&amp;lt;/math&amp;gt;-fa magassága&lt;br /&gt;
# Hash tábla mérete&lt;br /&gt;
&lt;br /&gt;
== Az SQL SELECT utasítás melyik része felel meg leginkább a relációalgebrai projekció (vetítés) műveletnek? (2022 jun) ==&lt;br /&gt;
A válaszadás során tételezzük fel, hogy a lekérdezés egyetlen táblából dolgozik és a tábla egyetlen kulcsa sem jelenik meg az eredményben!&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# FROM&lt;br /&gt;
# SELECT DISTINCT&lt;br /&gt;
# ORDER BY&lt;br /&gt;
# WHERE&lt;br /&gt;
# SELECT&lt;br /&gt;
&lt;br /&gt;
== Tudjuk, hogy az R relációs sémán fennálló összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi minden, a sémára illeszkedő relációban. Ekkor (2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedổ egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) séma, ahol R=ABCGWXYZ, F=(XY → BGYZ, AY → CG, C → W, B → G) Melyik függés vezethető le az adott függéshalmazból? (2021 jan, 2022 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# ABGY → GX&lt;br /&gt;
# ACYZ → W&lt;br /&gt;
# AB → XG&lt;br /&gt;
# BXY → GXW&lt;br /&gt;
&lt;br /&gt;
== Egy B*-fáról a következőket tudjuk: (2022 jun) ==&lt;br /&gt;
* Az adatokat növekvő sorrendben tároljuk&lt;br /&gt;
* Az adatblokkok száma 402&lt;br /&gt;
* Az adatrekordok mérete 200 byte&lt;br /&gt;
* Egy blokk mérete nettó 2000 byte&lt;br /&gt;
* A kulcsok mérete 50 byte&lt;br /&gt;
* Egy mutató 50 byte&lt;br /&gt;
* A kulcsra vonatkozó szelekció kardinalitása (SC) 5 .&lt;br /&gt;
Ideális esetben legkevesebb hány blokkot kell kiolvasnunk egy kulcsértékre vonatkozó egyenlőség alapú keresésnél?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 4&lt;br /&gt;
# 9&lt;br /&gt;
# 2&lt;br /&gt;
# 3&lt;br /&gt;
&lt;br /&gt;
== Az üzemanyaggal történő visszaélések visszaszorítására egy cég úgy dönt, hogy kimutatásokat fog készíteni arról, hogy a cég mely járművébe melyik dolgozó hol és mennyit tankol. A dolgozók minden műszak elején teli tankkal veszik át a jármúveket, és a múszak végén megtankolva kell azokat leadniuk a telephelyen, így a tankolásmennyiségből kikövetkeztethető, hogy ki mennyi üzemanyagot használt, és hogy az illető az adott autóba melyik benzinkúton tankolt. (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb ER 1.png|keretnélküli|700px]]&lt;br /&gt;
&lt;br /&gt;
Milyen módosítást kell tenni a fenti ER-diagramon, amely után a modellből készült adatbázis alkalmas lesz a fent említett riportokhoz szükséges adatok tárolásához?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Törölni a Feltölt kapcsolattípust&lt;br /&gt;
# Törölni a Feltölt, Telik és Látogat kapcsolattípusokat&lt;br /&gt;
# Törölni a Látogat kapcsolattípust&lt;br /&gt;
# Törölni a Telik kapcsolattípust&lt;br /&gt;
# Törölni a Tankol kapcsolattípust&lt;br /&gt;
&lt;br /&gt;
== A válaszlehetőségek közül melyik a csatolt ER-diagram legpontosabb relációs leképezése? (2022 jun) ==&lt;br /&gt;
[[Fájl:2022 jun info zv adatb er dekomp.png|keretnélküli]]&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), B(a, b, d), ahol B kulcsa a és b együtt, és B-ben a idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt, valamint K-ban a és b is idegen kulcs&lt;br /&gt;
# A(a, b, c), B(b, d), ahol A kulcsa a és b együtt, és A-ban b idegen kulcs.&lt;br /&gt;
# A(&amp;lt;u&amp;gt;a&amp;lt;/u&amp;gt;, c), K(a, b, c, d), B(&amp;lt;u&amp;gt;b&amp;lt;/u&amp;gt;, d), ahol K kulcsa a és b együtt és K mind a négy attribútuma egyenként idegen kulcs is.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg, hogy az alábbiak közül mely állítás(ok) igazak a keresési költségekkel kapcsolatban, ha az adatokat B*-fában tároljuk! A költséget a blokkműveletek számával mérjük. (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,4}}&lt;br /&gt;
# A költség logaritmikusan arányos az adatrekordok számával.&lt;br /&gt;
# A költség lineárisan arányos az index struktúra elágazási tényezőjével.&lt;br /&gt;
# A költség lienárisan arányos az index blokkok számával.&lt;br /&gt;
# A költség lineárisan arányos a fa magasságával.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! (2022 jan) ==&lt;br /&gt;
Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és&lt;br /&gt;
az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük.&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4&lt;br /&gt;
FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
&lt;br /&gt;
== Melyik az egyetlen helyes válasz? Tudjuk, hogy az R relációs sémára illeszkedő minden relációban az összes nemtriviális függés esetén a függés bal oldalán található attribútum(halmaz) értéke egyedi. Ekkor... (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesz redundancia funkcionális függés miatt.&lt;br /&gt;
# a sémára illeszkedő egyetlen relációban sem lesznek ismétlődő attribútumértékek.&lt;br /&gt;
# van olyan, a sémára illeszkedő reláció, amelyben található redundancia funkcionális függés miatt.&lt;br /&gt;
# egyik sem helyes a többi állítás közül.&lt;br /&gt;
&lt;br /&gt;
== Adottak az A és B egyedhalmazok, valamint a köztük definiált bináris kapcsolathalmaz K, melynek kardinalitása több-több. Tegyük fel, hogy A-ban 10, B-ben pedig 20 egyed van. Legfeljebb hány kapcsolat lehet K-ban? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# 30&lt;br /&gt;
# 200&lt;br /&gt;
# 10&lt;br /&gt;
# 20&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyiket NEM befolyásolja a keresési kulcs mérete? (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A nested loop join algoritmus lépésszáma&lt;br /&gt;
# Vödrös hash tábla mérete&lt;br /&gt;
# Keresés költsége heap szervezés esetén&lt;br /&gt;
# B*-fa magassága&lt;br /&gt;
&lt;br /&gt;
== Válassza ki az egyetlen igaz állítást! (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Egy ER-modell determináló kapcsolathalmazának kardinalitása lehet több-több.&lt;br /&gt;
# Egy attribútumként jelzett idegen kulcs több egyedhalmazhoz is tartozhat az ER-modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy idegen kulcsot, mint attribútumot az ER modellben.&lt;br /&gt;
# Egy ER-modell gyenge egyedhalmazához mindig fel kell venni legalább egy determináló kapcsolathalmazt.&lt;br /&gt;
&lt;br /&gt;
== Egy gépjárműnyilvántartásban két tábla tárolja az autók és tulajdonosaik adatait, melyek sémái a következők: (2022 jan) ==&lt;br /&gt;
Tulajdonos(személyi_szám, név, születési_dátum, anyja_neve), kulcs: személyi szám&lt;br /&gt;
Gépjármű(rendszám, típus, márka, szín, gyártás_éve, tulajdonos_személyi_száma), kulcs: rendszám&lt;br /&gt;
&lt;br /&gt;
A táblák n db személy és m db gépjármű adatait tárolják, és egy személynek átlagosan 2 db gépjárműve van.&lt;br /&gt;
&lt;br /&gt;
Az alábbi SQL lekérdezés eredményrekordjainak számát melyik kifejezés becsüli legjobban?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;SELECT személyi_szám, név, rendszám, típus, márka&lt;br /&gt;
FROM tulajdonos, gépjármű&lt;br /&gt;
WHERE tulajdonos.személyi_szám = gépjármű.tulajdonos_személyi_száma ;&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# n + m&lt;br /&gt;
# 2 * m&lt;br /&gt;
# n&lt;br /&gt;
# m&lt;br /&gt;
# n * m&lt;br /&gt;
&lt;br /&gt;
== Legyen r(R) egy adott reláció, melynek sémája R(A,B,C,D). Tudjuk, hogy t, t* r(R) t[A]=t*[A] esetén t[B]=t*[B]. Ekkor: (2022 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# az A-tól a B funkcionálisan függ.&lt;br /&gt;
# a fentiek közül egyik válasz sem helyes.&lt;br /&gt;
# az A-tól a B funkcionálisan függhet.&lt;br /&gt;
# az A a B-től funkcionálisan függ.&lt;br /&gt;
&lt;br /&gt;
== Adott az R(A) séma és a rá illeszkedő r1 reláció. Amennyiben r2 = r1, mit fejez ki a képen látható relációalgebrai kifejezés? &amp;lt;math&amp;gt;r 1 \backslash \pi_{r 1 . A} \sigma_{r 1 . A&amp;lt;r 2 . A}(r 1 \cdot x \cdot r 2)&amp;lt;/math&amp;gt;. (2021 jan)==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Üres reláció.&lt;br /&gt;
# r1 legkisebb elemét.&lt;br /&gt;
# r1 legnagyobb és legkisebb elemének halmazát.&lt;br /&gt;
# r1 legnagyobb elemét.&lt;br /&gt;
&lt;br /&gt;
== Relációnk rekordjaira egy előre definiált kulcs alapján sűrú indexet, majd arra ritka indexet építünk úgy, hogy az indexeknél a lehetőlegkevesebb blokkot használjuk fel. A relációról a következőket tudjuk: (2021 jan) ==&lt;br /&gt;
* 400.000 rekord található benne&lt;br /&gt;
* Egy rekord mérete 250 byte&lt;br /&gt;
* Egy blokk (a header nélkül) 4000 byte&lt;br /&gt;
* Egy mutató 10 byte&lt;br /&gt;
* Egy kulcs mérete 10 byte&lt;br /&gt;
Hány blokkot foglalnak el az index állományok (sưrú+ritka)?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 135&lt;br /&gt;
# 210&lt;br /&gt;
# 27010&lt;br /&gt;
# 2010&lt;br /&gt;
&lt;br /&gt;
== Az r és s relációk természetes illesztését szeretnénk kiszámítani. Tegyük fel, hogy a relációk egyike sem fér el a memóriában, és amelyik algoritmusnál értelmezett, ott az r van a külső ciklusban, az indexelt keresés pedig átlagosan gyorsabb, mint a lineáris keresés. (2021 jan) ==&lt;br /&gt;
Álítsa növekvő sorrendbe a következő join algoritmusok blokkhozzáférések számában mért átlagos költségét!&lt;br /&gt;
* (A): index alapú egymásba ágyazott ciklikus illesztés (indexelt nested loop join)&lt;br /&gt;
* (B): egymásba ágyazott ciklikus illesztés (nested loop join)&lt;br /&gt;
* (C): összefésülés alapú illesztés (sorted merge join)&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# (A), (C), (B)&lt;br /&gt;
# (C), (B), (A)&lt;br /&gt;
# (B), (A), (C)&lt;br /&gt;
# (C), (A), (B)&lt;br /&gt;
# (B), (C), (A)&lt;br /&gt;
# (A), (B), (C)&lt;br /&gt;
&lt;br /&gt;
== Adott egy G→H funkcionális függés. Ekkor (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# G függ H-tól&lt;br /&gt;
# G értéke meghatározza H értékét&lt;br /&gt;
# H ismeretében G meghatározható&lt;br /&gt;
# G ismeretében H meghatározható&lt;br /&gt;
&lt;br /&gt;
== Az alábbiak közül melyik nem része egy relációs lekérdezés végrehajtási tervének? (2021 jan) ==&lt;br /&gt;
Tételezze fel, hogy relációalgebrai-alapú végrehajtási terv készül. Ennek megfelelően a &amp;quot;műveletek&amp;quot; szó mindig &amp;quot;relációalgebrai műveletek&amp;quot; értelemben szerepel a válaszokban.&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Műveletek.&lt;br /&gt;
# A múveletek közötti workflow-szervezés.&lt;br /&gt;
# A müveletek egymásra épülése (sorrendje).&lt;br /&gt;
# Az adatok eloszlásáról szóló statisztikák.&lt;br /&gt;
# Az egyes múveletek végrehajásához kiválasztott algoritmusok.&lt;br /&gt;
&lt;br /&gt;
== Egy reláció rekordjait elsődleges indexként múködő B*-fán keresztül érjük el. A tárolás módjáról a következőket tudjuk: (2021 jan) ==&lt;br /&gt;
* A fa magassága (HTi): 7&lt;br /&gt;
* A fa elágazási tényezője: 10&lt;br /&gt;
* Blokkok nettó mérete: 4000 byte&lt;br /&gt;
* Adatrekordok mérete: 400 byte&lt;br /&gt;
* A fa építéséhez használt attribútumra vonatkozó, egyenlőségi feltétel alapú kiválasztáshoz tartozó kardinalitási érték (selection cardinality, SC): 11&lt;br /&gt;
Várhatóan hány blokkművelet szükséges egy egyenlőségi keresés során?&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 7&lt;br /&gt;
# 10&lt;br /&gt;
# 18&lt;br /&gt;
# 9&lt;br /&gt;
&lt;br /&gt;
== Melyik állítás igaz? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája $3 \mathrm{NF}$, ha minden attribútuma elsődleges&lt;br /&gt;
# Egy relációs sémának lehet minden attribútuma másodlagos.&lt;br /&gt;
# Egy relációs sémának a legalacsonyabb normál formája 3NF, ha nincs másodlagos attribútuma&lt;br /&gt;
# Egy relációs sémának a legmagasabb normál formája 2NF, ha nincs másodlagos attribútuma&lt;br /&gt;
&lt;br /&gt;
== Adatbázisunkban tárolnánk, hogy légitársaságunk egyes repülőgépeire melyik pilótánknak van típusjogosítása, illetve hogy az egyes gépek melyik járatokon üzemelnek. Melyik ER-modell nyújt megoldást a problémára? (2021 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Egy Repülőgép kapcsolattípus, amely a Pilóta egyedhalmazt és a Járat egyedhalmazt köti össze&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, egy bináris kapcsolattípus a Pilóta és a Repülőgép között és egy bináris kapcsolattípus a Repülögép és a Járat között&lt;br /&gt;
# Egy Repülőgép gyenge egyedhalmaz, amelyet a Pilóta és a Járat egyedhalmazok determinálnak&lt;br /&gt;
# Egy Repülőgép, egy Pilóta és egy Járat egyedhalmaz, köztük egy ternáris kapcsolattípus&lt;br /&gt;
&lt;br /&gt;
== A felsoroltak közül melyik NEM szerepel egy relációs lekérdezés végrehajtási tervében? Feltételezzük, hogy relációalgebrai reprezentációval dolgozik a vizsgált adatbázis-kezelő rendszer. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A végrehajtás során használt workflow-stratégia (materializáció vagy pipelining).&lt;br /&gt;
# A használt relációalgebrai műveletek és azok hierarchiája a lekérdezésben.&lt;br /&gt;
# A végrehajtás során használandó indexek neve.&lt;br /&gt;
# Az eredmény várható rekordszáma.&lt;br /&gt;
# A használt relációalgebrai műveletek végrehajtásához rendelt algoritmusok.&lt;br /&gt;
# Az input relációk.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbáziskezelő-rendszer feladatai közé tartozik - többek között: (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# integritás védelme, adatok értelmezhetőségének biztosítása, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatbiztonság&lt;br /&gt;
# adatok értelmezhetőségének biztosítása, szinkronizálás, adatbiztonság&lt;br /&gt;
# integritás védelme, szinkronizálás, adatok értelmezhetőségének biztosítása&lt;br /&gt;
&lt;br /&gt;
== 1000 bájtos blokkméret mellett mekkora méretű lesz egy 500 vödörből álló hash-állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 2500 Byte&lt;br /&gt;
# 5000 Byte&lt;br /&gt;
# 10000 Byte&lt;br /&gt;
# 7500 Byte&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma másodlagos.&lt;br /&gt;
# ...a legmagasabb normálformája 3NF, ha minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
&lt;br /&gt;
== A sorted merge join algoritmus a join attribútumok szerint rendezett r és s relációk között &amp;lt;válasz&amp;gt; ahol br és bs a relációk blokkjainak számát jelöli... (2019 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# legfeljebb br + bs blokkművelettel megvalósítható, ...&lt;br /&gt;
# legalább br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# pontosan br + bs blokkművelettel valósítható meg, ...&lt;br /&gt;
# egyik sem.&lt;br /&gt;
&lt;br /&gt;
== Válassza ki a csak tranzakcióhibákat tartalmazó lehetőséget! (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# abort nem-sorosíthatóság miatt, nullával osztás, fantom olvasás, elveszett módosítás&lt;br /&gt;
# abort patt miatt, abort nem-sorosíthatóság miatt, nullával osztás, felhasználói abort&lt;br /&gt;
# abort patt miatt, abort nem sorosíthatóság miatt, piszkos adat olvasása, nem megismételhetó olvasás&lt;br /&gt;
# piszkos adat olvasása, nem megismételhető olvasás, fantom olvasás, elveszett módosítás&lt;br /&gt;
&lt;br /&gt;
== P: Az imperatív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki, ... Q: ...ezért a költség alapú optimalizálás célja: minimalizálni a join műveletek költségét. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az R attribútumai között fennálló érdemi funkcionális függések halmaza mindig tartalmazza az eseti funkcionális függéseket is, ... Q: ...ezért az érdemi funkcionális függőségek segítségével teljeskörűen megállapíthatjuk, hogy melyik attribútumokban fordulhat elő redundáns adattárolás funkcionális függés következtében. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor: P: A tranzakciók a kész pontjuk előtt nem engedik el a zárakat... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Adatbáziskezelő-rendszerben a médiahiba felbukkanásának esélyét csökkentendő szokásos megoldás az adatok több példányban, különböző diszkeken történő tárolása, ... Q: ...ezért ilyen esetekben a módosítási anomália okozta inkonzisztencia is gyakoribb. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a pattoktól. (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két attribútum (A, B) között szeretnénk a funkcionális függőségi kapcsolatot megállapítani, azonban ezen attribútumoknak az értékei még nem ismertek. Lehetséges-e a kérdésre választ adni? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Igen.&lt;br /&gt;
# Nem.&lt;br /&gt;
# Enne a kérdésnek semmi értelme.&lt;br /&gt;
&lt;br /&gt;
== Egy relációs sémának... (2020 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# ...lehet, hogy minden attribútuma elsődleges.&lt;br /&gt;
# ...a legmagasabb normálformája 3NF, ha nincs más másodlagos attribútum.&lt;br /&gt;
# ...a legmagasabb normálformája 2NF, ha nincs másodlagos attribútum.&lt;br /&gt;
# ...lehet, hogy minden attribútuma másodlagos.&lt;br /&gt;
&lt;br /&gt;
== A funkcionális függés... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# soha nem értékfüggetlen kényszer.&lt;br /&gt;
# mindig értékfüggő kényszer.&lt;br /&gt;
# lehet értékfüggő kényszer.&lt;br /&gt;
# mindig értékfüggetlen kényszer.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletében szereplő gyenge egyedhalmaz nem képezhető le a relációs adatmodellre,... Q: ...mert a reláció egy halmaz, így a benne szereplő rekordok egyedisége definíciószerűen elvárt. (2019 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott két tábla, T1 (oszlopai: A és B), és T2 (oszlopai: B és C). Válassza ki az alábbi lekérdezés eredményére vonatkozó állítások közül azt, amelyik biztosan igaz! Feltételezzük, hogy a lekérdezés szintaktikailag helyes és a táblák oszlopait is helyesen hivatkozza, a táblákban nem szerepel NULL érték, és az eredmény oszlopait R1, R2, R3 és R4 néven nevezzük. SELECT T1.A AS R1, T1.B AS R2, T2.B AS R3, T2.C AS R4 FROM T1 LEFT JOIN T2 ON (T1.B = T2.B) ; ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Az eredményben T1 minden rekordja szerepel.&lt;br /&gt;
# Az eredmény minden rekordjában megegyezik R2 és R3 mezők értéke.&lt;br /&gt;
# R4 mezőben nem fordul elő NULL érték.&lt;br /&gt;
# Az eredményben T2 minden rekordja szerepel.&lt;br /&gt;
&lt;br /&gt;
== Egy adatbázisban vödrös hashelést alkalmaznak a rekordok tárolására. Az alábbiak közül mi(k) okozhatják, hogy az egyes vödrökben tárolt rekordok elérési ideje jelentősen eltérhet egymástól (több helyes válasz is lehetséges, a helytelen válasz pontlevonással jár)? ==&lt;br /&gt;
{{Kvízkérdés|típus=több|válasz=1,3}}&lt;br /&gt;
# A hash függvény helytelen megválasztása.&lt;br /&gt;
# Ha sokkal több a törlés, mint a beszúrás.&lt;br /&gt;
# A rekordok kulcsértékeinek nem egyenletes eloszlása.&lt;br /&gt;
# Az adatok elhelyezkedése a merevlemezen.&lt;br /&gt;
# Ha sokkal több a beszúrás, mint a törlés.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy relációs lekérdező nyelv képes az unió, különbség, Descartes-szorzat, vetítés és kiválasztás műveleteit kifejezni, akkor relációsan teljesnek nevezik, ... Q: ...mert az ilyen lekérdező nyelvek segítségével egy relációs adatbázisból mindent le tudunk kérdezni. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== 500 bájtos blokkméret mellett mekkora méretű lesz egy 100 vödörből álló hash állomány vödörkatalógusa, ha egy mutató 5, egy kulcs pedig 10 bájtos? (2019 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# 500 Byte&lt;br /&gt;
# 2000 Byte&lt;br /&gt;
# 1500 Byte&lt;br /&gt;
# 1000 Byte&lt;br /&gt;
&lt;br /&gt;
== P: Mivel minden tranzitív funkcionális függés egyúttal részleges függés is, ... Q: ...ezért minden részleges függés tranzitív függés is. (2018 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának valamennyi kulcsa egyszerű, akkor a séma legalább 2NF, ... Q: ...mert az egyszerű kulcsok kizárják, hogy a sémában másodlagos attribútumok legyenek. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha másodlagos attribútum egy kulcstól részlegesen függ, akkor tranzitívan is függ tőle, ... Q: ...ezért ha egy séma nem 2NF, akkor 3NF sem lehet. (2018 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az, hogy egy A és B egyedhalmazok közötti K kapcsolattípus funkcionalitása &amp;quot;több-több&amp;quot;, azt jelenti, hogy ... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# K minden egyes kapcsolatpéldánya A több elemét rendeli B több eleméhez.&lt;br /&gt;
# K minden kapcsolatpéldánya pontosan egy A-beli elemet rendel pontosan egy B-beli elemhez, viszont A valamely eleméhez K kapcsolatpéldányai több B-beli elemet rendelhetnek, és B minden eleméhez K kapcsolatpéldányai több A-beli elemet rendelhetnek.&lt;br /&gt;
# A és B között nem engedélyezett több kapcsolattípus definiálása, ezért A és B egyedei között minden egyes kapcsolatot annak szemantikájától függetlenül K valamely kapcsolatpédánya definiálja.&lt;br /&gt;
# A és B egyedhalmazok között K-n kívüli további kapcsolattípusok is engedélyezettek.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... P: ...nem fordulhat elő lavina... Q: ...ezért rendszerhiba esetén nincs szükség UNDO-ra, csak REDO-ra. (2019 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== A relációalgebrai faalapú heurisztikus lekérdezésoptimalizálás lépései a kanonikus alakból kiindulva: (2018 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, join bevezetése, szelekciók süllyesztése.&lt;br /&gt;
# vetítések süllyesztése, fa leveleinek átrendezése, szelekciók süllyesztése, join bevezetése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, join bevezetése, vetítések süllyesztése.&lt;br /&gt;
# szelekciók süllyesztése, fa leveleinek átrendezése, vetítések süllyesztése, join bevezetése.&lt;br /&gt;
&lt;br /&gt;
== A relációs algebra, relációs sor-, ill. relációs oszlopkalkulus közül melyek teljesek? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# Relációs sorkalkulus.&lt;br /&gt;
# Relációs oszlopkalkulus.&lt;br /&gt;
# Relációs algebra.&lt;br /&gt;
# Csak a relációs algebra.&lt;br /&gt;
# Mindegyik felsorolt.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legalább 1NF relációs sémának minden attribútuma elsődleges, akkor a séma nem lehet BCNF, ... Q: ...mert BCNF sémák esetén a nemtriviális függések bal oldalán szuperkulcsok, a jobb oldalán pedig másodlagos attribútumok állnak. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának elégséges feltétele,... Q: ...ezért sorosítható ütemezés esetén nem kell tartani az olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Melyik nem része az alábbiak közül egy relációs lekérdezés végrehajtási tervének? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# A relációs műveletekhez rendelt algoritmusok.&lt;br /&gt;
# A műveletek workflow-ja (materializáció vagy pipelining).&lt;br /&gt;
# A kiválasztott relációs műveletek egymásraépülése.&lt;br /&gt;
# Katalógusinformációk az érintett relációkról.&lt;br /&gt;
&lt;br /&gt;
== A heurisztikus optimalizálásnál használt melyik módszer alkalmazható a költségalapú optimalizálás folyamatában? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# Descartes-szorzat és szelekció sorozat helyett megfelelő illesztés bevezetése.&lt;br /&gt;
# Projekciók süllyesztése.&lt;br /&gt;
# A szelekciók süllyesztése.&lt;br /&gt;
# Mindegyik alkalmazható a költségalapú optimalizálás során.&lt;br /&gt;
&lt;br /&gt;
== Adott az (R, F) relációs séma, ahol R = ABCDEG, F = { AB -&amp;gt; BC, AC -&amp;gt; D, CD -&amp;gt; EG, CG -&amp;gt; A, G -&amp;gt; D, D -&amp;gt; C}. Melyik függés vezethető le az adott függéshalmazból? (2018 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# D -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; B&lt;br /&gt;
# A -&amp;gt; B&lt;br /&gt;
# AC -&amp;gt; B&lt;br /&gt;
# G -&amp;gt; E&lt;br /&gt;
&lt;br /&gt;
== Hány soros ekvivalense létezik az alábbi ütemezésnek, ha LOCK-UNLOCK párok között az adategység értéke írható és olvasható? T1 LOCK A, T1 UNLOCK A, T2 LOCK A, T2 UNLOCK A, T3 LOCK B, T3 UNLOCK B, T1 LOCK B, T1 UNLOCK B, T2 LOCK C, T2 UNLOCK C, T3 LOCK C, T3 UNLOCK C. (2018 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 3&lt;br /&gt;
# 2&lt;br /&gt;
# 1&lt;br /&gt;
# 0&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy ütemezés tranzakciói a szigorú kétfázisú protokoll szabályait követik, akkor a kész pontjuk előtt nem írhatnak az adatbázisba, ... Q: ...ezért rendszerhiba esetén nincs szükség REDO-ra, csak UNDO-ra. (2018 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének mevalósításakor... P: ...az összefésüléses join (&amp;quot;sorted merge join&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költsége,... Q: ...mert az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;) költségét jelentősen befolyásolhatja, hogy melyik reláció kerül a külső ill. belső ciklusba. (2019 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Ha egy legális ütemezésben a tranzakciók követik a kétfázisú zárolás szabályait, akkor az ütemezés sorosítható, ... Q: ...ezért kétfázisú zárolás mellett rendszerhiba esetén sincs szükség UNDO-ra, csak REDO-ra. (2018 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A sorosíthatóság az izoláció megvalósításának szükséges és elégséges feltétele, ... Q: ...ezért sorosítható ütemezés esetén nem kell tartani a fantom olvasástól. ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Adott egy R séma és a sémára illeszkedő r(R) reláció. P: Mivel az r-n fennálló eseti funkcionális függések halmaza mindig tartalmazza az érdemi funkcionális függéseket is,... Q: ...ezért az eseti funkcionális függőségek segítségével további megállapításokat tehetünk, hogy melyik attribútumokban fordulhat még elő redundáns adattárolás. (2019 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Az adatbáziskezelő-rendszer háromrétegű modelljében melyik szinthez/réteghez köthető az adatbiztonság megvalósítása? (2018 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# A logikai adatbázis réteghez.&lt;br /&gt;
# A fizikai adatbázis réteghez.&lt;br /&gt;
# A nézetek szintjéhez.&lt;br /&gt;
# Egyikhez sem.&lt;br /&gt;
&lt;br /&gt;
== Egy relációalgebrai kifejezés kanonikus alakjában milyen műveletek és milyen sorrendben szerepelnek? (2019 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# szelekció, projekció, Théta-illesztés&lt;br /&gt;
# szelekció, projekció, természetes illesztés&lt;br /&gt;
# szelekció, projekció, Descartes-szorzat&lt;br /&gt;
# projekció, szelekció, természetes illesztés&lt;br /&gt;
# projekció, szelekció, Descartes-szorzat&lt;br /&gt;
&lt;br /&gt;
== Mennyi az r és s relációk &amp;quot;egymásba ágyazott ciklus&amp;quot; (nested loop join)-alapú illesztésének legjobb becsült költsége, ha egyik reláció sem fér bele az operatív tárba? (nr és ns a relációk rekordjainak, br és bs pedig a relációk blokkjainak számát jelölik.) (2018 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# br + bs&lt;br /&gt;
# nr * br + bs&lt;br /&gt;
# ns * br + bs&lt;br /&gt;
# ns * br + nr * bs&lt;br /&gt;
# bs * br + bs&lt;br /&gt;
&lt;br /&gt;
== P: a egy relációs sémának több kulcsa is van, akkor van összetett kulcsa is, ... Q: ...ezért egy relációs séma szuperkulcsa nem feltétlenül minimális. (2018 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Két kulcs szerinti keresést szeretnénk megvalósítani úgy, hogy az adatokat tartalmazó állománnyal szemben semmilyen rendezettség nem várható el. Milyen struktúrát javasolna erre a célra? (2018 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre két ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített két sűrű index, amelyekre egy-egy ritka indexet építünk.&lt;br /&gt;
# Az adatállományra épített egyetlen sűrű index, amelyre ritka indexet építünk, illetve az adatállományra emellett épített további ritka index.&lt;br /&gt;
# Az adatállomáányra közvetlenül épített két ritka index.&lt;br /&gt;
&lt;br /&gt;
== P: A deklaratív lekérdezőnyelven megfogalmazott relációs lekérdezések több lehetséges végrehajtási terv mentén értékelhetők ki,... Q: ...ezért a költségalapú optimalizálás célja: minimalizálni a join műveletek során végrehajtott blokkműveletek számát. (2018 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: A kiterjesztett ER-modell elemkészletével elkészített ER-diagram relációs adatmodellre leképezhető része mindig leképezhető legfeljebb annyi relációs sémára, amennyi az egyedtípusok és kapcsolattípusok számának összege, ... Q: ...mert az egyedek nem lehetnek többen, mint a relációs modellben a relációk összesített rekordszáma. (2019 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Ha egy ütemezés tranzakciói a REDO protokoll szabályait követik, akkor... ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# a tranzakciók kész pontjuk előtt nem engedik el a zárakat.&lt;br /&gt;
# a tranzakciók a zárpontjuk előtt elengedhetik a zárakat.&lt;br /&gt;
# a tranzakciók a zárpont után már írhatnak az adatbázisba.&lt;br /&gt;
# egy tranzakció ugyanazt az adategységet többször is zárolhatja.&lt;br /&gt;
&lt;br /&gt;
== Az R(A, B, C, D) és S(A, B, E, ) relációs sémák szerint létrehozott r és s táblákon fogalmaztuk meg az alábbi SQL nyelvű lekérdezést. SELECT * FROM r, s WHERE r.A = s.A ; Melyik relációalgebrai műveletet valósítja meg a lekérdezés az r és s relációk között? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=5}}&lt;br /&gt;
# természetes illesztés&lt;br /&gt;
# vetítés (projekció)&lt;br /&gt;
# metszet&lt;br /&gt;
# unió&lt;br /&gt;
# Théta-illesztés&lt;br /&gt;
&lt;br /&gt;
== P: A figyelmeztető protokoll szabályait követő tranzakciókból álló legális ütemezések esetén zárkonfliktus nem fordulhat elő, ... Q: ...mert az ilyen ütemezések esetén a sorosíthatóság garantált. (2018 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=2}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy relációs séma pontosan akkor BCNF, ha minden nemtriviális függés bal oldalán szereplő attribútumok értéke minden, a sémára illeszkedő relációban egyedi,... Q: ...ezért az ilyen sémákra illeszkedő relációkban funkcionális függés miatt redundáns adattárolás sehol nem fordulhat elő. (2019 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Egy ER-diagramon adott két egyedhalmaz, A és B. A attribútumtípusainak száma 18. B attribútumtípusainak száma 13. A-nak egyetlen összetett, 9 db attribútumtípus által alkotott kulcsa van, míg B-nek szintén egyetlen, összetett, 5 db attribútumtípus által alkotott kulcsa. C gyenge egyedhalmaznak egyetlen, 7 darab attribútumtípus által alkotott kulcsa van. C-t ezen kívül A és B egyedhalmazzal egy-egy determináló kapcsolattípus köti össze. Hány elemű lesz C relációs séma kulcsa, miután a fentiekben leírt ER-diagramot relációs sémákra képezzük le? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# 7&lt;br /&gt;
# 14&lt;br /&gt;
# 21&lt;br /&gt;
# 28&lt;br /&gt;
&lt;br /&gt;
== Két reláció természetes illesztésének megvalósításakor P: a blokk-alapú egymásba ágyazott ciklikus illesztés (&amp;quot;block nested loop&amp;quot;) költsége kisebb lehet, mint az egymásba ágyazott ciklikus illesztés (&amp;quot;nested loop&amp;quot;)... Q: ...mert kevesebb rekordpár illeszkedés-vizsgálatára van szükség az algoritmus futása során. (2019 jan) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== P: Egy gyenge egyedhalmaz elemeinek azonosításához nem elég egy gyenge egyedhalmaz kulcsa,... Q: ...ezért a gyenge egyedhalmaz mindig specializált egyedhalmaz. (2019 jun) ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# P igaz, Q igaz és van összefüggés.&lt;br /&gt;
# P igaz, Q igaz, de nem kapcsolódnak.&lt;br /&gt;
# P igaz, Q hamis.&lt;br /&gt;
# P hamis, Q igaz.&lt;br /&gt;
# Mindkettő hamis.&lt;br /&gt;
&lt;br /&gt;
== Jelölje meg az egyetlen helyes választ! Adott egy X -&amp;gt; Y funkcionális függés. Ekkor: ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=3}}&lt;br /&gt;
# X függ Y-tól.&lt;br /&gt;
# X értéke ismeretében Y értéke mindig megadható.&lt;br /&gt;
# Az X értéke meghatározza Y értékét.&lt;br /&gt;
# Y értéke ismeretében X értéke mindig megadható.&lt;br /&gt;
&lt;br /&gt;
== Mely igaz az alábbiak közül? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=1}}&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor lehet olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha egy ütemezés sorosítható, akkor nincs olyan időpillanat, amikor a várakozási gráfban irányított kör van.&lt;br /&gt;
# Ha a várakozási gráf egyetlen időpillanatban sem tartalmaz irányított kört, akor az ütemezés sorosítható.&lt;br /&gt;
# Ha a várakozási gráf valamely időpillanatban tartalmaz irányított kört, akkor az ütemezés nem sorosítható.&lt;br /&gt;
&lt;br /&gt;
==  A következőket tudjuk egy B* fáról és annak tartalmáról: A fa elágazási tényezője 5; Egy blokkba 3 adatrekord fér el; Egy blokk elérése 5 ms-ig tart; A B*-fa egyetlen részét se tároljuk a memóriában; Egy kulcsalapú egyenlőségi keresés átlagos ideje 20 ms; Kérdés: legfeljebb hány adat rekord lehet a fában jelenleg? ==&lt;br /&gt;
{{Kvízkérdés|típus=egy|válasz=4}}&lt;br /&gt;
# 75&lt;br /&gt;
# 81&lt;br /&gt;
# 125&lt;br /&gt;
# 375&lt;/div&gt;</summary>
		<author><name>Dózsa Domonkos</name></author>
	</entry>
</feed>