We kunnen er niet naast kijken: 2013 was een topjaar voor de mobiele wereld. Meer en meer mensen vinden de weg naar een mobiel platform. De verkoop van mobiele media zoals iPads en iPhones brak alle records. Android telt ondertussen meer dan 1 miljard geactiveerde apparaten en Apple zou niet ver van dat cijfer zitten. Een van de meest gezochte functies in de IT wereld was die van Mobile developer, en dat is niet meer dan logisch. Als bedrijf kan je niet meer zonder een mobiele versie van je website (al dan niet via responsive design) of een app.
In 2013 schoten de mobile development start-ups als paddenstoelen uit de grond. Er zouden volgens het onderzoeksbedrijf Gartner naar schatting zo'n 102 miljard apps gedownload zijn in 2013, goed voor een omzet van net geen 20 miljard euro. We kunnen gerust zeggen dat apps aan het boomen zijn, en dat deze trend, gezien de haast oneindig vele toepassingen, in 2014 zal aanhouden.
Traditioneel gebruik je HTML voor een mobiele versie van je site, deze haalt pagina's van de web server op en rendered die zoals een desktop browser op je scherm, je hebt dus een internet connectie nodig. Een app word op zijn beurt geprogrammeerd in Java (Android) of Objective C (Apple iOS) en vervolgens, na goedkeuring, gedownload naar je apparaat. Het voordeel is dat je deze kan gebruiken zonder internet connectie. Je kan ook gebruik maken van de hardware voorzieningen van je apparaat zoals GPS locatie, camera, adresboek, ... Een groot nadeel is echter dat je ontwikkelkosten moet verdubbelen omdat Android en iOS apps apart ontwikkeld moeten worden in elk hun eigen taal.
Adobe zag het gat in de markt en kwam aanzetten met de toepasselijke naam PhoneGap. Dit platform is bedoeld om een app die geschreven is in HTML, CSS en JavaScript makkelijk te porten naar andere platformen zoals Android of iOS om het te "wrappen" zoals een native app. Zo ontwikkel je maar in 1 taal, terwijl je wel alle grote platformen ondersteunt.
De populaire sociale bierdrinkers app Untappd is hier een voorbeeld van. Het onderscheid is nauwelijks te merken. Je kan hem offline gebruiken en alles werkt zeer vlot.
Met de komst van nieuwe devices en betere ondersteuning van HTML5 en CSS3 vervaagd de grens tussen HTML en native apps op mobiele apparaten. Via Cordova (wat ook in PhoneGap zit) kan je met behulp van de JavaScript API ook de hardwarefuncties gebruiken van maar liefst 7 platformen: iOS, Android, Blackberry, Windows Phone, Palm WebOS, Bada, en Symbian. Je hoeft ook niet altijd online te zijn want HTML heeft ondertussen ook localStorage waarbij je data kan opslaan om nadien te gebruiken zonder internet connectie. CSS3 heeft ook een trucje om animaties bijna even smooth te maken als die van een native app.
Een lijstje van de gesupporteerde hardware functies per platform kan je hieronder vinden.
Feature | iPhone /iPhone 3G | iPhone 3GS and newer | Android 1.0 – 4.2 | Windows Phone | BlackBerry 10 and PlayBook OS | 4.6–4.7 | 5.x–6.0+ | Bada | Symbian | webOS | Tizen | Ubuntu Touch |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Accelerometer | Yes | Yes | Yes | Yes | Yes | N/A | Yes | Yes | Yes | Yes | Yes | Yes |
Camera | Yes | Yes | Yes | Yes | Yes | N/A | Yes | Yes | Yes | Yes | Yes | Yes |
Compass | N/A | Yes | Yes | Yes | Yes | N/A | N/A | Yes | N/A | Yes | Yes | Yes |
Contacts | Yes | Yes | Yes | Yes | Yes | N/A | Yes | Yes | Yes | N/A | Yes | N/A |
File | Yes | Yes | Yes | Yes | Yes | N/A | Yes | N/A | N/A | N/A | Yes | Yes |
Geolocation | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Media | Yes | Yes | Yes | Yes | Yes | N/A | N/A | N/A | N/A | N/A | Yes | Yes |
Network | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Notification (alert, sound, vibration) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Storage | Yes | Yes | Yes | Yes | Yes | N/A | Yes | N/A | Yes | Yes | Yes | Yes |
Het lijkt erop dat de combinatie HTML5, CSS3 en JavaScript een grote inhaalbeweging heeft gemaakt en veel van zijn tekortkomingen tegenover native apps weg heeft kunnen werken. Dit hebben we vooral te danken aan JavaScript. Een taal die stillaan begint te domineren op alle vlakken. De Git repositories van JS zijn in korte tijd geëxplodeerd. Kijk maar naar geweldige producten zoals AngularJS, Grunt en Node.js ... wie weet wordt het meest gezochte profiel van 2014 wel JavaScript Developer?