Egy mobil alkalmazás fejlesztésekor nagy kihívás a különböző platformokra való fejlesztés. Gondoljunk csak arra, hogy az iOS, Android, Blacberry, Windows Phone készülékekre más-más nyelven és környezetben kell fejleszteni. Ez azt jelenti, hogy ahány platform, annyi különböző alkalmazás. Ha cross platform HTML5 JavaScript alapú alkalmazást fejlesztünk elvileg csak egy kódot kell karbantartani, de persze ez sem ennyire egyszerű. Az előadáson bemutatásra kerülnek a különböző mobil cross platform megoldások (HTML5, JavaScript alapokon) és a különböző platformokon létező HTML5 CSS különbségek.
3. Sebesség 3/32
native webview
String text="1234567890"; var text = "1234567890";
long start = System.currentTimeMillis(); var start = new Date().getTime();
for (int i = 1; i<100000; i++) { for ( var i = 0; i < 100000; i++) {
text.indexOf("0"); text.indexOf("0");
} }
long end = System.currentTimeMillis(); var end = new Date().getTime();
Átlag 2.3.6: ~ 30 ms Átlag 2.3.6: ~ 75 ms
Átlag 4.1: ~ 25 ms Átlag 4.1: ~ 42 ms
Átlagos mérési idő 100 mérésenként, android-on mérve
5. Karbantartás 5/32
native webview
● platformonkénti kódbázis ● egy kódbázis
● bug lista platformonként (bug ● egy hibalista
szegmentáció) ● egy feautre lista
● minden feature-t plarformonként ● egy release minden platformra
● releasek platformonként (release
szegmentáció)
16. jQuery, jQuery mobile 16/32
Előnyök
● Desktop világban elterjedt
● Sok plugin
● Gyorsan lehet működő alkalmazást fejleszteni
Hátrányok
● Sebesség
● 1.1-ben page transition-nél flickering probléma volt
● Felesleges design elemek vannak benne
31. Összefoglalás 31/32
Native HTML5
● Erősen sebesség függő ● Cél az egységes kinézet minél több
alkalmazás platformon
● Komplex alkalmazások (Office) ● Minél több platformon működő app
● Játékok ● Erősen API orientált app
● Egy, max két platformos appok ● Startup, pilot appok
● Appra fordítható erőforrások ● Szűkösek az appra szánt erőforrások
mennyisége nem szempont ● Szoros a határidő
(Facebook)