BT

Diffuser les Connaissances et l'Innovation dans le Développement Logiciel d'Entreprise

Contribuez

Sujets

Sélectionner votre région

Accueil InfoQ Actualités Quel est le problème du HTML5 mobile ?

Quel est le problème du HTML5 mobile ?

De récentes recherches ont montré que contrairement à ce que l'on entend souvent, le principal défaut du HTML5 n'est pas son manque de performance mais plutôt un manque d'outils de profilage et de débogage, ainsi qu'une absence de certaines APIs.

Après un sondage auprès de 6 000 développeurs dans le monde, une analyse de plus de 30 000 applications Android, une revue de 42 frameworks et outils HTML5, et l'interview de 32 experts au sujet des différences entre des applications natives et HTML5, VisionMobile a publié ses conclusions dans le rapport de recherches "How can HTML5 compete with Native?", dont les informations les plus significatives sont relayées dans cet article.

Le rapport distingue 4 principales pratiques de développement pour les applications HTML5 :

  1. Navigateur mobile – Web apps ou sites adaptés pour les mobiles, s'exécutant sur le navigateur mobile
  2. Conteneur natif – Web apps packagées dans un conteneur natif et déployées via un magasin d'applications
  3. Convertisseur Web vers natif – apps écrites en JavaScript et compilées vers du code natif
  4. API natives JavaScript – Applications HTML5 écrites pour des systèmes les supportant nativement, comme Firefox OS, Winfows 8 ou Chrome OS.

Voici les informations clés de ce rapport:

  • 61% des développeurs développent des Web apps pour le navigateur mobile
  • 63% des applications Android sur la version US de Google Play ne peuvent être écrites en HTML5 pour le navigateur car certaines APIs ne sont pas encore implémentées
  • Le pourcentage des applications pouvant être implémentées en HTML5, qui est de 37%, serait de 58% si les navigateurs ajoutaient le support de la gestion d'énergie et des APIs WiFi
  • 39% des développeurs créent des applications HTML5 non basées sur l'utilisation du navigateur
  • 49% des applications Android US pourraient être refaites en utilisant un conteneur natif, 63% avec un convertisseur web vers natif, et 98% avec du JavaScript natif.

Le graphique suivant montre ce qui rend le HTML5 attractif :

Les problématiques les plus dérangeantes pour les développeurs sont montrées dans la liste suivante :

Plusieurs développeurs considèrent que le principal problème de HTML5 est son manque de performance. Mais après avoir questionné plusieurs experts sur ce point, il semble que cette idée soit fausse puisque les performances s'améliorent naturellement avec de nouvelles générations de matériel, de meilleurs compilateurs, la possibilité d'utiliser Asm.js, etc. Selon eux, Le problème est plutôt d'ordre politique. Plus précisemment, le fait que les principaux éditeurs de navigateurs soient également des fournisseurs de systèmes d'exploitation mobiles est problématique car ils souhaitent distribuer les applications à travers leurs magasins d'applications respectifs. Google encourage les applications natives Chrome, Apple semble supporter les derniers standards HTML5 mais "laisse de côté les APIs relatives aux performances, comme WebGL". De plus, selon le rapport, HTML5 entretient le mythe que son développement est facile, mais il se révèle en fait plutôt difficile, notamment à cause d'un manque d'outils de débogage et de profilage.

Les APIs les plus utilisées par les applications sur Google Play sont :

La standardisation des APIs HTML5 et leur adoption par les navigateurs sont décrites dans ce graphique :

Le tableau suivant indique les APIs qui pourraient faire la différence si elles étaient supportées, selon la méthode de développement utilisée, ainsi que le pourcentage d'applications supplémentaires qui pourrait être développé en conséquence :

Utilisation API % d'applications
Navigateur mobile Gestion énergie 13%
Conteneur natif Gestion énergie 12%
Convertisseur web vers natif WiFi 21%
API JavaScript natives Calendrier 1.4%

Le rapport conclut avec différentes obversations et recommendations :

  • Les navigateurs devraient implémenter plus d'APIs, à commencer par la gestion de l'énergie et du WiFi. Les développeurs devraient pousser les fournisseurs de navigateurs à implémenter plus d'APIs
  • Une solution de packaging standardisée devrait être réalisée pour les applications JavaScript natives, afin de pouvoir simplement packager une application puis la déployer sur chaque système supporté
  • Une API d'identité du matériel devrait être ajoutée pour contourner la crainte liée à l'utilisation des cookies et au non-respect de la vie privée
  • Les développeurs devraient être plus informés sur les possibilités offertes par HTML5, ses avantages et ses inconvénients
  • Une API de Debug devrait être développée pour permettre la création d'un set d'outils performants

Evaluer cet article

Pertinence
Style

Contenu Éducatif

BT