Miben más egy mobilalkalmazás, mint bármely weboldal asztali alkalmazása?
A webalkalmazás alapvetően internet-alapú rendszer, amely a mobil eszköz webböngészőjén keresztül érhető el. Ez esetben a program használatához nem szükséges azt letölteni az okostelefonra. Ezzel szemben a mobilalkalmazások tervezése kifejezetten okoseszközökre történik. Alapvetően kétféle típust különítünk el, amelyeket bemutatunk a továbbiakban.
A natív alkalmazást egy adott mobileszközre fejlesztik, azt közvetlenül a készülékre telepítik. Ezeket a felhasználók általában letöltik az online alkalmazásboltokból. Egy natív applikáció teljesen kompatibilis az eszköz hardverével és natív funkcióival, mint például a gyorsulásmérővel vagy a kamerával. A webalkalmazások viszont csak korlátozott mértékben férhetnek hozzá az eszköz natív szolgáltatásaihoz.
A fejlesztés elkezdése előtt szükséges eldönteni, hogy az alkalmazásnak a célcsoport számára weben, mobilapplikáción, asztali gépen vagy esetleg mindhárom platformon keresztül szükséges-e elérhetőnek lennie. Amennyiben komplex kivitelezésre van szükség, úgy a cross-platform alkalmazás adja a megoldást. Esetében egy kódbázis elég több felületet célzó fejlesztésre is. Egy ilyen programozási folyamat esetén az alkalmazás forráskódja a végfelhasználók eszközeire már a megfelelő platform natív kódjaként kerül fel, ezzel megugorva a már említett hibrid appok minőségét és korlátait.
Érvek a különböző formák mellett
Természetesen minden környezetnek megvannak a maga pozitívumai és negatívumai. Az adott alkalmazás célcsoportja és a megrendelő cég személyisége alapján érdemes meghozni a döntést, mindenesetre készültünk pár érvvel, hogy segítsünk a választásban.
A webes fejlesztés előnyei
- Közvetlenség: egy weboldal azonnali elérést biztosít a felhasználók számára, bármelyik internetes böngészőt is használják.
- Kompatibilitás: egy webhely a használati eszköztől függetlenül univerzálisan működik, míg egy natív alkalmazásnál gyakran van szükség eszköztípusonként külön fejlesztésre.
- Bővíthetőség: egy mobilbarát weboldal tartalmi frissítése, szerkesztése vagy plusz funkciókkal való ellátása egyszerűbb és gyorsabban megvalósítható feladat.
- Megoszthatóság: a webhely URL címének megosztása a felhasználók már bevett szokása, amely ma már könnyed ujjgyakorlat bárkinek.
- Kisebb anyagi ráfordítást igényel: egy weboldal felépítése akár kivitelezővel, akár önállóan levezényelve alacsonyabb bekerülési költséggel jár, és optimális esetben rövidebb idő alatt is megoldható.
A mobilalkalmazás fejlesztés előnyei
- Egyedi felhasználói élmény: gyakorlatilag végtelen számú lehetőség áll rendelkezésre, így a felhasználó számára olyan felületet hozhatunk létre, ami egyszerű, használata kényelmes és bővelkedik hasznos funkciókban.
- Offline is elérhető: egy mobilapplikációt akkor sem kell nélkülöznünk, amikor a repülőn ülünk, távol vagyunk a civilizációtól, vagy egyszerűen nincs internetelérésünk.
- A felhasználó tovább marad: globális viszonylatban a mobiltelefon-használat mindössze 14%-a történik internetes böngészőben, míg 86% a különféle alkalmazásokon belül fut.
- Automatizálható ügyfélszolgálat: mobilapplikációval egyszerűsíthető a vásárlás folyamata és automatizálható a leggyakoribb kérdések megválaszolása is, így szabad kapacitást nyerhetünk az ügyfélszolgálati teendőknél.
- Segít versenyelőnyhöz jutni: egy mobilalkalmazás kiemelhet minket versenytársaink közül, így segíthet magasabb értékekhez juttatni márkánkat.
A cross-platform fejlesztés előnyei
- Alacsonyabb költségek és rövidebb fejlesztési idő: jelentősen csökkentjük a komplexitást azáltal, hogy közös kódbázist és fejlesztési eszközöket használunk, így nem több különböző programozási nyelvhez értő szakemberre van szükség, hanem egy kisebb csapat is elegendő. Ezáltal nem csak csökken a fejlesztők bére és a menedzsment költsége, hanem a közös kódbázis miatt nem szükséges ugyanazon funkciókat többször, eltérő eszközökre fejleszteni.
- A kezdetektől nagyobb felhasználói bázis: a több eszközre történő kódolás kiváltása miatt a költségvetés nem köti a kezünket, hiszen a cross-platform megoldással már induláskor számos felületen jelen lehet lenni, ezáltal több felhasználóhoz eljutni.
- Uniformitás: nem csak könnyedén létrehozható a felhasználók számára az egyforma, érthető UX és UI, hanem a könnyű átjárhatóság és szinkronizáció is támogatható a különböző platformok között. Így kevesebb terhet helyezünk a felhasználóra, ezzel erősítve az elköteleződést.
Érvek a különböző formák ellen
A végső döntés meghozatalához nemcsak a pozitívumokat szükséges figyelembe vennünk. A fentebb ismertetett előnyök mellett nézzünk meg pár hátulütőt is.
A webes fejlesztés hátrányai
- Mobilkészülékbe épített szenzorok használatának hiánya: a modern böngészőkben némely szenzorhoz (lokáció, kamera, mikrofon) már lehetséges jogosultságot kérni, de ezek kiszolgálása esetleges és az általuk szolgáltatott adatok is szegényesebbek.
- Túlzott általánosság: mivel a webes fejlesztés esetén nagyon sok platformon megjelenhet a szolgáltatott tartalom, így kiaknázatlanul maradnak a felületspecifikus működések.
A natív mobilalkalmazás fejlesztés hátrányai
- Magas erőforrásigény: mivel ez esetben minden egyes mobil platformra külön-külön fejlesztjük az alkalmazást, így több fejlesztő csapatot szükséges fenntartani, valamint a tesztelést is felületenként szükséges elvégezni.
- Hosszú fejlesztési idő: az előzőekben említett okok miatt a fejlesztési idő jóval tovább tarthat.
- Hosszú élesítési folyamat: a natív mobilapplikációkat a hivatalos alkalmazásboltokba szükséges feltölteni, ahol többféle követelménynek is meg kell felelni. Az élesítés csak a felületek review folyamatai után mehetnek végbe.
A cross-platform fejlesztés hátrányai
- Később érkeznek meg a platform újdonságai: általánosságban elmondható, hogy jelenleg a gyártók nem első kézből támogatják ezeket a megoldásokat, így előfordul, hogy pár hetet várni kell egy adott platform újdonságainak támogatására. Legutóbb az iOS dark mode support érkezett meg több napos késéssel a natív iOS appokhoz képest.
- A platform egyedi megoldásainak figyelmen kívül hagyása: az előnyöknél kifejtett harmadik ponthoz szorosan kapcsolódik ez az egység, ugyanis cross-platform esetén nehezebb az egyes operációs rendszerek egyedi irányvonalaihoz alkalmazkodni, hiszen a fejlesztői eszközök kevesebb segítséget nyújtanak ehhez.
- Nem svájci bicska: bár az üzleti és B2C alkalmazások legnagyobb része lefedhető egy ilyen megoldással, lehetnek a termékünknek olyan egyedi aspektusai, amelyek igénylik a többféleképpen megírt natív kódot. Bár a modern cross-platform megoldások egyre jobban kezelik például a kiterjesztett valóságot is, arra még várni kell, hogy ezekre is ez legyen a legjobb alternatíva.
Konklúzió
A fentiek alapján látható, hogy amikor felmerül az igény egy mobil eszközökön használható alkalmazás fejlesztésére, több úton is lehetséges elindulni. Mielőtt a fejlesztéshez szükséges technológiai háttért kiválasztjuk, szükséges mérlegelni a legfontosabb kritériumokat, amelyeket az alkalmazásunkkal szemben támasztani kívánunk.
Vegyünk pár példát kritériumi csoportokra:
- Gyorsan fejleszthető / olcsó / mobil készülékben lévő hardvert nem kihasználó: ebben az esetben a reszponzív webes technológiák azok, amelyekkel a leghamarabb célt érhetünk. Itt tulajdonképpen egy weboldalt fejlesztünk, amely mobilos nézetre van optimalizálva.
- Közepes fejlesztési idő / offline működés / szenzorok használata / általánosabb feladatok: ekkor a cross-platform megoldások fejlesztése lehet a megfelelő, hiszen itt már a mobiltelefon sokkal jobban kihasználásra kerül. Bár korlátozottabb szinten, de elérhető mindenféle szenzoradat, elképzelhető akár teljesen offline működés is, viszont a platformok egyedi működései és újdonságai kevésbe támogatottak.
- Robosztus / nagy rendelkezésre állású / karbantartható / szenzorokat nagy mértékben használó feladatok: nagy felhasználói bázisú, érzékeny üzleti folyamatokat támogató és a mobileszköz hardverét mélyen kihasználó alkalmazások számára ez a legmegfelelőbb választás.