Az Android platform natív programozói felületének vizsgálata és teljesítmény mérése

OData támogatás
Konzulens:
Dr. Ekler Péter
Automatizálási és Alkalmazott Informatikai Tanszék

Az Android alapú mobil eszközök térnyerésének köszönhetően az elmúlt években egyre nagyobb szerephez jutnak az Android platformra írt alkalmazások. Egy ilyen dinamikusan növekvő és folyamatosan változó környezet olyan szoftverek jelenlétét követeli meg, melyek lehetővé teszik a fejlesztők számára, hogy gyors és személyre szabott válaszokat adjanak a felmerülő piaci igényekre.

Az Android két programozói felületet biztosít a fejlesztők számára, egy Java nyelvű menedzselt környezetet és egy C/C++ nyelvű natív környezetet. Az Android alapú szoftverfejlesztés elsősorban a menedzselt környezetet célozza meg, ezt tekinti elsődlegesnek. Mivel azonban a mobil eszközök erőforrásai korlátozottak, egyes esetekben a natív környezet használata is szükségessé válik. A felhasználói igények összetettségének növekedésével és a multiplatform alkalmazások terjedésével a natív fejlesztés egyre fontosabb szerepet tölt be az Android világában. Ily módon indokolt a natív felület részletes vizsgálata.

A szakdolgozat kidolgozása során feladatom az volt, hogy egy olyan teljesítménymérő alkalmazást tervezzek és valósítsak meg, melynek segítségével kiértékelhetem az Android natív programozói felületét. A dolgozatban bemutatom a felület működését különös tekintettel a natív fejlesztés előnyeire és hátrányaira. Különböző algoritmusok segítségével összehasonlítom a menedzselt és a natív kód teljesítményét, elemzem a két felület közötti átjárás lehetőségeit és az ezekkel járó overhead-et. Ezt követően bemutatásra kerül a szakdolgozat keretében készített teljesítménymérő alkalmazás felépítése, majd ezen keresztül egy natív programrészeket is tartalmazó alkalmazás fejlesztésének menete. A dolgozat a fejlesztési lépések mérföldköveinek és a látens veszélyek kiemelésével is foglalkozik.

A dolgozat mérési eredményeinek fényében megállapítható, hogy a natív implementáció gyorsabb lefutású, mint Java megfelelője. Emellett az elemzés arra is rámutat, hogy a natív és a menedzselt környezetek közötti kapcsolattartás nem elhanyagolható mértékű többletterhet jelent a rendszer számára.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.