Pokročilé techniky v iOS aplikacích
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
NI-IOS | KZ | 4 | 2P+2C | česky |
- Garant předmětu:
- Přednášející:
- Cvičící:
- Předmět zajišťuje:
- katedra softwarového inženýrství
- Anotace:
-
Předmět seznámí studenty s posledními trendy v mobilních technologiích vývojářské platformy iOS. Předmět se zabývá pokročilými tématy, prerekvizitou je základní kurz programování v iOS. Náplní přednášek jsou konkrétní pokročilé postupy, které prezentují přední odborníci na dané téma, prakticky zaměřené případové studie a prezentace úspěšných projektů
- Požadavky:
-
Předmět se zabývá pokročilými tématy, prerekvizitou je základní kurz programování v iOS.
- Osnova přednášek:
-
1 Úvodní přednáška, harmonogram předmětu, představení semestrálních úloh.
2 Vývoj aplikace pomocí kontejnerů (custom container controllers, custom transitions, UIKitDynamic).
3 Případová studie 1 - komplexní návrh uživatelského rozhraní (custom UI).
4 Externí notifikace (push notifications, silent push notifications, iBeacon).
5 Případová studie 2 - vývoj aplikace v týmu o jedné osobě, co vše je třeba vědět před uveřejněním aplikace v AppStore.
6 Vnitřní techniky jazyka Objective C.
7 Ukládání dat (Core Data).
8 Pokročilá práce s víceúlohovými a vícevlákovými aplikacemi, správa paměti.
9 Případová studie 3 - aplikace s intenzivní komunikací a vlákny.
10 Případová studie 4 - bezpečnost, podepisování kódu, izolace aplikací (sandboxing).
11 Případová studie 5 - bankovní aplikace.
12 Případová studie 6 ? sestavení aplikace v XCode pro více platforem, využití.
13 Testování, nasazování a nástroje třetích stran.
Přednášky obsahují látku, která není v doporučených materiálech [1] nebo [2] a dávají posluchačům základní představu o probíraných technologiích a jejich provázanosti. Polovinu přednášek obsahují případové studie na navazující témata od předních iOS vývojářů a zabývajících se vývojem.
Přednášky 6 a 8 a cvičení 7 a 8 jsou spolu provázány a probíraná látka spolu navzájem souvisí.
- Osnova cvičení:
-
1 Úvodní cvičení, seznámení se s vývojovým prostředím, podmínky pro absolvování předmětu.
2 Grafický subsystém (Core Graphics), pokročilé rozpoznávání gest.
3 Kontejnery (custom container controllers, custom transitions).
4 Pokročilé tabulky a kolekce.
5 Pokročilé datové modely, KVO, notifikace.
6 Práce s bloky a blokové API.
7 mPokročilá práce s Core Data a mapování.
8 Pokročila práce s víceúlohovými a vícevláknovými aplikacemi.
9 Ladění kódu pomocí konzole, ladění výkonu pomocí nástroje Instruments.
10 Ukládání dat, bezpečnost (iCloud, podepisování aplikací).
11 URL schémata, možnosti spouštění aplikací, Airdrop a sdílení.
12 Pokročilá práce s vývojářským prostředím (Xcode) a pomocnými nástroji třetích stran.
13 Rezerva.
- Cíle studia:
- Studijní materiály:
-
[1] www.developer.apple.com
- Poznámka:
-
Tento předmět obsahově navazuje na bakalářský předmět Základy vývoje iOS aplikací pro iPhone a iPad
Informace o předmětu a výukové materiály naleznete na https://courses.fit.cvut.cz/MI-IOS/
- Další informace:
- https://courses.fit.cvut.cz/MI-IOS/
- Pro tento předmět se rozvrh nepřipravuje
- 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)