K-INFO
HU
EN
Belépés
Tantárgy » BMEVIAUBXAV080-00

Haladó Android fejlesztés

Advanced Android Development
A tantárgyleírás hatályossága
Hatályosság kezdete:
Hatályosság vége:
Tantárgy neve (magyarul, angolul)
Haladó Android fejlesztés
Advanced Android Development
Tantárgykód BMEVIAUBXAV080-00
Tantárgyjelleg
Képzési szint
Kurzustípusok és óraszámok (heti/féléves)
Kurzustípus elmélet gyakorlat laboratóriumi gyakorlat
óraszám (heti) 2 0 2
jelleg (kapcsolt/önálló) kapcsolt
Tanulmányi teljesítmény/értékelés típusa vizsga
Tantárgy kreditértéke 4
Tantárgyfelelős
DR. Ekler Péter
beosztás: egyetemi docens
Tantárgyat gondozó oktatási szervezeti egység
Kar
Tantárgy weboldala
Tantárgy elsődleges mintatantervi jellege
Közvetlen előkövetelmények – Erős előkövetelmény nincs
Közvetlen előkövetelmények – Gyenge előkövetelmény nincs
Közvetlen előkövetelmények – Párhuzamos előkövetelmény nincs
Közvetlen előkövetelmények – Mérföldkő előkövetelmény nincs
Közvetlen előkövetelmények – Kizáró feltétel nincs

Célkitűzés

Tantárgyprogram

Hét

Előadás anyaga

1.

Felhasználói felület. Az előadás keretében bemutatjuk a felhasználói felület tervezésének legmodernebb módszereit Jetpack Compose használatával. Összetett felületek tervezése a képernyőméret és a stílus szem előtt tartásával, erőforrások hatékony használatával.

2.

Animációk és játékfejlesztés. Az előadás témája animációk készítése a Jetpack Compose technológia által nyújtott lehetőségekkel. A Composable objektumok egyes attribútumainak animálási lehetőségei, valamint a komplexebb erőforrás alapú animáció módszerei.

3.

Kódminőség. Az előadás súlyponti témája a tervezett rendszer arcitektúrájának megfelelő kialakítása és a Clean Architecture szem előtt tartása. Bemutatásra kerülnek a kódminőség javítását segítő módszerek és külső könyvtárak.

4.

Gradle. Az előadás keretében bemutatjuk a komplexebb alkalmazások struktúrális felépítését, a komponensek szerepét, valamint a több modulból álló alkalmazások készítési módját. Az előadás fő témája az Android fordítási mechanizmusa a Gradle rendszerrel. Áttekintésre kerülnek a Gradle beállítási lehetőségei és a fordítási folyamat lényegesebb pontjai, érdekességei, összefüggései.

5.

Gyakran használt külső könyvtárak. Az előadás célja, hogy a hallgatók megismerkedhessenek azokkal az Android platformon használatos külső könytárakkal, amelyek használata az iparban már sztenderdnek számít.  További cél a külső integrációs lehetőségek vizsgálata is, valamint PDF készítés folyamata.

6.

Térkép. Az előadáson egyrészt megismerkedünk a Google Play egyes szolgáltatásaival, másrészt pedig a helyfüggő Android alkalmazások készítésével foglalkozunk. Áttekintjük a térkép és overlay megjelenítési technikák használati lehetőségeit.

7.

Camera API. Médiatartalmak kezelése, a készülék elő és hátoldali kameráinak használata. Audió és videófájlok készítése és lejátszása. Az Android Camera API használati lehetőségeinek áttekintése.

8.

Egyéb Android eszközök. Az előadáson ismertetjük az Android rendszer képességeit és lehetőségeit a nem klasszikusan vett mobil készülékeken. Áttekintjük a fejlesztés és a kommunikáció lépéseit az Android TV, Auto és Wear platformok esetén.

9.

Mesterséges Intelligencia. Az előadás fő célja az Androidos környezetben elérhető mesterséges intelligencia és gépi tanulási lehetőségek ismertetése. Bemutatásra kerülnek a fontosabb könyvtárak, úgy mint az MLKit és az AICore.

10.

Biztonság. Az előadáson részletesen ismertetésre kerülnek az Android fejlesztéssel és alkalmazásokkal kapcsolatos biztonsági kérdések. Áttekintjük, hogy milyen módszerek léteznek a felhasználó személyes adatainak titkosítására, illetve a kódunknak a megvédésére.

11.

Hálózat. Az előadás keretében áttekintjük a fontosabb hálózati kapcsolódási lehetőségeket, külön kiemelve az Android platformon használatos tokenek és tanúsítványok kezelésének módszereit.

12.

Tesztelés. Az előadás központi tematikája a kód jóságának ellenőrzése, azaz a tesztelés. Ismertetésre kerülnek a fontosabb UI és Unit tesztelési lehetőségek, módszerek és könyvtárak.

13.

CI/CD. Az előadáson áttekintjük az Android alkalmazások fejlesztése közben elérhető DI/CD rendszereket, és tipikus konfigurációjukat.

14.

