wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Android programozás

Total questions: 48

Worksheet time: 24mins

Name
Class
Date
1.

Melyek a Kotlin programozási nyelv legfontosabb tulajdonságai?

a)

Dinamikus típusos, nem támogatja a funkcionális programozást.

b)

Csak objektumorientált programozást támogat, nem kompatibilis a Java-val.

c)

Statisztikusan típusos, interoperábilis a Java-val, támogatja az objektumorientált és funkcionális programozási paradigmákat, null-biztonságos, és minimalizálja a boilerplate kódot.

d)

Kizárólag szkriptnyelvként használható, nincs támogatása az OOP-nak.

2.

Mi a különbség a val és var változók között Kotlinban?


a)

Változók: A val (mutable, módosítható), és a var (immutable, nem módosítható) .

b)

Mindkettő ugyanazt jelenti, csak a szintaxis különbözik.

c)

Változók: val (immutable, nem módosítható) és var (mutable, módosítható).

d)

A val csak osztályokban használható, a var pedig csak függvényekben.

3.

Milyen típusú listák léteznek Kotlinban?

a)

Listák: listOf (immutable lista), mutableListOf (mutable lista).

b)

Listák: listOf (mutable lista), mutableListOf (immutable lista).

c)

Csak arrayOf és intArrayOf.

d)

Csak arrayListOf és hashMapOf.

4.

Kotlin függvények mit támogatnak?

a)

Csak egyetlen paramétert támogatnak.

b)

Kotlinban a függvényeket a fun kulcsszóval deklaráljuk. Támogatják a default paramétereket, névvel megadott paramétereket, vararg paramétereket.

c)

Kotlinban a függvényeket a fun kulcsszóval deklaráljuk. Csak a fix számú paramétereket támogatják.

d)

Csak anonim paramétereket.

5.

Hogyan használható az if kifejezés Kotlinban?


a)

Csak feltételként, nem adhat vissza értéket.

b)

Csak ciklusokban használható.

c)

if kifejezésként is használható (visszaad egy értéket).

d)

Csak string értéket adhat vissza.

6.

Mit jelent a when kifejezés Kotlinban?

a)

Egy ciklus, amely addig fut, amíg egy feltétel igaz.

b)

Egy eszköz, amely csak boolean értékekkel működik.

c)

Egy függvény, amely csak számokkal dolgozik.

d)

when egy sokoldalú eszköz, amely a switch-case struktúrát helyettesíti.

7.

Kotlinban milyen típusú ciklusok támogatottak?

a)

for, while, és do..while ciklusok támogatottak.

b)

Csak for és while ciklususok támogatottak.

c)

Ciklusok nem támogatottak, helyette iterátorokat kell használni.

d)

Csak végtelen ciklusok lehetségesek.

8.

Kotlinban hogyan hozható létre egy tartomány (range)?

a)

A range kulcsszóval.

b)

A ',,'. operátor segítségével hozhatók létre, például 1,,5.

c)

A Range osztály példányosításával.

d)

A '..' operátor segítségével hozhatók létre, például 1..5.

9.

Hogyan kezelhetők a kivételek?

a)

Csak a függvények deklarációjában a throws kulcsszóval.

b)

Automatikusan, a fordító kezeli.

c)

try-catch blokkok kezelik a kivételeket. Nincs throws kulcsszó a függvény deklarációkban.

d)

Csak globálisan, a program elején.

10.

Mi a bővítő függvények (extension functions) szerepe?

a)

Lehetővé teszik, hogy új metódusokat adjunk hozzá egy meglévő osztályhoz anélkül, hogy örökölnénk tőle.

b)

Csak az alapvető függvények újradefiniálására használhatók.

c)

Lehetővé teszik az osztályok közötti kommunikációt.

d)

Segítenek az új osztályok létrehozásában, öröklődés folyamatával.

11.

Sorold fel a Kotlinban használható standard tárolókat és néhány bővítő függvényüket!

a)

Csak ArrayList, függvények: add, remove.

b)

Queue, Stack, függvények: push, pop.

c)

Vector, Hashtable, függvények: insert, delete.

d)

Kotlinban a list, set, és map kollekciókat alapértelmezés szerint immutable és mutable formában használhatjuk. Ezek a kollekciók számos bővítő függvénnyel rendelkeznek, mint például filter, map, count, any.

12.

Hogyan kezelhetők a null értékek Kotlinban?

a)

A null értékek kezelése automatikusan történik a fordító által.

b)

A ?. (safe call) operátor, ?: (Elvis operátor), és !!. (non-null assertion/null-biztos hivatkozás) segítségével kezelhetjük a null értékeket.

c)

Kizárólag ?. (safe call) operátorral.

d)

Kizárólag ?: (Elvis) operátorral.

13.

Mi a lambdák szerepe?

a)

