„Kliensalkalmazások” változatai közötti eltérés

Órák anyagának hozzáadása (a 11. hétig); segédanyagok hozzáadása
Android: Órák anyagának hozzáadása (a 13. hétig); segédanyagok hozzáadása
76. sor: 76. sor:
====Android====  
====Android====  
*8. hét: ''szünet''
*8. hét: ''szünet''
*[[Média:Kliens ea 09 20240408.pdf|9. hét (Gazdi László)]]: alapok, Java, XML alapú UI, eseménykezelés, Kotlin; <code>Activity</code>, <code>Service</code>, content provider, <code>BroadcastReceiver</code>; manifest, erőforrások; compiler (Dalvik bytecode), <code>.apk</code>; activity lifecycle (callback függvények, állapot mentése, váltás)
*[[Média:Kliens ea 09 20240408.pdf|9. hét (Gazdi László)]]: alapok, Java, XML alapú UI, eseménykezelés, Kotlin; '''<code>Activity</code>, <code>Service</code>, content provider, <code>BroadcastReceiver</code>;''' manifest, erőforrások; compiler (Dalvik bytecode), <code>.apk</code>; '''activity lifecycle''' (callback függvények, állapot mentése, váltás)
**Megjegyzések a 16. diához:
**Megjegyzések a 16. diához:
***Az OS X már macOS.
***Az OS X már macOS.
83. sor: 83. sor:
*[[Média:Kliens ea 10 20240415.pdf|10. hét (Gazdi László)]]: <code>Activity</code>: back stack, vezérlés; <code>Intent</code>: típusai, részei, explicit / implicit, extras, képességek, filter; <code>startActivityForResult()</code>, <code>onActivityResult()</code>; erőforrások (i18n); UI: <code>viewBinding</code>; dpi, dp, sp; <code>LinearLayout</code>, <code>RelativeLayout</code>, <code>ConstraintLayout</code>; padding és margin
*[[Média:Kliens ea 10 20240415.pdf|10. hét (Gazdi László)]]: <code>Activity</code>: back stack, vezérlés; <code>Intent</code>: típusai, részei, explicit / implicit, extras, képességek, filter; <code>startActivityForResult()</code>, <code>onActivityResult()</code>; erőforrások (i18n); UI: <code>viewBinding</code>; dpi, dp, sp; <code>LinearLayout</code>, <code>RelativeLayout</code>, <code>ConstraintLayout</code>; padding és margin
*[[Média:Kliens ea 11 20240422.pdf|11. hét (Pásztor Dániel)]]: <code>View</code>, <code>getLayoutInflater()</code>, validáció, <code>Menu</code>, <code>ActionBar</code>, <code>Toolbar</code>; <code>PopupWindow</code>, <code>AlertDialog</code>, <code>Snackbar</code>; <code>style</code>, <code>Theme</code>; grafikák, animációk
*[[Média:Kliens ea 11 20240422.pdf|11. hét (Pásztor Dániel)]]: <code>View</code>, <code>getLayoutInflater()</code>, validáció, <code>Menu</code>, <code>ActionBar</code>, <code>Toolbar</code>; <code>PopupWindow</code>, <code>AlertDialog</code>, <code>Snackbar</code>; <code>style</code>, <code>Theme</code>; grafikák, animációk
*[[Média:Kliens ea 12 20240429.pdf|12. hét (Gazdi László)]]: Fragment, RecyclerView, Persistence
*[[Média:Kliens ea 12 20240429.pdf|12. hét (Gazdi László)]]: <code>Fragment</code>: életciklus, csatolása (statikusan és dinamikusan), <code>FragmentManager</code>, <code>FragmentTransaction</code>, kommunikáció, <code>DialogFragment</code>; <code>navigation</code>: component, graph; <code>RecyclerView</code>: <code>ViewHolder</code>, <code>Adapter</code>; perzisztens adattárolás: <code>(Shared)Preferences</code>, SQLite, ORM, <code>room</code>, javasolt architektúra; fájlkezelés: internal / external storage, statikus fájlok, nyilvános lemezterület; BaaS: Firebase; content provider: elérése (<code>CONTENT_URI</code>), műveletek, engedélyek, <code>Cursor</code>, <code>ContentResolver</code>, CRUD
*[[Média:Kliens ea 13 20240506.pdf|13. hét (Gazdi László)]]: Compose
**Megjegyzés az 51. diához: a <code>BLOB</code> is egy támogatott adattípus.
*[[Média:Kliens ea 13 20240506.pdf|13. hét (Gazdi László)]]: Jetpack Compose: <code>@Composable</code> '''(5 szabálya),''' <code>@Preview</code>, layoutok (<code>Column</code>, <code>Row</code>, <code>Box</code>), weight, <code>Alignment</code> és <code>Arrangement</code>, <code>Modifier</code>, <code>Scaffold</code>, <code>TextField</code>, Material Design; mappastruktúra, composition / initial composition / recomposition, adatok átadása; <code>ViewModel</code>: MVVM, MVI; navigation graph: funkciók, paraméterek, konstansok; dialógusok: <code>AlertDialog</code>; listák: lazy loading; szálak és coroutine-ok: suspending functions; flow
*[[Média:Kliens ea 14 20240513.pdf|14. hét (Gazdi László)]]: NFC, Bluetooth, Http, Retrofit, BR, Service, Permissions
*[[Média:Kliens ea 14 20240513.pdf|14. hét (Gazdi László)]]: NFC, Bluetooth, Http, Retrofit, BR, Service, Permissions
*15. hét: ''szünet''
*15. hét: ''szünet''
153. sor: 154. sor:
*****Hogyan lehet elkészíteni és kezelni egy menüt?
*****Hogyan lehet elkészíteni és kezelni egy menüt?
*****Hogyan adható meg, hogy egy stílus az egész alkalmazásra érvényes legyen?
*****Hogyan adható meg, hogy egy stílus az egész alkalmazásra érvényes legyen?
****12. hét
*****Mire használhatók a <code>Fragment</code>-ek?
*****Hogyan csatolhatók a <code>Fragment</code>-ek?
*****Hogyan kommunikálhatnak a <code>Fragment</code>-ek egymással?
*****Mire jó a <code>RecyclerView</code>? Mik az előnyei?
*****Milyen adattárolási lehetőségeket ismer?
*****Mire használható a <code>SharedPreferences</code>?
*****Hogyan támogatja az Android az adatok adatbázisban tárolását?
*****Sorolja fel az ORM alapelveit!
*****Milyen lehetőségek vannak a fájlrendszerben való adattárolásra?
*****Mire jó egy content provider?
*****Milyen formában adja vissza az adatokat egy content provider?
****13. hét
*****Mik a Jetpack Compose használatának előnyei?
*****Milyen Jetpack Compose layoutokat ismer? Jellemezze őket!
*****Mik a Jetpack Compose alapelvei?
*****Miért hatékony módszer a recomposition?
*****Vázolja fel, milyen Jetpack Compose-architektúrákat ismer!
*****Mire használható a lazy loading?
*****Mik azok a coroutine-ok?
*****Mire való a flow, és hogyan használjuk?
**Vizsga
**Vizsga
***Web
***Web
A lap eredeti címe: „https://vik.wiki/Kliensalkalmazások