Kódolós feladatok

Vázolja fel a képen látható nézet kódját Jetpack Compose segítségével

@Composable
fun loginPage(
modifier: Modifier = Modifier,
) {
var emailAddress = "klaf@aut.bme.hu"

Column(
modifier = modifier.fillMaxSize(),
horizontalAlignment = Alignment.CenterHorizontally,
) {
TextField(
placeholder = "Email",
value = emailAddress,
)
HorizontalDivider()
TextField(
placeholder = "Password",
value = emailAddress,
)
HorizontalDivider()
Spacer()
Button() {
Text(text = "Login")
}
}
}

Gyűtűk urta cucc

<RelativeLayout
android:background="#000000">

<ImageView
android:src="@drawable/one_ring_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:padding="16dp" />

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_centerHorizontal="true"
android:background="#FFFFFF">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="J. R. R. Tolkien"
android:textColor="#000000"
android:textSize="24sp" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="The Lord of the Rings"
android:textColor="#000000"
android:textSize="24sp" />

</LinearLayout>

</RelativeLayout>

Kliensalkalmazások kvíz – helyes válaszok

Melyek az Android-komponensek?

Az androidos SDK fizetős.

hamis

Angularben milyen szintaxissal adjuk meg a felületeket?

Angularben milyen szintaxissal adjuk meg a logikát?

Androidban nem készíthető saját View, csak a beépítettek használhatóak.

hamis

Egy SPA használata közben nem cserélődik le a teljes DOM, csak annak egyes részei.

igaz

Az Angular service-ek csak statikus metódusokat tartalmazhatnak.

hamis

A CSS-szabályokat a HTML-forráskódban található <style> tageken belülre, vagy a HTML-fájllal azonos könyvtárban lévő .css fájlba kell írni.

hamis

Egy androidos alkalmazás manifestjében csak az Activity-komponenseket kell felsorolni.

hamis

Az Ajax-hívások blokkolják a végrehajtó szálat mindaddig, amíg véget nem ér a meghívott művelet.

hamis

Mit kell csinálni androidos engedélyek kezelésekor?

Melyik a legerősebb prioritású stílus CSS-ben?

Az alábbiak közül mely JS arrow functionök helyesek?

Mire való az Angular @Output dekorátor?

Androidban mit kell tenni ahhoz, hogy egy adott broadcast intentet megkapjon az alkalmazásunk?

Mire való egy @media screen and (min-width: 1100px) CSS-query?

Jelez-e hibát a TS compiler, ha egy any típusú objektumnak olyan tagváltozóját kérjük le, ami nem létezik?

nem

Egy Android alkalmazás manifestjében csak az esetlegesen veszélyes engedélyeket kell felsorolni.

hamis

Mit kell tenni ahhoz, hogy használhassuk a Jetpack Compose viewBinding-ot?

Egy Angular-komponenshez hány nézet tartozhat?

Egy szabványos HTML-dokumentum <html> eleme csak a <header>, <body> és <footer> elemeket tartalmazhatja.

hamis

Egy promise eredménye, ha sikeres volt az Ajax-hívás: true; egyébként: false.

hamis

A confirm() JS-függvény aszinkron.

hamis

Mi igaz az Angular pipe-okra?

Egy Android Activity-hez csak egy SharedPreferences tartozhat.

hamis

Mely(ek) a @Composable függvények szabálya(i)?

Angularben mik segítik a felelősségek szétválasztását (SoC)?

Az Android Linux kernel alapú.

igaz

Androidban a .dex compiler Dalvik bytecode-ot állít elő.

igaz

Az Android-verziók kódneve általában egy édesség.

igaz

Csak okostelefonokon fut Android.

hamis

Az Android nyílt forráskódú.

igaz

Androidos alkalmazást csak telefon segítségével lehet debugolni.

hamis

C++-ban is lehet írni androidos alkalmazásokat.

igaz

Androidos eseménykezelőt csak layoutban lehet megadni.