Anonim funkciók, amelyeket változókhoz rendelhetünk, vagy paraméterként átadhatunk.

b)

Anonim funkciók, csak a ciklusokban használhatóak, paraméterként kell átadni őket.

c)

Anonim funkciók, csak új osztályok definiálására szolgálnak.

d)

A program futási idejének csökkentésére szolgálnak.

14.

Hogyan definiálhatóak az osztályok és hozhatóak létre az objektumok?

a)

Az osztályok csak Java-ban definiálhatók, majd Kotlinban használhatók.

b)

Kotlinban nincs szükség osztályokra, csak objektumokra.

c)

Kotlinban az osztályokat a class kulcsszóval hozzuk létre. Objektumokat az osztály példányosításával hozhatunk létre.

d)

Csak a már meglévő osztályokból lehet objektumokat létrehozni.

15.

Hogyan deklarálhatók tulajdonságok (property-k) Kotlin osztályokban?

a)

Csak a konstruktorban lehet deklarálni őket.

b)

Az osztályok tulajdonságai közvetlenül az osztályon belül deklarálhatók.

c)

Csak interfészekben használhatók.

d)

Tulajdonságok csak statikus módon deklarálhatók.

16.

Milyen típusú konstruktorok léteznek Kotlinban?

a)

Csak egy típusú konstruktor van, az elsődleges.

b)

Nincsenek konstruktorok, helyette factory metódusokat használunk.

c)

Konstruktorokat csak a Java interop miatt használunk.

d)

Az osztályoknak lehet elsődleges konstruktoruk és egy vagy több másodlagos konstruktoruk.

17.

Melyik az igaz kijelentés a 'by lazy' és 'latenit'-el kapcsolatosan?

a)

Mindkettő ugyanazt a célt szolgálja, csak más szintaxisú.

b)

A by lazy csak osztály szinten használható, lateinit pedig csak metódusokban.

c)

A by lazy nem támogatott, csak a lateinit.

d)

Késleltetett inicializálási technikák, amelyek segítségével csak akkor hozzuk létre az objektumokat, amikor először szükség van rájuk.

18.

A data osztályokról...

a)

Csak a számadatok kezelésére szolgálnak.

b)

Az adatbázis kapcsolatok kezelésére használatosak. Automatikusan generál equals(), hashCode(), toString() metódusokat.

c)

Olyan osztályok, amelyek célja az adatok tárolása. Automatikusan generál equals(), hashCode(), toString() metódusokat, valamint copy() függvényt.

d)

Csak a tesztelés megkönnyítésére szolgálnak.

19.

Kotlinban mit jelent az object és companion object?

a)

Az object kulcsszóval singleton objektumokat hozhatunk létre. A companion object lehetővé teszi statikus tagok (metódusok és változók) deklarálását az osztályokban.

b)

Az object új osztályokat hoz létre, companion object pedig csak metódusokat.

c)

Mindkettő ugyanazt jelenti, csak más kontextusban használják.

d)

Az object csak az interface-eknél használható, companion object pedig nem létező fogalom.

20.

Mi az a SOLID elv (SOLID Principles) az objektumorientált programozásban? Sorold fel őket!

a)

A SOLID elvek az objektumorientált programozás alternatív szabályai, amelyek a futási idő minimalizálására koncentrálnak:

  • Simple Object Rule

  • Optimization Principle

  • Limited Inheritance Rule

  • Indirect Dependency Rule

  • Dynamic Interface Usage

b)

A SOLID elvek az objektumorientált programozás speciális struktúráit írják le, amelyek célja a szoftver egyszerűsítése:

  • Single Optimization Principle

  • Open Framework Model

  • Layered Substitution Principle

  • Interface Limitation Principle

  • Direct Dependency Model

c)

A SOLID elvek az objektumorientált programozás és tervezés öt alapelvét foglalják össze, amelyek a szoftverfejlesztés során a karbantarthatóságot, rugalmasságot és bővíthetőséget segítik elő:

  • Single Responsibility Principle (Egyetlen felelősség elve)

  • Open/Closed Principle (Nyitott/Zárt elv)

  • Liskov Substitution Principle (Liskov helyettesítési elv)

  • Interface Segregation Principle (Interfész szegregáció elve)

  • Dependency Inversion Principle (Függőségi fordítás elve)

d)

A SOLID elvek az adatbázis-kezelés tervezési mintáira vonatkoznak, amelyek az adattárolás hatékonyságát javítják:

  • Standardized Storage Rule

  • Object-oriented Access Design

  • Layered Dependency Principle

  • Indexed Segmentation Rule

  • Database Interaction Optimization

21.

Creational patterns (Létrehozási minták)... Sorold fel őket!

a)

