Mobilszoftver-platformok
A tantárgyleírás hatályossága
| Tantárgy neve (magyarul, angolul) |
Mobilszoftver-platformok
Mobile Software Platforms
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tantárgykód | BMEVIAUMA05 | ||||||||||||
| Tantárgyjelleg | — | ||||||||||||
| Képzési szint | — | ||||||||||||
| Kurzustípusok és óraszámok (heti/féléves) |
|
||||||||||||
| Tanulmányi teljesítmény/értékelés típusa | félévközi érdemjegy | ||||||||||||
| Tantárgy kreditértéke | 4 | ||||||||||||
| Tantárgyfelelős |
DR. Forstner Bertalan
beosztás: egyetemi docens
elérhetőség:
forstner.bertalan@vik.bme.hu
|
||||||||||||
| Tantárgyat gondozó oktatási szervezeti egység |
Automatizálási és Alkalmazott Informatikai Tanszék
|
||||||||||||
| Kar | Villamosmérnöki és Informatikai Kar | ||||||||||||
| Tantárgy weboldala | — | ||||||||||||
| Tantárgy elsődleges mintatantervi jellege | — | ||||||||||||
| Közvetlen előkövetelmények – Erős előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Gyenge előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Párhuzamos előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Mérföldkő előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Kizáró feltétel | nincs |
Célkitűzés
|
|
Előadás
anyaga |
|
1. |
Ismertetésre kerülnek a mobilplatformokhoz
kapcsolódó alapelvek. Áttekintjük az aktuálisan legelterjedtebb platformokat.
Megismerkedünk a platformfüggetlenség és keresztplatformos fejlesztés fogalmaival.
|
|
2. |
Áttekintjük az Android platform alapjait és a főbb alkalmazás
komponenseket mélyebb szinten. Alkalmazások lazán csatolt architektúrája,
komponensek kommunikációja. Az előadás részét képezi az instant (telepítés
nélküli) alkalmazások bemutatása is. |
|
3. |
Az előadás témája az összetett felhasználói felülettervezés
Android környezetben, layout-ok és vezérlők felhasználása, testreszabása,
képernyő méret függetlenség, tablet, telefon, és egyéb eszköz egyidejű
támogatása. Megvizsgáljuk a Fragmentek és a ConstraintLayout működését. |
|
4. |
Áttekintjük a hálózati
kommunikáció lehetőségeit Android környezetben. Megvizsgáljuk, hogyan lehet
elérni a beépített alkalmazásokat, feliratkozni rendszer eseményekre és felüldefiniálni
az alapértelmezett viselkedést. |
|
5. |
Az előadáson egyrészt a Google Play szolgáltatásaival, másrészt
pedig a helyfüggő Android alkalmazások készítésével foglalkozunk (fused
location, proximity alert stb.) Megismerkedünk a térképek és overlay
megjelenítési technikák használatával. |
|
6. |
Az előadás fő témája az iOS platform alapjainak
bemutatása. Megismerkedünk a platform jellegzetességeivel és a Swift
programozási nyelv alapjaival. |
|
7. |
Az előadás témája a felhasználói felületek készítése
iOS alkalmazásokhoz: Storyboard, Segue, View Controllerek bemutatása. Áttekintjük
a platformra jellemző design alapelveket. Megismerkedünk a többnézetes iOS
alkalmazások készítésének alapjaival (Navigation Controller, Tab Bar
Controller). |
|
8. |
Az előadáson ismertetjük az egyik leggyakrabban
használt iOS-es komponenst, a Table View-t. Megismerjük az iOS alkalmazások életciklusát.
Szó lesz az animációkról és az alkalmazások közti kommunikációs
lehetőségekről. Áttekintjük az alkalmazások és a rendszer védelmi
mechanizmusait (pl. sandboxing) és néhány adattárolási megoldást. |
|
9. |
Az előadás témája az Apple fejlesztői szolgáltatások
ismertetése (pl. Push Notification, iCloud). Megvizsgáljuk a rendszeralkalmazások
kibővítésének lehetőségeit, és az alkalmazások közötti integrációs
lehetőségeket (pl. widgetek és dokumentumszolgáltatók). |
|
10. |
Bemutatjuk a keresztplatformos mobil alkalmazás
fejlesztés koncepcióját. Megvizsgáljuk a .NET alapú Xamarin keretrendszert és
fejlesztőkörnyezet és fejlesztési folyamatot. Ismertetjük a szorosan
kapcsolódó szoftverfejlesztési technikákat, tervezési mintákat (DI, IoC). |
|
11. |
Platformfüggetlen felhasználói felület programozása Xamarin.Forms
keretrendszerrel XAML nyelven. Áttekintjük a legfontosabb koncepciókat:
vezérlők, erőforrások, stílusok, navigáció. Továbbá téma az MVVM tervezési
minta alkalmazása Xamarin.Forms alkalmazások esetében. |
|
12. |
Áttekintjük a webes
technológiák mobil fejlesztési aspektusait, webes keretrendszerek
összehasonlítása, legfontosabb webes ismeretek átismétlése mobil alkalmazások
szempontjából. Bevezetés a React keretrendszer használatában. |
|
13. |
Ismertetjük a React Native keresztplatformos mobil
alkalmazás fejlesztési keretrendszer használatának legfontosabb elemeit,
felületkészítés, natív funkciók elérése, (location, kamera stb.), tárhely-
hálózatkezelés. Bemutatjuk és elemezzük a kapcsolódó tervezési mintákat
(Flux, Redux) |
|
14. |
Kitekintés egyéb mobil fejlesztés szempontjából
releváns webes keretrendszerek használatába, pl.: az Phonegap, Ionic, Titanium,
Progressive Web Applications (PWA). |
|
|
Gyakorlat
anyaga |
|
1. |
A gyakorlat keretein belül
megismerkedünk a több komponensből álló Android alkalmazások fejlesztésével,
a komponensek közti kommunikációval és az állapotmentéssel. |
|
2. |
A gyakorlat témái a Fragment
és ConstraintLayout alapú Android alkalmazástervezés adatbázis támogatással
és a hatékony adatkezelési módszerek alkalmazása. |
|
3. |
A gyakorlaton az Android hálózati
kommunikációt és térképhasználatot nézzük át példákon keresztül. Külső
osztálykönyvtárak integrálása. Szintén
a gyakorlat része a speciális Play szolgáltatások bemtatása, mint például az
Activity recognition. |
|
4. |
Swift
programozás: a gyakorlat keretein belül megismerjük a programozási nyelv alapelveit
és funkcióit. A megismert új fogalmakat kipróbáljuk Playground segítségével.
Áttekintjük az iOS alkalmazások architekúráját, valamint a kód és
felhasználói felület közötti kapcsolatot (Outletek és Actionök). |
|
5. |
A gyakorlaton
megismerkedünk a perzisztens adattárolást elősegítő Core Data keretrendszerrel,
a leggyakrabban használt kommunikációs technológiákkal, a helymeghatározással
kapcsolatos megoldásokkal. Szó lesz a különböző szenzorok kezeléséről, az
értesítésekről és a multimédiás lehetőségekről. |
|
6. |
A gyakorlaton
megismerkedünk a Xamarin alkalmazások fejlesztésével. Felületet készítünk
natív technológiával és XAML nyelven, gyakoroljuk az MVVM és DI tervezési minta
használatát. |
|
7. |
A gyakorlaton
megismerkedünk a React Native webes keretrendszerrel történő fejlesztéssel.
Egyszerűbb felületek készítünk el, kipróbáljuk a kapcsolódó tervezési minták
használatát. |
Tanulmányi eredmények
Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:
Tudás
Nincsenek rögzített tanulási eredmények.
Képességek
Nincsenek rögzített tanulási eredmények.
Attitűd
Nincsenek rögzített tanulási eredmények.
Autonómia és felelősség
Nincsenek rögzített tanulási eredmények.
Oktatási módszertan
Tanulástámogató anyagok
Online források
A tantárgy teljesítéséhez ajánlott előzetes ismeretek
Általános szabályok
Teljesítményértékelési módszerek
Szorgalmi időszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Szorgalmi időszakban végzett teljesítményértékelések részaránya
Nincs megadva részarány.
Vizsgaidőszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Vizsgarészek részaránya
Nincs megadva részarány.
Érdemjegy megállapítása
Nincs megadva érdemjegy határ.
Jelenléti és részvételi követelmények
Nincs megadva jelenléti követelmény.
Javítás, ismétlés és pótlás különös szabályai
Nincs megadva.
Rövid leírás
Nincs megadva.
Részletes leírás
Nincs megadva.
Ajánlott tantárgyak
A tantárgy elvégzéséhez szükséges tanulmányi munka
Nincs megadva munkaidő bontás.
Tantárgykövetelmények hatályossága
Tantervi elhelyezés
Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.