Multiplatformní vývoj mobilních aplikací
| Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
|---|---|---|---|---|
| NI-MMA | KZ | 4 | 2P+2C | česky |
- Garant předmětu:
- Martin Půlpitel
- Přednášející:
- Rostislav Babáček, Jan Mottl, Igor Rosocha, Petr Šíma
- Cvičící:
- Rostislav Babáček, Jan Mottl, Igor Rosocha, Petr Šíma
- Předmět zajišťuje:
- katedra softwarového inženýrství
- Anotace:
-
Předmět seznámí studenty s moderním přístupem k nativnímu vývoji mobilních aplikací pro platformy iOS a Android pomocí nejmodernějších technologií. Důraz je kladen na sdílení kódu byznys logiky, datové vrstvy a síťové komunikace. Studenti se naučí efektivně strukturovat projekty, přistupovat k nativním API obou platforem ze sdílené části a řešit běžné i pokročilé problémy v multiplatformním vývoji. Náplní přednášek budou konkrétní postupy a prakticky zaměřené případové studie od odborníků z praxe.
- Požadavky:
-
Předmět se zabývá pokročilými tématy, prerekvizitou je základní kurz programování v iOS nebo Android.
- Osnova přednášek:
-
1. Úvodní přednáška, harmonogram, úvod do multiplatformního vývoje
2. Jetpack Compose: Základy vývoje UI pro Android
3. SwiftUI: Deklarativní vývoj UI pro iOS
4. Architektura multiplatformní aplikace (MVVM/MVI)
5. Síťová komunikace a serializace dat
6. Ukládání dat v KMP
7. Asynchronní programování
8. Správa závislostí a modularizace, dependency injection
9. Přístup k nativním API (senzory, notifikace)
10. Release aplikace, automatizace (CI/CD)
11. Testování
12. Sdílené uživatelské rozhraní s Compose Multiplatform
13. Konzultace semestrálních prací a rezerva
- Osnova cvičení:
-
1. Seznámení s prostředím
2. Jetpack Compose: Deklarativní UI v praxi
3. SwiftUI: Architektura a state management
4. První multiplatformní projekt, základy architektury
5. Síťová komunikace
6. Databáze, zabezpečení citlivých dat
7. Asynchronní programování v praxi
8. Dependency Injection
9. Přístup k nativním API (senzory, notifikace)
10. Release aplikace, automatizace prostřednictvím CI/CD
11. Implementace unit a snapshot testů
12. Sdílené UI prostřednictvím Compose Multiplatform
13. Rezerva, konzultace
- Cíle studia:
- Studijní materiály:
-
[1] https://developer.apple.com
[2] https://developer.android.com
[3] https://kotlinlang.org/docs/multiplatform/get-started.html
- Poznámka:
-
Předmět bude otevřen jen za předpokladu, že se přihlásí alespoň 15 studentů.
Tento předmět obsahově navazuje na bakalářský předmět BI-IOS (Základy vývoje iOS aplikací pro iPhone a iPad) a také na předmět BI-AND ( Programování pro operační systém Android).
This course is presented in Czech.
- Další informace:
- https://courses.fit.cvut.cz/NI-MMA/
- Rozvrh na zimní semestr 2025/2026:
- Rozvrh není připraven
- Rozvrh na letní semestr 2025/2026:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- Mgr. specializace Počítačová bezpečnost, 2020 (volitelný předmět)
- Mgr. specializace Návrh a programování vestavných systémů, 2020 (volitelný předmět)
- Mgr. specializace Počítačové systémy a sítě, 2020 (volitelný předmět)
- Mgr. specializace Manažerská informatika, 2020 (volitelný předmět)
- Mgr. specializace Softwarové inženýrství, 2020 (volitelný předmět)
- Mgr. specializace Systémové programování, verze od 2020 (volitelný předmět)
- Mgr. specializace Webové inženýrství, 2020 (volitelný předmět)
- Mgr. specializace Znalostní inženýrství, 2020 (volitelný předmět)
- Mgr. specializace Teoretická informatika, 2020 (volitelný předmět)
- Mgr. program, pro fázi studia bez specializace, ver. pro roky 2020 a vyšší (volitelný předmět)
- Study plan for Ukrainian refugees (volitelný předmět)
- Mgr. specializace Systémové programování, verze od 2023 (volitelný předmět)
- Mgr. specializace Teoretická informatika, 2023 (volitelný předmět)
- Mgr. program Aplikovaná informatika (kód ANI) pro fázi studia bez specializace (volitelný předmět)
- Mgr. specializace Manažerská informatika, 2026 (volitelný předmět)
- Mgr. specializace Počítačová bezpečnost, 2026 (volitelný předmět)
- Mgr. specializace Počítačové systémy a sítě, 2026 (volitelný předmět)
- Mgr. specializace Teoretická informatika, 2026 (volitelný předmět)
- Mgr. specializace Programovací jazyky, 2026 (volitelný předmět)
- Mgr. specializace Umělá inteligence, 2026 (volitelný předmět)
- Mgr. program, pro fázi studia bez specializace, ver. pro roky 2026 a vyšší (volitelný předmět)