A létrehozási minták az objektum létrehozásának módját abstrahálják el, hogy az ne közvetlenül az osztály példányosításával történjen:

  • Singleton: Biztosítja, hogy egy osztálynak csak egy példánya legyen, és globális hozzáférési pontot biztosít ehhez a példányhoz.

  • Factory Method: Egy interfész létrehozására szolgál objektumok számára, de hagyja, hogy az alaposztályok döntsék el, mely osztály példányát hozzák létre.

  • Builder: Leegyszerűsíti egy komplex objektum összetett összeállítását, lehetővé téve, hogy különböző reprezentációkat generáljunk ugyanazokkal a konstrukciós folyamatokkal.

b)

A létrehozási minták az objektumok interakcióit és viselkedését definiálják a rendszerben:

  • Proxy: Egy közvetítő objektumot hoz létre, amely a hozzáférést szabályozza az igazi objektumhoz.

  • Adapter: Az interfészek közötti különbségeket kezeli, hogy különböző rendszerek kommunikálhassanak egymással.

  • Composite: Lehetővé teszi, hogy egy objektum hierarchikus szerkezetekben dolgozzon más objektumokkal.

c)

A létrehozási minták a rendszerek dinamikus működésére koncentrálnak, hogy a végrehajtás során hatékonyabbá váljanak:

  • Strategy: A viselkedésmódok változtatásának lehetőségét biztosítja anélkül, hogy a kliens osztály módosulna.

  • State: Lehetővé teszi, hogy egy objektum állapota dinamikusan változzon.

  • Observer: Egy objektumot figyelő rendszert biztosít, amely az értesítéseket különböző osztályoknak küldi.

d)

A létrehozási minták az objektumok adatkezelését és tárolását optimalizálják:

  • Iterator: Lehetővé teszi, hogy végigiteráljunk egy objektumkollekción.

  • Command: Egyesíti a kéréseket objektumokká, amelyeket késleltetett módon hajtunk végre.

  • Decorator: Az objektum viselkedését módosítja anélkül, hogy megváltoztatná annak osztályát.

22.

Mi az a Behavioral patterns (Viselkedési minták)? Sorold fel őket!

a)

A viselkedési minták az objektumok tárolására és kezelésére összpontosítanak:

  • Singleton: Biztosítja, hogy egy osztálynak csak egy példánya legyen, és globális hozzáférési pontot biztosít ehhez a példányhoz.

  • Factory Method: Egy interfész létrehozására szolgál objektumok számára, de hagyja, hogy az alaposztályok döntsék el, mely osztály példányát hozzák létre.

  • Builder: Leegyszerűsíti egy komplex objektum összetett összeállítását, lehetővé téve, hogy különböző reprezentációkat generáljunk ugyanazokkal a konstrukciós folyamatokkal.

  • Prototype: Lehetővé teszi egy objektum klónozását, hogy ne kelljen újra létrehozni ugyanazt.

b)

A viselkedési minták az objektumok állapotát és viselkedését módosítják:

  • State: Lehetővé teszi, hogy egy objektum állapota dinamikusan változzon.

  • Decorator: Az objektum viselkedését módosítja anélkül, hogy megváltoztatná annak osztályát.

  • Chain of Responsibility: Különböző objektumoknak ad lehetőséget arra, hogy egy kérésre válaszoljanak, azzal a lehetőséggel, hogy továbbadják azt a következő objektumnak.

  • Mediator: A kommunikációt egy központi objektum irányítja, amely elvonja a résztvevő objektumok közvetlen kapcsolatát.

c)

A viselkedési minták az objektumok adatkezelésére és tárolására összpontosítanak:

  • Adapter: Az interfészek közötti különbségeket kezeli, hogy különböző rendszerek kommunikálhassanak egymással.

  • Bridge: Az absztrakció és a megvalósítás közötti kapcsolatot biztosítja.

  • Composite: Lehetővé teszi, hogy egy objektum hierarchikus szerkezetekben dolgozzon más objektumokkal.

  • Flyweight: Lehetővé teszi, hogy megoszthassuk a hasonló objektumok adatait anélkül, hogy több példányt kellene létrehozni.

d)

A viselkedési minták az objektumok közötti kommunikációra összpontosítanak:

  • Observer: Egy-egy kapcsolatot hoz létre objektumok között úgy, hogy ha egy objektum állapota megváltozik, minden függő része automatikusan értesítést kap.

  • Iterator: Lehetővé teszi egy kollekció elemeinek sorozatos elérését anélkül, hogy felfednénk a kollekció belső reprezentációját.

  • Strategy: Lehetővé teszi, hogy egy algoritmus futási idejű választását egy algoritmus család közül.

  • Template Method: Meghatároz egy algoritmus vázát egy metódusban, hagyva az alaposztályokat, hogy implementálják a művelet egyes lépéseit.

23.

Mi az a Structural patterns (Szerkezeti minták)? Sorold fel őket!

a)

