Multiplatform fejlesztés kihívásainak vizsgálata egy konkrét alkalmazás kivitelezésének tükrében

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

A mobil szoftverfejlesztés kompetitív világában nem csak a célközönség – azaz a leendő felhasználói kör –, hanem a cél platform megválasztása is kritikus feladat. A piac kifejezetten megosztott, a Google Android operációs rendszerének van a legnagyobb felhasználói bázisa, de az Apple iOS szorosan követi. A terület harmadik szereplője a Microsoft Windows Mobile rendszere, amely bár kevesebb, mint 10 százalékos részesedéssel bír, még mindig megfontolandó cél egy alkalmazás fejlesztésénél. Ritka, hogy egy sikeres alkalmazás fejlesztői megengedhetik maguknak a csupán egy platform megcélzását, ugyanakkor a több platformra fejlesztés jelentős erőforrásokat igényel. Amikor a fejlesztő(k) kiválasztották a cél platformokat, akkor még a megfelelő eszközök közel sem triviális feladatával is szemben találják magukat.

Alapvetően kétféle út van, amelyen egy fejlesztő vagy cég elindulhat: egy cross-platform megoldás – azaz egyetlen közös programozási nyelv és egy cross-platform keretrendszer használata – vagy natív alkalmazások fejlesztése az egyes platformokra. Utóbbit gyakran multiplatform fejleszésnek nevezik, bár ez a fogalom egyaránt használatban van a több platformra fejlesztett alkalmazásokra általánosan.

A cross-platform megoldások használata csábító lehet, de az ezt a megoldást választó fejlesztők sokszor teljesítmény és felhasználói élménnyel kapcsolatos problémákkal találkoznak. További hátrány, hogy a fejlesztés túlságosan kötődik egy adott keretrendszerhez, amely nem feltétlenül tartalmaz minden szükséges építőelemet, és gyakran a projektnek kell alkalmazkodnia a technológiához. Ezeken kívül az ilyen keretrendszerek általában le vannak maradva a platformokon elérhető technológiákat illetően.

Hiszem, hogy a jó szoftveres architektúra platformfüggetlen, és lehetséges multiplatform alkalmazást hatékonyan lefejleszteni, amely közös alapelvek és minták mentén épül fel, miközben az egyes platformok natív technológiáit és funkcióit is kihasználja. A diplomamunkámban ezt a megközelítést alkalmazom és egy konkrét alkalmazást fejlesztek Android, iOS és Windows (Mobile) rendszerekre. Elsőként megfelelő technológiákat és egyéb megoldásokat keresek, amelyek megkönnyítik a multiplatform fejlesztést, majd lefektetek alapvető szabályokat és paradigmákat, amelyeket követni fogok, végül pedig a gyakorlatban alkalmazom ezeket, hogy bebizonyítsam állításaimat.

Letölthető fájlok

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