App kiadás. Az előadás az elkészült alkalmazás kiadási folyamatára koncentrál. Áttekintjük a teljes folyamatot: az apk elkészítését, az alkalmazás terjesztését, béta és A/B tesztelési lehetőségeket.

 

 

Laborok:

A laborok az előadások tematikáját követik és lehetőséget biztosítanak az ott elhangzottak gyakorlására. 

A tárgy keretében a hallgatók megismerkednek a komplexebb Android fejlesztés lehetőségeivel és olyan haladó technológiákkal, mellyel nagyobb Android alap rendszerek, osztálykönyvtárak, vagy komplex, moduláris megoldások fejleszthetők. A tárgy célja, hogy elsajátítása után a hallgatók olyan piacképes tudásra tegyenek szert, mellyel már nem csak kezdő Android fejlesztőként tudnak elhelyezkedni a piacon, hanem architekti tudással is rendelkezzenek és átlássák a platform mélységeit és klasszikus mobil alkalmazás fejlesztésen túli lehetőségeket. A tárgy kitér a tesztelésre, automatizálási folyamatokra, megoldás élesítésre, mesterséges intelligencia alapú megoldásokra és integrációs lehetőségekre. Ezen felül a tárgy keretében bemutatásra kerülnek a legújabb Androidos technológiák és a Kotlin nyelv, valamint a Compose keretrendszer szélesebb felhasználási lehetőségei is. A tárgy kitér továbbá a komplexebb hálózati kommunikációs technológiákra, biztonsági kérdésekre is.

Tanulmányi eredmények

Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:

Tudás

Nincsenek rögzített tanulási eredmények.

Képességek

Nincsenek rögzített tanulási eredmények.

Attitűd

Nincsenek rögzített tanulási eredmények.

Autonómia és felelősség

Nincsenek rögzített tanulási eredmények.

Oktatási módszertan

Gyakorlatias, alkalmazásközpontú előadások keretében. Kijelölt írásos anyag elsajátítása. A tárgyhoz online/otthon elvégezhető laborok tartoznak, melyeket a laborvezetők ellenőriznek.

Tanulástámogató anyagok

Online források
A tárgy weboldalán elhelyezett írásos anyagok. 

A tantárgy teljesítéséhez ajánlott előzetes ismeretek

Tudás típusú kompetenciák
(azon előzetes ismeretek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
Objektumorientált programozási ismeretek, Java, Kotlin, Android platform alapok Javasolt előtte meghallgatni az Android alapú szoftverfejlesztés vagy legalább a Mobil- és Webes szoftverek tárgyak valamelyikét.
Képesség típusú kompetenciák
(azon előzetes képességek és készségek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
nincs
Ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák
(azon ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák összessége, amelyek jelentősen hozzájárulnak a tantárgy eredményes teljesítéséhez)
Objektumorientált programozási ismeretek, Java, Kotlin, Android platform alapok Javasolt előtte meghallgatni az Android alapú szoftverfejlesztés vagy legalább a Mobil- és Webes szoftverek tárgyak valamelyikét.
Általános szabályok
Követelmények: A szorgalmi időszakban: Félév közben egy ZH megírása kötelező, valamint a laborok 70%-ak teljesítése legalább elégséges érdemjeggyel. Emellett követelmény egy írásbeli vizsga. Az aláírás feltétele: - ZH-n legalább 40% elérése. - Laborok 70%-ának legalább elégségesre való teljesítése. - Vizsgára kapható pontszám legalább 40%-nak elérése. Az érdemjegy a ZH pontszámból, a laborok pontszámából és vizsga pontszámából tevődik össze, 30%-30%-40% súlyokkal. Pótlási lehetőségek: A zárthelyi, továbbá 1 labor pótolható a pótlási héten.
Teljesítményértékelési módszerek
Szorgalmi időszakban végzett teljesítményértékelések részletes leírása

Nincs megadva részletes értékelés.

Szorgalmi időszakban végzett teljesítményértékelések részaránya

Nincs megadva részarány.

Vizsgaidőszakban végzett teljesítményértékelések részletes leírása

Nincs megadva részletes értékelés.

Vizsgarészek részaránya

Nincs megadva részarány.

Érdemjegy megállapítása

Nincs megadva érdemjegy határ.

Jelenléti és részvételi követelmények

Nincs megadva jelenléti követelmény.

Javítás, ismétlés és pótlás különös szabályai

Nincs megadva.

Rövid leírás

Nincs megadva.

Részletes leírás

Nincs megadva.

Ajánlott tantárgyak
A tárgy felvétele előtt ajánlott felvenni az Android alapú szoftverfejlesztés (VIAUAC04) tárgyat, vagy a Mobil- és webes szoftverek (VIAUAC00) tárgyat ha valaki azt követően is foglalkozott Android technológiával.
A tantárgy elvégzéséhez szükséges tanulmányi munka

Nincs megadva munkaidő bontás.

Tantárgykövetelmények hatályossága
Tantárgykövetelmények hatályosságának kezdete:
Tantárgykövetelmények hatályosságának vége:
Tantervi elhelyezés

Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.