Předmět: Mobile technologies and applications

» Seznam fakult » FEI » KIT
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í
  • Panuš Jan, Ing. Ph.D.
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
  • Příprava na zápočet - 13 hodin za semestr
  • Příprava na zkoušku - 13 hodin za semestr
  • Domácí příprava na výuku - 39 hodin za semestr
  • Kontaktní výuka - 39 hodin za semestr
  • Projekt individuální - 13 hodin za semestr
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
  • Ebel, N. Mastering Kotlin: Learn advanced Kotlin programming techniques to build apps for Android, iOS, and the web. Birmingham: UK, 2019. ISBN 978-1838555726.
  • Murphy, Mark L. Android 2 : průvodce programováním mobilních aplikací. Brno: Computer Press, 2011. ISBN 978-80-251-3194-7.


Studijní plány, ve kterých se předmět nachází
Fakulta Studijní plán (Verze) Kategorie studijního oboru/specializace Doporučený ročník Doporučený semestr