Vývoj mobilných aplikácií v PhoneGap-e

5. december 2013 | projekty, technológie

S frameworkom PhoneGap pracujeme viac ako dva roky. Aké sú výhody a nevýhody PhoneGap-u? S čím je nutné počítať pri HTML, CSS a javascript programovaní pre smartfóny?

Prostredie mobilných telefónov je veľmi živé a rôznorodé. Existuje množstvo mobilných zariadení - napríklad pre systém Android je ich viac ako 4.000. Každé zariadenie môže pracovať s rôznou verziou operačného systému, operačné systémy sú často aktualizované a zariadenia majú často rozličné technické parametre, ako napr. rozlíšenie displeja či hustotu bodov.


Čo je to PhoneGap?

PhoneGap je framework/wrapper, ktorý umožňuje zrýchlený vývoj mobilných aplikácií prostredníctvom HTML, CSS a javascript-u. Pomocou tohoto frameworku je možné takisto pristupovať k zabudovaným funkciám telefónu, ako napríklad fotoaparát, GPS lokalizácia, kompas alebo kontakty. Následne po naprogramovaní je možné exportovať aplikáciu pre systémy iOS, Android, Amazon Fire OS, BlackBerry 10, Firefox OS, Windows Phone alebo Windows 8.

Výhody PhoneGap-u

Medzi najväčšie výhody patrí šetrenie nákladov a tým pádom aj času na vývoj takejto aplikácie. Nie je potrebné vytváranie samostatných natívnych aplikácií. Čiže napríklad nie je potrebné programovať aplikáciu pre iOS v COCOA, a taktiež nie je potrebné samostatne programovať tú istú aplikáciu pre Android v JAVA.

Mnohokrát nie je potrebné ovládať žiaden z vyššie spomínaných jazykov, či framework-ov a vystačíte si s klasickým HTML, CSS a javascript-om. No iba vtedy, ak sa nechystáte vyvíjať niečo špecifickejšie. Ak budete potrebovať upraviť existujúce pluginy alebo vyvíjať vlastný, znalosť COCOA a JAVA bude určite potrebná.

Výhodou je taktiež rozsiahla komunita vývojárov, podporných odborných fór, zdrojov, príkladov a množstvo už existujúcich pluginov. Napríklad pre prácu s Google Analytcis API, Facebook SDK, PUSH notifikáciami alebo aj inAppPurchase.

Nevýhody PhoneGap-u

Keďže celá aplikácie beží v tzv. Web View (ako keby v prehliadači), aplikácia je pomalšia ako natívna aplikácia, pretože nevyužíva natívne UI prvky konkrétnej platformy. Rozdiel v rýchlosti je možné pocítiť najmä na starších zariadeniach alebo v prípade využívania komplexnejších API, ako napríklad pre Google Maps API.

Optimalizácia a testovanie sú o niečo náročnejšie než pri väčšine mobilných aplikácií. Množstvo rôznych zariadení a špecifického správania sa robia vývoj najmä pre operačný systém Android obtiažnejší, pretože nie každé zariadenie je fyzicky možné otestovať.

Záver

V prípade, že potrebujete za nižšie náklady v krátkom čase vyvinúť jednoduchú aplikáciu napríklad pre iOS, môžeme PhoneGap iba odporúčať. Avšak pre zložitejšie aplikácie, najmä na design, odporúčame zvoliť technológiu Adobe Air.

hore