hamis

Egy Android-alkalmazásban legalább egy Activity-re szükség van.

hamis

Lehet készíteni UI nélküli androidos alkalmazást is.

igaz

Egy androidos ContentProvider egy webszerveren tárolt adatokat is elérhetővé tud tenni.

igaz

Egy androidos alkalmazás manifestje csak egy Service-komponenst tartalmazhat.

hamis

Egy androidos alkalmazás manifestjében az összes komponenst fel kell sorolni – kivéve a dinamikusan regisztrálható BroadcastReceiver-eket.

igaz

Egy androidos alkalmazás manifestjében lehet XML- és Java-kód is.

hamis

Egy androidos alkalmazásban csak egy erőforrásminősítőt használhatunk.

igaz

Egy androidos alkalmazásban erőforrásminősítőkkel is meg lehet adni egy elforgatott képernyő esetén használatos egyedi témát.

igaz

Androidban az R.java állományt kézzel kell karbantartani.

hamis

Az .apk-ban található forráskód visszafejthető.

igaz

Melyik igaz az Activity életciklusfüggvényeire?

Mi Androidban az explicit Intent?

Az Android automatikusan átméretez egy képet, ha nincs megfelelően illeszkedő változata.

igaz

Az Android támogatja a sűrűségfüggetlen megjelenítést.

igaz

Hány dpi-s kijelzőn felel meg 1.dp 1.px-nek?

Egy androidos alkalmazásban pixelben is megadhatóak a méretek.

igaz

Egy androidos alkalmazás menüelemeit kódból kell felvenni.

hamis

Egy androidos alkalmazásban a View-k méretét mindig pixelben kell megadni.

hamis

Androidban a szövegek méretezéséhez dp helyett sp-t használunk.

igaz

Androidban a Toolbar támogatja a menüerőforrásokat.

igaz

Androidban egyszerű alakzatok megjelenítése csak képi erőforrással lehetséges.

hamis

Androidban nem készíthető saját stílus, csak a beépítettek használhatóak.

hamis

Androidban a gombok színét egyszerűen állíthatjuk az állapotuktól függő selectorokkal.

igaz

Egy androidos Activity dialógus formájában is megjelenhet.

igaz

Az androidos Fragment-ek saját életciklusfüggvényekkel rendelkeznek.

igaz

Az androidos Fragment-ek dialógusként is megjeleníthetőek.

igaz

Az androidos Fragment-ek dinamikusan és statikusan is csatolhatóak.

igaz

Az androidos Fragment-ek a tabletek felhasználói felületének kialakításakor különösen hasznosak.

igaz

Az androidos RecyclerView csak egymás alatti elrendezést támogat.

hamis

Az androidos RecyclerView kikényszeríti a ViewHolder mintát.

igaz

Az androidos RecyclerView támogatja a scrollozást.

igaz

Az androidos RecyclerView használatakor el kell készítenünk egy sor layoutját.

igaz

Androidban van beépített adatbáziskezelő.

igaz

Androidban az adatbázisműveleteket mindig aszinkron módon kell végezni.

hamis

Az Android tartalmaz beépített ORM-réteget.

igaz

Androidban az external storage-ba mentett fájljaink mindig elérhetőek.

hamis

Az androidos internal storage-ban lévő gyorsítótárba mentett fájljaink korlátlan ideig elérhetőek.

hamis

Androidban a háttértár eléréséhez engedély szükséges.

igaz

Androidban a saját statikus fájljainkat "kézzel" kell átmásolnunk az internal storage-ba.

hamis

Az androidos ContentProvider-ekben elérhető a teljes CRUD-funkcionalitás.

igaz

Az androidos ContentProvider-ekben csak egyszerű, strukturálatlan adatokat tudunk megosztani.

hamis

Androidban nem tudunk saját ContentProvider-t írni, csak a beépítettek használhatóak.

hamis

Az androidos ContentProvider-ek használatával másik alkalmazásból is elérhetőek az adataink.