A szerkezeti minták az objektumok viselkedését és működését befolyásolják:

  • Strategy: A viselkedési minták része, amely lehetővé teszi az algoritmusok futásidejű választását.

  • State: Lehetővé teszi, hogy egy objektum állapota dinamikusan változzon.

  • Command: Egy kérés végrehajtásának késleltetett módját biztosítja.

  • Observer: Egy-egy kapcsolatot hoz létre objektumok között, hogy értesítéseket küldjenek az állapotváltozásokról.

b)

A szerkezeti minták arra összpontosítanak, hogy hogyan lehet osztályokat és objektumokat összeállítani nagyobb struktúrákba:

  • Composite: Egy csoport objektumot úgy kezel, mintha egyetlen objektum lenne.

  • Proxy: Egy helyettesítő vagy helyőrző objektumot biztosít egy másik objektumhoz való hozzáféréshez.

  • Adapter: Egy interfész átalakítására szolgál, hogy kompatibilis legyen egy másik interfésszel.

  • Decorator: Dinamikusan hozzáad vagy felülír felelősségeket egy objektumhoz anélkül, hogy megváltoztatná annak szerkezetét.

c)

A szerkezeti minták a kommunikációt és adatátvitelt optimalizálják:

  • Mediator: A kommunikációt egy központi objektum irányítja, amely elvonja a résztvevő objektumok közvetlen kapcsolatát.

  • Flyweight: Lehetővé teszi a megosztott objektumok hatékony kezelését, csökkentve a memóriát.

  • Facade: Egy egyszerűsített interfészt biztosít egy komplex rendszerhez.

  • Bridge: Az absztrakció és a megvalósítás közötti kapcsolatot biztosítja.

d)

A szerkezeti minták a rendszerek működését optimalizálják és az adatkezelést javítják:

  • Singleton: Biztosítja, hogy egy osztálynak csak egy példánya legyen, és globális hozzáférési pontot biztosít ehhez a példányhoz.

  • Factory Method: Egy interfész létrehozására szolgál objektumok számára, de hagyja, hogy az alaposztályok döntsék el, mely osztály példányát hozzák létre.

  • Builder: Leegyszerűsíti egy komplex objektum összetett összeállítását.

  • Prototype: Lehetővé teszi egy objektum klónozását, hogy ne kelljen újra létrehozni ugyanazt.

24.

Mi a célja a Dependency Injection (DI) tervezési mintának?

a)

A Dependency Injection (DI) célja, hogy minden osztály teljes mértékben független legyen a többi osztálytól, és ne osztozzanak közös erőforrásokon:

  • Az osztályoknak teljesen maguknak kell létrehozniuk a szükséges függőségeiket.

  • Az osztályok közvetlenül példányosítják a szükséges objektumokat.

  • A kód közvetlenül hivatkozik a függőségekre anélkül, hogy külső rendszert használnának.

b)

Egy tervezési minta és technika, amely csökkenti a kód függőségeit azáltal, hogy a függőségeket (például objektum példányokat) külső forrásból (pl. keretrendszertől) injektálja az osztályokba, így növelve a kód moduláris felépítését és tesztelhetőségét.

c)

A Dependency Injection (DI) célja a kód teljesítményének maximalizálása azáltal, hogy a leggyorsabb elérhető függőségeket választja:

  • A DI a függőségeket a teljesítmény szempontjából optimalizálja.

  • A kódot a leggyorsabban betöltődő objektumok alapján konfigurálja.

  • A DI technika lehetővé teszi az osztályok gyors példányosítását.

d)

A Dependency Injection (DI) célja, hogy minden osztály automatikusan hozzáférjen az összes más osztályhoz és azok erőforrásaihoz:

  • Minden osztály közvetlenül elérheti más osztályok minden funkcióját.

  • Az osztályok közvetlenül manipulálják és hozzák létre más osztályok példányait.

  • A kód nem igényel külön konfigurációt a függőségek kezelésére.

25.

Mi a Repository Pattern szerepe?

a)

A Repository Pattern célja, hogy közvetlen hozzáférést biztosítson az adatbázishoz, és minden adatkezelési műveletet az alkalmazás többi része végezzen.

b)

A Repository Pattern célja, hogy az adatokat kizárólag memóriában tárolja, így elkerülve a fájlok és adatbázisok használatát.

c)

Az adatelérési logikát egy központi interfész mögé rejti, lehetővé téve az adatok egységes kezelését és elérését az alkalmazás többi része számára, függetlenül az adatok fizikai tárolásától.

d)

A Repository Pattern célja, hogy a lekérdezéseket gyorsítja és optimalizálja az adatbázisban a rendszer erőforrásainak takarékos használatával:

  • Az adatbázis lekérdezéseket a Repository Pattern optimalizálja a teljesítmény érdekében.

  • A pattern közvetlenül az adatbázis gyorsítótárazására és optimalizálására összpontosít.

  • A lekérdezések gyorsaságát az alkalmazás logikáján belül végzi el.

