Bevezetés a mobil platformokba

A tantárgy angol neve: Introduction to Mobile Platforms

Adatlap utolsó módosítása: 2017. augusztus 19.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Műszaki menedzser MSc szak


Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIAUM028   2/1/0/f 5  
3. A tantárgyfelelős személy és tanszék Dr. Forstner Bertalan,
4. A tantárgy előadója

Név:

Beosztás:

Tanszék, Int.:

Dr. Forstner Bertalan

egyetemi docens

Automatizálási és Alkalmazott Informatikai Tanszék

Dr. Ekler Péter

egyetemi adjunktus

Automatizálási és Alkalmazott Informatikai Tanszék

5. A tantárgy az alábbi témakörök ismeretére épít Programozási alapismeretek
6. Előtanulmányi rend
Kötelező:
Training.Code=("7N-M11")

A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

A kötelező előtanulmányi rendek grafikus formában itt láthatók.

7. A tantárgy célkitűzése

A tárgy célja, hogy a hallgatókkal megismertesse a tipikus, mobilszoftvert alkalmazó rendszereket, valamint a szoftverek kialakításához szükséges, legelterjedtebb megközelítéseket és platformokat.

8. A tantárgy részletes tematikája

 

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. Alkalmazások lazán csatolt architektúrája, komponensek kommunikációja.

3.

Az előadás témája a 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 és telefon egyidejű támogatása.

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 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 az iOS alkalmazások architektúrájával és a Swift programozási nyelvvel.

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 felhasználói felület és kód közötti kapcsolat eszközeit is (akciók és outletek).

8.

Az előadáson ismertetjük az iOS alkalmazások életciklusát. Szó lesz az adattárolásról és kommunikációról. Áttekintjük az alkalmazások és a rendszer védelmi mechanizmusait (pl. sandboxing).

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, hogy hogyan lehet beépülni más alkalmazásokba (pl. widgetek és dokumentumszolgáltatók).

10.

Bemutatjuk a Windows Phone platform alapjait. Ismertetjük a Windows Phone alkalmazások felépítését és típusait, valamint a fő fejlesztési lehetőségeket (XAML, HTML).

11.

Felhasználói felület programozása Windows Phone alkalmazásokhoz: Layout kezelés (Grid, StackPanel, GridView, ListView stb.), erőforrások, stílusok, animáció, navigáció.

12.

Áttekintjük, hogy hogyan lehet dinamikus alkalmazásokat fejleszteni Windows Phone platformra: adatkötés, MVVM, sablonok, adattárolás. Megvizsgáljuk a WP alkalmazások életciklusát.

13.

Windows Phone platformszolgáltatások: helymeghatározás, hálózati kommunikáció, értesítések, publikálás. Universal alkalmazás fejlesztése Windows platformra (tablet és telefon).

14.

Az utolsó előadás témája a platformok összevetése, teljesítményelemzés és a platformválasztás kérdései. Ezeken felül áttekintjük az aktuális alkalmazásfejlesztési trendeket és új technológiákat.

 

 

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 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.

4.

Swift programozás: a gyakorlat keretein belül begyakoroljuk a programozási nyelv alapelveit és funkcióit. A megismert új fogalmakat kipróbáljuk Playgrounds-ok felhasználásával.

5.

A gyakorlat fő témája az adaptív felhasználói felületek készítése iOS-re: több képernyőméret támogatása, felhasználói felület tervezése deklaratív módon auto-layouttal.

6.

A gyakorlaton megismerkedünk az összetett Windows Phone alkalmazások fejlesztésével. Megismerkedünk a XAML nyelvvel és gyakoroljuk annak alapfunkcióit. Megvizsgáljuk a vezérlők felhasználását és a navigáció a gyakorlatban.

7.

A gyakorlaton megismerkedünk az adatvezérelt Universal Windows Phone és Windows Tablet alkalmazás fejlesztésével. A bemutatott példákon keresztül kipróbáljuk az adatkötést és az MVVM minta felhasználását is.

 

 

9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

Előadás és gyakorlat.

10. Követelmények

A félév lezárásának módja: félévközi jegy.

A félévközi jegy megszerzésének feltétele a szorgalmi időszakban megírandó két  darab zárthelyi dolgozat sikeres teljesítése, valamint egy házi feladat elkészítése a 13. oktatási hétig. A félévközi jegyet a két dolgozatra kapott osztályzat átlaga adja.

11. Pótlási lehetőségek

A zárthelyihez a TVSZ előírásai szerint mind a szorgalmi, mind a pótlási időszakban 1-1 pótlási lehetőséget biztosítunk. Házi feladat pótlása a pótlási hétre megadott határidőig lehetséges.

12. Konzultációs lehetőségek

A tárgy előadójával történt egyeztetés szerint.

13. Jegyzet, tankönyv, felhasználható irodalom
Apple Inc.: The Swift Programming Language, https://itunes.apple.com/us/book/swift-programming-language/id881256329, 2014
Joe Conway, Aaron Hillegass, Christian Keur: iOS Programming: The Big Nerd Ranch Guide (4th edition), Big Nerd Ranch Guides, 2014
Reto Meier: Professional Android 4 Application Development, 2012.
Bill Phillips, Brian Hardy: Android Programming: The Big Nerd Ranch Guide, 2013.
Android Developer Training, online: http://developer.android.com/training/index.html
Windows Phone Developer portal (Tutorials & SDK):
http://dev.windows.com/en-us/develop 
Bob Tabor: Channel9′s Windows Phone 8.1 Development for Absolute Beginners, http://channel9.msdn.com/Series/Windows-Phone-8-1-Development-for-Absolute-Beginners

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra42
Félévközi készülés órákra24
Felkészülés zárthelyire40
Házi feladat elkészítése30
Kijelölt írásos tananyag elsajátítása14
Vizsgafelkészülés 
Összesen150
15. A tantárgy tematikáját kidolgozta

Név:

Beosztás:

Tanszék, Int.:

Dr. Forstner Bertalan

egyetemi docens

Automatizálási és Alkalmazott Informatikai Tanszék

Dr. Ekler Péter

egyetemi adjunktus

Automatizálási és Alkalmazott Informatikai Tanszék