| Název předmětu | Mobile technologies and applications |
|---|---|
| Kód předmětu | KIT/BMTA |
| Organizační forma výuky | Přednáška + Cvičení |
| Úroveň předmětu | Bakalářský |
| Rok studia | nespecifikován |
| Semestr | Zimní |
| Počet ECTS kreditů | 4 |
| Vyučovací jazyk | Angličtina |
| Statut předmětu | Povinný, Povinně-volitelný, Volitelný |
| Způsob výuky | Kontaktní |
| Studijní praxe | Nejedná se o pracovní stáž |
| Doporučené volitelné součásti programu | Není |
| Vyučující |
|---|
|
| Obsah předmětu |
|
1. Introduction to Android ecosystem - What Android is, versions, API levels, app architecture; install Android Studio, SDK, emulator, ADB, project structure. 2. Kotlin Basics I - Syntax, variables, types, null-safety, conditionals, loops, functions, collections. 3. Kotlin Basics II (OO and functional style) - data/sealed classes, objects, inheritance, extension functions, lambdas, generics. 4. Getting started with jetpack compose - first UI, Composable functions, layouts, Modifiers, Preview, Material 3 5. State management and lifecycle - remember, state hoisting, ViewModel, SavedStateHandle, Lifecycle. 6. MVVM and dependency injection - MVVM, Repository pattern, Flow/StateFlow, unidirectional data flow, error states. 7. Navigation with Jetpack compose - Navigation Component, graph, arguments, back stack, deep links. 8. Testing - Unit tests (JUnit), Compose UI tests, fakes/mocks, debugging (Logcat), profiling (CPU/Memory/Network), optimizations (recomposition, lazy lists). 9. Data flow - Coroutines (launch, async, scopes), WorkManager, foreground service, notifications. 10. Networking, using API - REST, Retrofit or Ktor Client, Kotlinx Serialization/Moshi, interceptors, error handling, retry, offline-first. 11. Security - DI (Hilt/Koin), modularization, secret management (Gradle keystore), build variants, Crashlytics/Analytics 12. Local Storage - Entity/DAO, Room Database, migrations, DataStore (Preferences/Proto). 13. Permissions & hardware/sensors: Runtime permissions, camera/gallery (MediaPicker), location (FusedLocation), maps (Maps Compose), content sharing.
|
| Studijní aktivity a metody výuky |
Přednášení, Metody samostatných akcí, Demonstrace, Pracovní činnosti
|
| Výstupy z učení |
|
The aim is to improve the existing programming knowledge of the mobile applications design and development. During the classes, students will learn about the current state of mobile technology and development tools for creating mobile applications. And also they learn how to implement a real mobile application for the chosen development platform. Development will provide by Kotlin language on IntelliJ IDEA IDE and Android Studio.
Students of the BMTA course will acquire knowledge and skills in the field of mobile application development on the selected mobile device with the appropriate operating system of Android. |
| Předpoklady |
|
Knowledge of the basic programming and OOP in Java.
|
| Hodnoticí metody a kritéria |
|
Ústní zkouška, Rozbor produktů pracovní činnosti studenta, Obhajoba vlastního projektu
Active participation in exercises. Completed exercises. Credit: Development of a functional application Exam: Defence of the programmed functional application |
| Doporučená literatura |
|
| Studijní plány, ve kterých se předmět nachází |
| Fakulta | Studijní plán (Verze) | Kategorie studijního oboru/specializace | Doporučený semestr |
|---|