26.

Mi a különbség egy framework és egy library között?

a)

Framework: Egy átfogó munkakörnyezet, amely meghatározott keretek között végzi a szoftverfejlesztést, gyakran meghatározva az alkalmazás szerkezetét és az életciklusát. A framework "hív", azaz meghatározza a kontroll folyamát.
Library: Gyűjteménye funkcióknak és eszközöknek, amelyeket a fejlesztők hívhatnak és használhatnak saját alkalmazásaikban anélkül, hogy az befolyásolná az alkalmazás szerkezetét. A fejlesztő "hívja" a könyvtárat, amikor szüksége van rá.

b)

A framework és a library ugyanazt a célt szolgálja, csak a használatuk eltérő:

  • A framework és a library is ugyanúgy befolyásolja az alkalmazás szerkezetét.

  • A fejlesztő nem irányítja a kontroll folyamatát sem a framework, sem a library használata során.

  • A két fogalom nem különbözik a működésükben, csak a kód szerkezetének elnevezése más.

c)

A framework az alkalmazás összes logikáját és szerkezetét meghatározza, míg a library csak a vizuális elemeket kezeli. A framework kizárólag a vizuális felület kezelésére van kialakítva. A library csak a háttérszolgáltatásokat biztosít, és nem szabályozza az alkalmazás struktúráját.

d)

A framework lehetővé teszi a kód másolását és beillesztését, míg a library kód generálását végez.

27.

Mik az Android operációs rendszer főbb tulajdonságai?

a)
  • Zárt forráskódú és Unix-alapú.

  • Csak egy érintéses interakciókat támogat.

  • Nincs támogatás a hardvereszközök számára, és nem képes kezelni érzékelőket.

  • Alkalmazásközi kommunikációs képességek nem elérhetők.

b)
  • Nyílt forráskódú és Windows-alapú.

  • Támogatja a több érintéses interakciókat, de csak alapvető funkciókhoz.

  • Széles körű támogatás a hardvereszközök számára, de nem támogatja a kamerát vagy a GPS-t.

  • Alkalmazásközi kommunikációs képességek gyengék.

c)
  • Nyílt forráskódú és MacOS-alapú.

  • Csak a billentyűzetet és az egérhasználatot támogatja.

  • Nem támogatja a hardvereszközöket, és nem képes érzékelők kezelésére.

  • Erős alkalmazásközi kommunikációs képességek nem elérhetők.

d)
  • Nyílt forráskódú és Linux-alapú.

  • Támogatja a több érintéses interakciókat.

  • Széles körű támogatás a hardvereszközök számára, beleértve a kamerát, a GPS-t, a gyorsulásmérőt stb.

  • Erős alkalmazásközi kommunikációs képességek.

28.

Mi az Android SDK szerepe az alkalmazásfejlesztésben?

a)

Csak a tesztelést támogatja.

b)

Csak a dokumentációt biztosítja.

c)

Az Android Software Development Kit (SDK) az eszközök és API-k gyűjteménye, amely lehetővé teszi a fejlesztők számára, hogy alkalmazásokat írjanak az Android platformra. Tartalmazza a kompilátorokat, eszközöket, emulátorokat és a szükséges API-kat.

d)

Az Android SDK csak a felhasználói felület tervezésére szolgál, és nem tartalmaz eszközöket a háttérlogika fejlesztéséhez.
Csak vizuális elemek tervezésére van szükség.

  • Nem tartalmaz semmilyen API-t vagy eszközt a kód futtatásához.

  • Nincs lehetőség emulátor használatára.

29.

Mi az Android alkalmazás részei?

a)
  • Erőforrások: Képek, szövegek és layout fájlok.

  • Komponensek: Activity-k, szolgáltatások (Services), tartalom szolgáltatók (Content Providers), és broadcast fogadók (Broadcast Receivers).

  • Manifest fájl: Deklarálja az alkalmazás komponenseit, jogosultságait, minimum SDK verziót, stb.

  • Build scripts: Gradle scripteket használnak az alkalmazás építéséhez és csomagolásához.

b)
  • Erőforrások: Csak szöveges fájlok és adatbázisok.

  • Komponensek: Csak Activity-k és egyéb vizuális elemek.

  • Manifest fájl: Nem tartalmaz információkat az alkalmazás jogosultságairól.

  • Build scripts: Az alkalmazás csak manuálisan építhető, scriptek használata nem szükséges.

c)
  • Erőforrások: Csak a programkód és a Java osztályok.

  • Komponensek: Activity-k, de nem tartalmaznak más típusú komponenseket.

  • Manifest fájl: Csak az alkalmazás verzióját és nevét deklarálja.

  • Build scripts: Az alkalmazás építése csak a parancssorból történik, Gradle használata nem ajánlott.