igaz

Jetpack Compose-ban könnyű a UI frissítése az alkalmazás állapota alapján.

igaz

Jetpack Compose-ban a UI elemei kódból készíthetőek.

igaz

A @Composable függvények egymásba ágyazhatóak.

igaz

Jetpack Compose-ban minden osztályhoz tartozik egy XML layout.

hamis

Jetpack Compose-ban három fő layout van.

igaz

Jetpack Compose-ban Row esetén a verticalArrangement argumentum használatos a függőleges elrendezéshez.

igaz

Jetpack Compose-ban a Row és a Column is súlyozható.

igaz

Jetpack Compose-ban a Modifier-ek az elrendezés testreszabásához használhatóak.

hamis

Jetpack Compose-ban a recomposition mindig a teljes felületet újrarajzolja.

hamis

Jetpack Compose-ban az aktuális állapot mindig az Activity-ben van tárolva.

hamis

Egy @Composable függvényben ciklus is használható az elemek felületre helyezéséhez.

igaz

Egy @Composable függvény argumentumai futás közben is változhatnak.

hamis

A @Composable függvények szekvenciálisan hajthatóak végre.

hamis

A @Composable függvények bármilyen sorrendben végrehajthatóak.

igaz

A recomposition minden @Composable függvényt és lambdát lefuttat.

hamis

A @Composable függvények recompositionje leállítható menet közben.

igaz

Jetpack Compose-ban a navigációhoz FragmentManager-t használunk

hamis

Jetpack Compose-ban egy coroutine mindig több threaden fut.

hamis

Mire való a lazy loading Jetpack Compose-ban?

Egy androidos projektben nem keveredhet a View és a Jetpack Compose framework.

hamis

Jetpack Compose-ban a CoroutineScope egy vagy több kapcsolódó coroutine-t kezel.

igaz

Az Android támogatja a Bluetooth LE-t.

igaz

Androidban a webes eléréshez engedély kell.

igaz

A Retrofit androidos library automatikusan végzi a JSON objektumokká konvertálását.

igaz

Hogyan kell végezni Androidban egy hálózati hívást?

Kifejtősök

function logged(originalMethod: any) {
    try {
        console.log("Calculation started...");
        return (...args: any[]) => originalMethod.call(this, ...args);
    }
    finally {
        console.log("...finished!");
    }
}

class Calculator {
    @logged
    add(a: number, b: number) {
        return a + b;
    }
}

const calculator = new Calculator();
calculator.add(1, 9);

Mik az overload szignatúrák? Hogyan kell őket használni?

function makeDate(epoch: number): Date;
function makeDate(year: number, month: number, day: number): Date;
function makeDate(epochOrYear: number, month?: number, day?: number): Date {
  if (month !== undefined && day !== undefined) {
    return new Date(epochOrYear, month-1, day);
  } else {
    return new Date(epochOrYear);
  }
}
const dateFromEpoch = makeDate(1719082884000);
const dateFromDate = makeDate(2024, 6, 22);
// Az első két sor overload szignatúra, a harmadik az implementációs szignatúra.

Mire való a getElementById függvény? Hogyan lehet elérni?

<button id="disablerButton">Disable the other button</button>
<button id="buttonToDisable">This button will be disabled</button>

<script>
function disableButton(buttonId) {
    const button = document.getElementById(buttonId);
    button.disabled = true;
}
disablerButton.addEventListener("click", () => disableButton("buttonToDisable"));
</script>

Mi a különbség a block és inline típusú HTML-elemek között?

Mire valóak az űrlapok?

Mire való egy űrlap elemeiben a name attribútum?

Mire való egy .d.ts kiterjesztésű fájl?

Milyen előnyei vannak a dependency injection használatának?

Mire szolgál az Angular ngIf direktívája?

<div *ngIf="train">
    <p>
        This is the {{train.departureTime}} {{train.type}} service to {{train.destination}}.
    </p>
</div>