Belépés címtáras azonosítással
magyar nyelvű adatlap
Bevezetés a mobilszoftver-fejlesztésbe
A tantárgy angol neve: Introduction to Mobile Software Development
Adatlap utolsó módosítása: 2015. április 2.
Tantárgy lejárati dátuma: 2016. június 30.
Villamosmérnöki szak, Mérnökinformatikus szak,Gazdaságinformatikus szak
Automatizálási és Alkalmazott Informatikai Tanszék
A programozás alapjai 1, 2
A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.
A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.
A tárgy keretében a hallgatók megismerkednek a mobil eszközökre történő szoftverfejlesztés alapjaival. Megismerik a különféle mobil platformokat, valamint a platformokra való szoftverfejlesztéshez szükséges eszközöket. Megismerik a mobil eszközökre való fejlesztés sajátosságait, ergonómiai kérdéseit és a fejlesztés során alkalmazható legjobb gyakorlatokat. Ezen kívül találkoznak a gyors prototípus-készítési eljárásokkal, gyakorlati megvalósításokkal. Lehetőséget biztosítunk az alkalmazások különböző típusú mobil eszközökön történő kipróbálására és tesztelésére.
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 az adott feladatra legalkalmasabb platformot kiválasztani, a fejlesztés nagyságát megbecsülni. Ezen kívül elsajátítják egyszerűbb mobil alkalmazások elkészítését, az emulátor használatát illetve gyors prototípus-készítést SL4A (Scripting layer for Android), illetve Java ME környezetben. Ezekhez ismertetésre kerülnek az alábbi technikák:
1. hét: Mobil szoftverplatformok. Mobil készülékek általános jellemzői. Újszerű mobil készülékek speciális hardverei. 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. Mobil készülékek számításkapacitásának vizsgálata
2. hét: A mobil szoftverfejlesztés első lépései. 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). Konkrét platformok és képességeik.
3. hét: Python alapok, Scripting Layer for Android. A Python nyelv megismerése az alapoktól. Fejlesztőkörnyezet. Alkalmazás telepítés, debuggolás.
4. hét: Felhasználói felület készítése Androidra. Alapelvek a felhasználói felület tervezéshez. WebViewShow. Dialógusok készítése, felhasználói válaszok feldolgozása. Kényelmi dialógusok. Adatmegjelenítés.
5. hét: SL4A alapok. Az Android bemutatása, alkalmazás komponensek. Gyakori funckiók elérése. Adatkezelés, földrajzi pozíció alapú alkalmazások.
6. hét: Kommunikáció Python nyelven. A telefonálás funkció alapjai. SMS üzenet küldése, fogadása és feldolgozása. Kamera használat fényképezéshez, videózáshoz. Szöveg beszéddé alakítása és fordítva. Szenzorok használata. SL4A alapú alkalmazás telepítőjének elkészítése.
7. hét: Bluetooth és webes technológiák. Adatcsere bluetooth segítségével. webes szolgáltatások elérése. Adatletöltés távoli helyről. Komplex prototípus alkalmazás készítése.
8. hét: A Java ME platform bemutatása. A technológia általános áttekintése, Java ME konfigurációk, profilok és opcionális csomagok leírása. MIDlet életciklus ismertetése.
9. hét: Felhasználói felület tervezése és készítése. Általános felülettervezési elvek mobiltelefonokra. Java ME alkalmazás felületének felépítése. Felhasználható felületi elemek, vezérlők bemutatása. A NetBeans felülettervező moduljának bemutatása.
10.hét: Adattárolás Java ME platformon. Adattárolás a MIDlet-ek számára elérhető saját adatbázisban (RMS). Adatok létrehozása, manipulálása, törlése. Fájlkezelés Java ME platformon. Nehézségek, praktikus módszerek.
11. hét: Multimédia szolgáltatások Java ME platformon. A Java ME által biztosított multimédia API bemutatása. Kamera megjelenítése és képek beolvasása. Hangok felvétele, lejátszása.
12. hét: Hálózati kapcsolatok kezelése. A Java ME általános hálózatkezelési rendszerének (Generic Connection Framework) ismertetése. Socket és Stream alapú kommunikáció áttekintése. HTTP kapcsolatok kezelése. WebService-k elérése mobil telefonról. Bluetooth technológia ismertetése. SMS és MMS üzenetek kezelése
13. hét: további fejlett APIk ismertetése.
14. hét: Félévközi Zárthelyi dolgozat.
Előadás gyakorlati példákkal fűszerezve (konkrét készülékeken)
A szorgalmi időszakban:
(1) Az ismeretek átfogó és részletes áttekintését a szorgalmi időszak alatt 1 alkalommal, az évfolyam terhelési táblázata szerinti időpontban íratott nagy zárthelyivel mérjük, valamint(2) A gyakorlást a nagy házi feladat biztosítja, amelynek beadási határideje a szorgalmi időszak vége.A félév elismerését jelentő félév végi jegy megszerzésére akkor van lehetőség, ha a hallgató a házi feladatot futtatható állapotban, dokumentációval ellátva, forráskód mellékelésével, határidőre beadta.A házi feladatot 40 %-ban számoljuk a jegybeAz aláírás megszerzésének feltétele a nagy ZH és a nagy házi feladat együttes teljesítése.
Igény szerint előadóval egyeztetve.
Paul Ferrill: Pro Android Python with SL4A. Apress, 2011
Jürgen Scheible, Ville Tuulos: Mobile Python: Rapid prototyping of applications on the mobile platform. Symbian Press, 2007
Martin de Jode: Programming Java 2 Micro Edition on Symbian OS. Symbian Press, 2007
Tanszéki jegyzet
Név:
Beosztás:
Tanszék, Int.:
Dr. Charaf Hassan
egyetemi docens
Dr. Forstner Bertalan
Ekler Péter
egyetemi adjunktus
Kelényi Imre