d)
  • Erőforrások: Csak a felhasználói felületre vonatkozó fájlok (layoutok és dizájn elemek).

  • Komponensek: Csak statikus fájlok, mint képek és szövegek.

  • Manifest fájl: Nem szükséges, ha az alkalmazás nem használ harmadik fél által fejlesztett könyvtárakat.

  • Build scripts: Az alkalmazás automatikus építése nem történhet meg.

30.

Mi az APK (Android Package) az Androidban?

a)

Egy programozási nyelv.

b)

Az Android alkalmazások csomagolási formátuma, amely tartalmazza az alkalmazás összes komponensét és erőforrását.

c)

Egy adatbázis formátum.

d)

Egy hálózati protokoll.

31.

Mi az Activity szerepe az Android alkalmazásban?

a)

Egy háttérszolgáltatás, amely folyamatosan fut a háttérben és nem tartalmaz felhasználói felületet.

b)

Egy olyan komponens, amely kizárólag az alkalmazás betöltési idejét kezeli, és nem tartalmaz felhasználói interakciót.

c)

Egy alkalmazáson belüli egyetlen képernyő, amely felhasználói interakciót tesz lehetővé.

d)

Egy adatbázis-kezelő komponens, amely az alkalmazás adatainak tárolásáért felelős.

32.

Mik az Activity életciklus metódusok?

a)

Fontos metódusok, mint például onCreate(), onStart(), onResume(), onPause(), onStop(), és onDestroy(), amelyek kezelik az Activity életciklusát.

b)

Az Activity életciklus metódusai kizárólag az alkalmazás betöltésekor és bezárásakor hívódnak meg. Nincs szükség további metódusokra az Activity futása közben.

c)

Az Activity életciklus metódusai csak az alkalmazás felhasználói felületének megjelenítésekor és eltüntetésekor futnak le.

  • Az onCreate() és onDestroy() metódusok az egyetlenek, amelyek fontosak az életciklusban.

d)

Az Activity életciklus metódusai az alkalmazás adatkezelésére vonatkoznak, és nem kapcsolódnak az Activity vizuális kezeléséhez. Az életciklus metódusok nem befolyásolják a felhasználói interakciókat vagy a képernyő frissítését.

33.

Mi az Intent az Android alkalmazásban?

a)

Egy rendszerkomponens, amely kizárólag a háttérszolgáltatások futtatására szolgál, nem használható az Activity-k közötti kommunikációra.

b)

Egy üzenet objektum, amely komponensek közötti kommunikációra szolgál, például egy Activity indítására vagy adatátvitelre.

c)

Egy objektum, amely az alkalmazás adatbázisainak kezeléséért felelős.

d)

Egy olyan objektum, amely csak a vizuális elemek megjelenítésére szolgál, és nem befolyásolja az alkalmazás működését. Az Intent nem kapcsolódik a felhasználói felület kezeléséhez, hanem az alkalmazás működésének irányításához és adatátvitelhez.

34.

Mi az Activity állapotok szerepe és hogyan működik a back stack az Android alkalmazásban?

a)

Az Activity-k csak egyetlen állapotban létezhetnek, és a back stack nem befolyásolja a működésüket.

  • Az Activity-k nem rendelkeznek különböző állapotokkal, és a back stack csak a legutolsó Activity-t tárolja.

b)

A back stack az Activity-k közötti adatátvitelt kezeli, nem a sorrendet.

c)

A back stack minden Activity-t tartalmaz, még azokat is, amelyek már nem aktívak.

d)

Az Activity-k különböző állapotokban lehetnek (pl. futó, szüneteltetett), és a back stack tartja nyilván az aktív Activity-k sorrendjét.

35.

Válaszd ki a helyes opciót a következőkkel kapcsolatosan: View, ViewGroup, Layout!

a)
  • View: Az UI alapeleme, mint egy gomb vagy szövegmező.

  • ViewGroup: Konténerek, mint például LinearLayout és RelativeLayout, amelyek View-kat tartalmaznak.

  • Layout: Az XML fájlok, amelyek meghatározzák az UI elrendezését.

b)
  • View: Csak a háttérszolgáltatásokat tartalmazó objektum.

  • ViewGroup: Csak adatbázis-kezelésre szolgáló objektumok.

  • Layout: Az alkalmazás kódjának logikai elrendezését határozza meg, nem a felhasználói felületet.

c)
  • View: Csak interaktív elemeket tartalmazó objektumok, mint gombok és szövegmezők.

  • ViewGroup: Az összes vizuális elem elhelyezésére szolgáló objektumok, de nem tartalmaznak alárendelt View-kat.

  • Layout: Csak a háttérszolgáltatások és logikai folyamatok szervezésére használatos.

