Programování pro operační systém Android
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
BI-AND.21 | KZ | 4 | 3C | česky |
- Garant předmětu:
- Marek Kodr
- Přednášející:
- Cvičící:
- Marek Kodr, Jan Mottl, Jan Vepřek
- Předmět zajišťuje:
- katedra softwarového inženýrství
- Anotace:
-
Předmět uvede studenty do programování pro mobilní zařízení postavené na operačním systému Android. Studenti se seznámí s jeho architekturou, SDK a naučí se vytvářet mobilní aplikace s pomocí Android API včetně návrhu uživatelského rozhraní.
- Požadavky:
-
Doporučené:
1. OOP
2. Programování v jazyku Kotlin (BI-KOT)
- Osnova přednášek:
-
1. Základy Androidu, Kotlinu, Android Studia, Gradle
- Podrobně Kotlin
- Struktura projektu základ
2. UI vrstva - Material design, Resources, Compose
- Základní komponenty a layouty
- Column,Row,Box
- Modifier
- Preview
3. Aktivity/Fragmenty
- Lifecycle
- Compose setContent
4. Compose
- Remember, State
- Custom view
- Seznamy
- Navigace, Argumenty
5. Compose
- ViewModel
- Stateful layout
- Recomposition
- Coroutines + Flow, launch + dispatcher
6. Architektura, základ
- MVVM
- Screen
- ViewModel
- Repo
- Zdroje dat, lokální
- DI
7. Networking
- REST API Intro
- OkHttp, Retrofit, Moshi
- Logování
- Network na Domain + Unit testy
8. Local storage, Room, Shared Prefs/Data store
9. Permissions, WorkManager, Notifikace
- Nejčastější chyby v úkolech
10. Release aplikace - Certifikáty, Google Play Store, Flavours + Build Variants
11. Firebase - App distr, Crashlytics, Firestore DB, Analytics, Cloud messaging
12. XML UI
13. Konzultace
- Osnova cvičení:
-
1. Základy Androidu, Kotlinu, Android Studia, Gradle
- Podrobně Kotlin
- Struktura projektu základ
2. UI vrstva - Material design, Resources, Compose
- Základní komponenty a layouty
- Column,Row,Box
- Modifier
- Preview
3. Aktivity/Fragmenty
- Lifecycle
- Compose setContent
4. Compose
- Remember, State
- Custom view
- Seznamy
- Navigace, Argumenty
5. Compose
- ViewModel
- Stateful layout
- Recomposition
- Coroutines + Flow, launch + dispatcher
6. Architektura, základ
- MVVM
- Screen
- ViewModel
- Repo
- Zdroje dat, lokální
- DI
7. Networking
- REST API Intro
- OkHttp, Retrofit, Moshi
- Logování
- Network na Domain + Unit testy
8. Local storage, Room, Shared Prefs/Data store
9. Permissions, WorkManager, Notifikace
- Nejčastější chyby v úkolech
10. Release aplikace - Certifikáty, Google Play Store, Flavours + Build Variants
11. Firebase - App distr, Crashlytics, Firestore DB, Analytics, Cloud messaging
12. XML UI
13. Konzultace
- Cíle studia:
-
Naučit se vytvořit aplikaci od začátku až po release a porozumnět problematice.
- Studijní materiály:
-
1. Reto Meier, „Professional Android 4 Application Development“, Wrox, 2018, ISBN: 978-1-1181-0227-5 (vždy nejnovější vydání)
2. Mark L. Murphy, „The Busy Coder's Guide to Android Development“, CommonsWare, 2018, ISBN: 978-0-9816780-0-9 (vždy nejnovější vydání)
3. Android Developer Guides - https://developer.android.com/guide/
- Poznámka:
-
Informace o předmětu a výukové materiály naleznete na https://moodle-vyuka.cvut.cz/course/search.php?search=BI-AND
- Další informace:
- https://courses.fit.cvut.cz/BI-AND/
- Rozvrh na zimní semestr 2024/2025:
- Rozvrh není připraven
- Rozvrh na letní semestr 2024/2025:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- Bc. program Informatika, pro fázi studia bez oboru, 2015-2020 (volitelný předmět)
- Bc. obor Bezpečnost a informační technologie, 2015-2020 (volitelný předmět)
- Bc. obor Teoretická informatika, 2015-2020 (volitelný předmět)
- Bc. obor Počítačové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Informační systémy a management, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Softwarové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Webové inženýrství, 2015-2020 (volitelný předmět)
- Bc. obor Webové a softwarové inženýrství, zaměření Počítačová grafika, 2015-2020 (volitelný předmět)
- Bc. obor Znalostní inženýrství, 2018-2020 (volitelný předmět)
- Bc. specializace Informační bezpečnost, 2021 (volitelný předmět)
- Bc. specializace Manažerská informatika, 2021 (volitelný předmět)
- Bc. specializace Počítačová grafika, 2021 (volitelný předmět)
- Bc. specializace Počítačové inženýrství, 2021 (volitelný předmět)
- Bc. program, pro fázi studia bez specializace, 2021 (volitelný předmět)
- Bc. specializace Webové inženýrství, 2021 (volitelný předmět)
- Bc. specializace Umělá inteligence, 2021 (volitelný předmět)
- Bc. specializace Teoretická informatika, 2021 (volitelný předmět)
- Bc. specializace Softwarové inženýrství, 2021 (volitelný předmět)
- Bc. specializace Počítačové systémy a virtualizace, 2021 (volitelný předmět)
- Bc. specializace Počítačové sítě a Internet, 2021 (volitelný předmět)
- Study plan for Ukrainian refugees (volitelný předmět)
- Bc. specializace Informační bezpečnost, 2024 (volitelný předmět)
- Bc. program, pro fázi studia bez specializace, 2024 (volitelný předmět)
- Bc. specializace Manažerská informatika, 2024 (volitelný předmět)
- Bc. specializace Počítačová grafika, 2024 (volitelný předmět)
- Bc. specializace Softwarové inženýrství, 2024 (volitelný předmět)
- Bc. specializace Webové inženýrství, 2024 (volitelný předmět)
- Bc. specializace Počítačové sítě a Internet, 2024 (volitelný předmět)
- Bc. specializace Počítačové inženýrství, 2024 (volitelný předmět)
- Bc. specializace Počítačové systémy a virtualizace, 2024 (volitelný předmět)
- Bc. specializace Umělá inteligence, 2024 (volitelný předmět)
- Bc. specializace Teoretická informatika, 2024 (volitelný předmět)