Mobil- és webes szoftverek
A tantárgyleírás hatályossága
| Tantárgy neve (magyarul, angolul) |
Mobil- és webes szoftverek
Mobile- and Web-based Software
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tantárgykód | BMEVIAUAC00 | ||||||||||||
| 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 | vizsga | ||||||||||||
| Tantárgy kreditértéke | 5 | ||||||||||||
| Tantárgyfelelős |
DR. Ekler Péter
beosztás: egyetemi docens
elérhetőség:
ekler.peter@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
A tantárgy elvégzése során a hallgatók áttekintést nyernek a jelenleg használatos, legelterjedtebb mobil platformokról és képességeikről. Az ismeretek elsajátításával képesek lesznek prototípus alkalmazásokat fejleszteni mobil környezetben és a fejlesztés nehézségeit felmérni. Ezen kívül elsajátítják az Android platform alapjait, az emulátor használatát illetve gyors tervezést és alkalmazás fejlesztést. Ezekhez ismertetésre kerülnek az alábbi technikák:
- az alkalmazások felépítése,
- egyszerű felhasználói felületi elemek használata,
- fordítási, telepítési ismeretek.
A mobil szoftverfejlesztési kompetencián túl megismerkednek a korszerű webes kliensek technológiai alapjaival, illetve a mobil webes felületekkel.
Az előadások tematikája:
|
Előadás |
Előadás anyaga |
|
1. |
Bevezetés.
Webes és mobilos kliensek a korszerű szoftver rendszerek architektúrájában.
Mobil készülékek általános jellemzői. Újszerű mobil készülékek speciális
hardverei. Mobil platformok áttekintése. Mobil szoftverfejlesztés fogalma: a
PC-s fejlesztéstől eltérő szemléletmód. A mobil piac szereplőinek jellemzése.
Mobil hálózatok fejlődése. |
|
2. |
Szoftverfejlesztési
eszközök mobil készülékekre általánosságban: programozási nyelvek,
kódkönyvtárak, fejlesztőeszközök (SDK, Emulátor). Az Android platform
alapjainak bemutatása. Projekt elemeinek ismertetése. Fordítás mechanizmusa. |
|
3. |
Modern
mobil alkalmazások életciklusa az Android szemszögéből. Android alkalmazás
komponensek és ezek szerepe, valamint tipikus használati esetek. Több
képernyős alkalmazások tervezése és megvalósítása. Általános állapot mentés
életciklus váltás kezelésére. |
|
4. |
Mobil
alkalmazások felhasználói felületének tervezése és megvalósítása.
Felhasználói felülettel kapcsolatos erőforrások bemutatása, erőforrás
minősítők. Elrendezések és nézetek kezelése. |
|
5. |
Perzisztens
adattárolás elveinek bemutatása mobil környezetben. Kulcs-érték alapú
adattárolási lehetőségek. Relációs adatkezelés, adat szűrés, keresés és
rendezés. Állománykezelés. |
|
6. |
Mobil
platformokon támogatott rövid és hosszú távú hálózati kommunikációs
technológiák használata. Aszinkron hálózati műveletek kezelése, szálkezelés.
HTTP kapcsolatok kezelése. Felhasználói felület értesítése aszinkron végrehajtás
esetén. |
|
7. |
Helymeghatározás
mobil környezetben. Műholdas és hálózati alapú helymeghatározási technikák,
előnyök, hátrányok. Térkép kezelési alapelvek. |
|
8. |
Bevezetés
a webes technológiák világába. Kliens-szerver architektúra HTTP alapokon
(session, cookie, stb.). Dinamikus web koncepció ismertetése. A HTML nyelv
ismertetése, a nyelv elemei és gyakran használt kapcsolódó eszközök
bemutatása. Fejlesztői környezet bemutatása. |
|
9. |
A
CSS stílus leíró nyelv bemutatása és alkalmazhatósága. Saját osztályok
definiálása. CSS kiegészítő megoldások. A JavaScript nyelv alapjainak
bemutatása, Form-ok használata, validáció. |
|
10. |
Fejlett
JavaScript könyvtárak ismertetése. A karbantartható JavaScript forráskód
készítésének legjobb gyakorlatai. A HTML DOM ismertetése, gyakran használt
HTML és JavaScript megoldások áttekintése. |
|
11. |
Dinamikus
web tartalmak létrehozása. A jQuery alapjainak bemutatása. Mobil Web;
előnyök, hátrányok és lehetőségek. |
|
12. |
Dinamikus
webes felületek kialakításának eszközei, az AJAX lehetőségei. A REST
kommunikáció alapjai és alkalmazási területei, a JSON formátum tipikus
felhasználási területei, cross-domain policy. |
|
13. |
Felhő
alapú szolgáltatások nyújtotta lehetőségek alapjai mobil és webes
környezetben (IaaS, PaaS, BaaS, SaaS), IoT platformok ismertetése. |
|
14. |
A
cross platform megoldások elveinek bemutatása, cross platform alkalmazás
életciklus modell vizsgálata. |
Laboron az aktuális heti előadás anyagára épülő alkalmazások
készítése történik:
|
Labor |
Labor anyaga |
|
1. |
Ismerkedés
az okostelefon alkalmazásfejlesztéssel. Fejlesztőkörnyezetek és eszközök használatának
bemutatása. Bevezető alkalmazás fejlesztése. |
|
2. |
Android
fejlesztőkörnyezet és támogató eszközök bemutatása. Az emulátor használatának
ismertetése. Egy Activity-s alkalmazás fejlesztése. |
|
3. |
Alkalmazás
életciklus gyakorlása több képernyőből álló alkalmazás fejlesztése esetén.
Életciklus váltások megfelelő kezelése, állapot mentés. |
|
4. |
Összetett
felhasználói felületek tervezése és megvalósítása mobil környezetben. |
|
5. |
Perzisztens
adattárolás alapú alkalmazás fejlesztése, listák kezelése. |
|
6. |
Hálózati
kommunikáció alapú alkalmazás tervezése és megvalósítása. |
|
7. |
Hely
információk megjelenítése és térkép alapú alkalmazás fejlesztés a technológia
képességeinek és korlátainak bemutatásával. |
|
8. |
Kliens-szerver
architektúra a gyakorlatban, ismerkedés a fejlesztés során gyakran használt
eszközökkel, egyszerű weboldal készítése. HTTP forgalom monitorozása. |
|
9. |
Összetett,
CSS és JavaScript technológiákat használó alkalmazás fejlesztése. |
|
10. |
Korszerű
JavaScript könyvtárak alkalmazása weboldal fejlesztése során. |
|
11. |
jQuery
alapú oldalak tervezése és megvalósítása. |
|
12. |
Dinamikus
weboldal fejlesztése AJAX és REST technológiákkal. |
|
13. |
Mobil
weboldal készítése fejlett CSS, JavaScript, illetve jQuery technológiákkal. |
|
14. |
Cross-platform
alkalmazásfejlesztés a gyakorlatban. |
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
Ajánlott tantárgyak
Nincs megadva.
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.