d)
  • View: Csak a felhasználói interakciók kezelésére szolgál, mint az animációk.

  • ViewGroup: Minden egyes alkalmazás komponensének kezelése.

  • Layout: Az XML fájlok, de nem az UI elrendezését határozzák meg, hanem az alkalmazás működését.

36.

Mi a View binding szerepe az Android alkalmazásban?

a)

A View binding csak a ViewGroup-ok, például LinearLayout és RelativeLayout kezelésére használható, nem az egyes View-khoz.

b)

A View binding lehetővé teszi, hogy a felhasználói felület elemeit dinamikusan módosítsuk kód futás közben, de nem biztosít biztonságos hivatkozást az XML-ben definiált View-kra.

c)

Egy eszköz, amely biztosítja a biztonságos és közvetlen hivatkozást az XML-ben definiált View-kra a kódban.

d)

A View binding kizárólag a háttérszolgáltatások kezelésére szolgál, és nem kapcsolódik a felhasználói felülethez.

37.

Mi a Fragment szerepe az Android alkalmazásban?

a)

A Fragmentek kizárólag egyetlen Activity-n belül használhatók, és nem rendelkeznek saját layoutokkal.

b)

A Fragmentek nem rendelkeznek saját életciklussal és nem használhatók különböző aktivitásokban.

c)

A Fragmentek kizárólag háttérszolgáltatásokat kezelnek, és nem tartalmaznak felhasználói felületet.

d)

Újrafelhasználható UI komponensek, amelyek saját életciklussal, bemenetekkel és layoutokkal rendelkeznek.

38.

Mi a Navigáció szerepe az Android alkalmazásban?

a)

A Navigation component segít az alkalmazások navigációs logikájának kezelésében, a Navigation graph segítségével definiálva az egyes navigációs műveleteket.

b)

A Navigation component csak a háttérszolgáltatások kezelésére szolgál, és nem kapcsolódik a felhasználói felület navigációs kezeléséhez.

c)

A Navigation component kizárólag a statikus navigációs elemek kezelésére szolgál, nem kezeli dinamikusan az alkalmazás logikáját.

d)

A Navigation graph nem szükséges az alkalmazás navigációjához, és a navigációs műveletek kézi vezérlése elegendő.

39.

Mi a RecyclerView szerepe az Android alkalmazásban?

a)

A RecyclerView nem képes újrahasznosítani az elemeket, és minden elemhez új példányokat hoz létre a memóriahatékonyság érdekében.

b)

A RecyclerView kizárólag szöveges adatok megjelenítésére alkalmas, nem támogat egyéb típusú adatokat, mint például képek.

c)

A RecyclerView egy statikus lista megjelenítésére szolgáló eszköz, amely nem képes kezelni nagy adatokat.

d)

Egy rugalmas widget az elemek listájának megjelenítésére, amely hatékonyan kezeli a nagy adatkészleteket.

40.

Miért fontos az Android szálkezelés és hogyan segít elkerülni a blokkolt UI szálat?

a)

A hosszú műveleteket a UI szálon kell végrehajtani, mivel a külön szálak használata lassítja az alkalmazást.

b)

Fontos, hogy a hosszú műveleteket, mint például hálózati hívásokat, külön szálakon kezeljük, hogy ne blokkoljuk a UI szálat.

c)

A szálkezelés nem szükséges az Android alkalmazásokban, mivel a rendszer automatikusan kezeli a hosszú műveleteket a háttérben.

d)

A hálózati műveletek nem igényelnek külön szálat, mivel azok automatikusan gyorsan végrehajtódnak az UI szálon.

41.

Mi a Kotlin korutinok szerepe az aszinkron programozásban és hogyan segítik azok a hatékony műveletek kezelését?

a)

A Kotlin korutinok nem támogatják az aszinkron műveletek kezelését, és a szálak kezelésére van szükség a párhuzamos műveletek végrehajtásához.

b)

A Kotlin korutinok lehetővé teszik az aszinkron műveletek egyszerűbb kezelését a suspend kulcsszóval, Dispatchers-el, amely meghatározza a művelet végrehajtásának kontextusát, és a scope-okkal, amelyek meghatározzák a korutinok élettartamát.

c)

A Kotlin korutinok csak szinkron műveletekhez használhatók, mivel nem támogatják az aszinkron programozást.

  • A korutinok kifejezetten az aszinkron műveletek kezelésére lettek tervezve.

d)

A Kotlin korutinok nem rendelkeznek Dispatchers-el vagy scope-okkal, mivel ezek nem szükségesek az aszinkron műveletekhez.

  • A korutinok Dispatchers-ekkel és scope-okkal dolgoznak a műveletek hatékony és kontrollált végrehajtásához.

42.

Mi a ViewModel szerepe?

a)

Egy olyan osztály, amely adatokat tárol és kezel az UI-hoz kapcsolódóan, és túléli a konfigurációs változásokat, mint például a képernyő elforgatását.

b)

A ViewModel kizárólag a felhasználói felület megjelenítésére szolgál, és nem tárol adatokat.

c)

A ViewModel elveszíti az adatokat, ha a képernyő elforgatásra kerül, és újra kell inicializálni.

d)

A ViewModel nem használható együtt a LiveData-val, mivel azok nem kompatibilisek egymással.

  • A ViewModel és a LiveData gyakran együtt használatosak az adatkezelés és UI frissítések hatékony kezelésére.

43.

LiveData szerepe Androidban?

a)

Egy adat tartó osztály, amely figyeli az adatváltozásokat, lehetővé téve az UI számára, hogy reagáljon ezekre.

b)

A LiveData kizárólag statikus adatokat tárol, és nem frissíti az UI-t az adatok változása esetén.

c)

A LiveData nem képes figyelni az adatokat, csak egyszeri adatlekérést biztosít.

  • A LiveData folyamatosan figyeli az adatváltozásokat és reagál azokra.

d)

A LiveData nem működik jól a ViewModel-lel, mivel nem képes adatokat megosztani az UI és a ViewModel között.

  • A LiveData és a ViewModel gyakran együtt használatosak, mivel lehetővé teszik az adatkezelés és UI frissítések szétválasztását.

44.

Mire szolgál a perzisztencia?

a)

A perzisztencia csak a hálózaton keresztüli adatátvitelt biztosít, nem tárol adatokat lokálisan.

b)

Kizárólag az alkalmazás indítási beállításait tárolja, nem a felhasználói adatokat.

c)

Adatok tárolása a lokális adattárolóban, mint például SharedPreferences vagy adatbázis.

d)

Nem biztosít hosszú távú adatmegőrzést, mivel az adatok csak az alkalmazás életciklusáig érhetők el.

45.

Mi a Room library szerepe az Android alkalmazásban?

a)

Egy absztrakciós réteg az SQLite adatbázis felett, amely könnyebb adatkezelést tesz lehetővé ORM (Object-Relational Mapping) segítségével.

b)

Kizárólag a fájlok kezelésére használható, nem kapcsolódik adatbázisokhoz.

  • A Room egy adatbázis-kezelési könyvtár, nem fájlok kezelésére való.

c)

Nem támogatja az SQLite adatbázisokat, és kizárólag a dokumentum alapú tárolást használja.

  • A Room kifejezetten az SQLite adatbázisokkal dolgozik.

d)

A Room library nem használ ORM-t, hanem manuálisan kell lekérdezni az adatokat.

  • A Room automatikusan használ ORM-et, hogy egyszerűsítse az adatbázis kezelését.

46.

Mi az a REST?

a)

A REST kizárólag szinkron kommunikációt támogat és nem alkalmazható aszinkron kérésekhez.

  • A REST támogatja az állapotmentes kommunikációt, és lehet szinkron vagy aszinkron.

b)

Egy architekturális stílus webes szolgáltatásokhoz, amely kommunikációt tesz lehetővé kliens és szerver között állapotmentes kérések és válaszok segítségével.

c)

A REST kifejezetten webes szolgáltatások közötti adatcserét tesz lehetővé.

d)

Nem használ HTTP-t, és nem alkalmaz HTTP metódusokat a kérésekhez.

  • A REST HTTP-t és annak metódusait használja, mint például GET, POST, PUT, DELETE.

47.

Melyik állítás igaz a Retrofit-tal kapcsolatban?

a)

A Retrofit nem támogatja a REST API-kat, és nem biztosít eszközöket azok kezelésére.

b)

Kizárólag egyetlen HTTP metódust támogat, és nem használható más HTTP műveletekhez.

c)

Nem biztosít típusbiztos válaszokat, és csak szöveges adatokat képes kezelni.

  • A Retrofit típusbiztos válaszokat biztosít, és különféle adatokat képes kezelni, például JSON-t.

d)

Egy típusbiztos HTTP kliens az Android és Java számára, amely a REST API-kkal való kommunikációt egyszerűsíti.

48.

Mi a szerepe az Android jogosultságoknak (permissions)?

a)

Az Android jogosultságok nem szükségesek az érzékeny adatokhoz való hozzáféréshez, mivel azokat alapértelmezetten elérhetők.

b)

A jogosultságokat nem kell kérni az alkalmazás telepítésekor, hanem csak futás közben.

c)

Az Android rendszer megköveteli, hogy az alkalmazások kéréseket tegyenek bizonyos jogosultságokra az érzékeny adatokhoz vagy rendszerfunkciókhoz való hozzáférés előtt.

d)

A jogosultságok csak a rendszerbeállítások módosításához szükségesek, nem kapcsolódnak a felhasználói adatokhoz.