1er

intégrateur européen de solutions open source

       

Actualités

[22/02/2016] Smile ouvre 300 nouveaux postes

Après avoir recruté 260 collaborateurs en 2015, Smile annonce une nouvelle campagne de recrutement de grande envergure. >>

[15/10/2015] Découvrez l'édition 2015 du Livre Blanc Big Data !

Qu'est-ce que le Big Data ? Quels sont les cas d'usages couverts par les solutions de collecte et valorisation de masses de données ? Quelles sont les meilleures solutions open source dans ce domaine ? À découvrir dans la nouvelle version du livre blanc Smile ! >>

[10/09/2015] Découvrez le Guide Drupal 8 !

Smile publie un nouveau Guide dédié à Drupal 8, en partenariat avec Acquia. Un livre blanc complet sur la dernière version du CMS à télécharger gratuitement. >>

Toutes les actualités
picto
       
       

Quelques références Mobile réalisées par Smile

Veolia eau
La nouvelle application mobile de Veolia Eau, développée par Smile, vous permet d'effectuer la plupart de vos démarches quand vous le souhaitez et où que vous soyez. >>
Réalisations SPIE
Un florilège de nouveaux outils de communication accompagne l’engagement du Groupe dans l’économie verte. En lançant son nouveau site web corporate incluant une v... >>
Krys
Les opticiens Krys ont confié à Smile la réalisation du site e-commerce sous Magento. Retrouvez un catalogue de plus de 530 références. >>
De Dietrich
Le groupe industriel - leader sur le marché de la condensation et client historique confie à Smile la réalisation de deux sites mobiles pour ses filiales Oertli e... >>
       


Guillemet ouvrant PhoneGap le framework
multi plateformes Guillemet fermant

PhoneGap Cordova

PhoneGap Cordova

Le principe :

PhoneGap Cordova est un Framework de développement mobile qui permet de développer des applications mobiles cross-plateformes pour la plupart des OS du marché : iOS, Android, Windows Phone, BlackBerry et Bada. Là où de nombreux frameworks de développement cross-plateformes sont basés sur une logique de « traduction » d’un langage dédié dans les langages natifs des différents OS, PhoneGap Cordova a une approche très différente qui mérite des explications.

Tous les smartphones ont un point commun : leur capacité à comprendre et interpréter les technologies du web, HTML, CSS et JavaScript. Cela leur permet d’afficher des pages web qui deviennent de plus en plus riches et techniquement avancées. CSS offre des rendus visuels très poussés sans utiliser d’images et JavaScript permet d’ajouter toute l’intelligence nécessaire à des règles de gestion, interactions et niveaux d’intégration complexes.

Ce sont alors les navigateurs natifs et plus précisément les moteurs de rendus des smartphones qui sont appelés pour effectuer ce travail, et tous sont censés savoir le faire de la même manière.

Malheureusement pour nous, il en va tout autrement pour les fonctionnalités qui ne sont pas de type « web ». On parle alors des fonctions natives des smartphones : caméra, flash, vibreur, gyroscope, agenda, push notification, stockage local, moteur 3D, etc. Ces fonctions sont aujourd’hui réservées aux applications mobiles distribuées et téléchargeables sur les stores (Appstore, Google Play par exemple). Elles nécessitent d’être appelées via des développements en langages natifs.

Comme son nom l’indique, PhoneGap vise à combler le « gap » entre le web (HTML, CSS, JS) et les applications natives et leurs fonctions spécifiques. Du coup, le framework se présente comme un ensemble de morceaux de code développés en langages natifs pour chaque OS et appelables comme s’il s’agissait de fonctions JavaScript issues du web.

Exemple : pour prendre une photo, et ce quelque soit l’OS sur lequel on développe, on utilisera dans une page HTML et au sein d’un script JS la fonction « camera.getPicture() » et le framework se chargera selon l’OS d’utiliser la bonne ligne de commande en langage natif.

Son utilisation et le résultat :

Pour développer un projet sous PhoneGap Cordova, on commence par développer une application web mobile en HTML, CSS et JS puis on l’intègre à PhoneGap Cordova pour utiliser l’ensemble des plugins disponibles. Cette structure à base de plugins rend finalement illimitées les possibilités de l’outil. Lorsque celui-ci ne permet pas de faire ce que l’on souhaite, il suffit de développer en langages natifs la brique manquante et de l’intégrer au projet sous forme de nouveau plugin.

A la sortie, et une fois la transformation effectuée, on se retrouve avec une application pouvant être distribuée sur les stores. Elle contiendra l’ensemble des données utiles à son fonctionnement et pourra être installée sur le smartphone comme toute application mobile. Il ne s’agit donc pas d’une coquille qui affiche des pages web, les pages sont bien dans l’application et ne nécessitent pas de connexion pour s’afficher. Lorsque l’utilisateur lance son application, l’appel au moteur de rendu du navigateur est totalement transparent tout comme l’appel à PhoneGap Cordova.

En termes de visuels et d’effets, on pourra s’appuyer sur tout ce que savent maintenant fournir HTML5 et CSS3, dans les limites de ce que les navigateurs et OS sauront interpréter. Il s’agira alors d’un arbitrage entre rendu / performance et taux de couverture qui tend à se simplifier plus les navigateurs évoluent.

Un projet open source entre les mains de la fondation Apache et supporté par Adobe.

Historiquement, l’outil PhoneGap (open source sous licence Apache V2) a été édité par la société Nitobi. Celle-ci a été rachetée fin 2011 par Adobe System. Dans la lignée de son positionnement récent sur l’open source, Adobe a reversé le projet à la fondation Apache afin d’en garantir la pérennité et son statut open source. Le projet a été renommé en Apache Cordova afin de se distinguer du produit PhoneGap d’Adobe. D’où les deux noms.

Un coup d’œil aux contributeurs permet de se rendre compte du consensus autour du projet : Adobe, IBM, Google, Android, SalesForce, RIM(BlackBerry), Microsoft, Intel…

De son coté, Smile participe à l’effort en fournissant des pluggins et différentes briques dont les premières sont présentes sur notre GitHub : https://github.com/Smile-SA/

Retour d’expérience et vision  après deux ans d’utilisation chez Smile :

PhoneGap Cordova est d’abord une approche très séduisante du développement sur mobile qui s’intègre à l’orientation « web » que prend aujourd’hui le mobile (cf. MWC 2013). Sa structure en plugins le rend très flexible et puissant dans le sens où si quelque chose manque, il suffit de le développer. L’outil en lui-même présente donc peu de facettes exposées à la critique.

Par contre, du coté des OS et des navigateurs on pourrait s’attendre à mieux… L’homogénéité et l’universalité de leur interprétation des langages Web est encore parfois toute relative, comme par exemple lorsque d’une version d’un OS à l’autre, un effet de dégradé change totalement d’aspect, ou lorsqu’un OS a décidé de ne pas interpréter comme les autres un geste tactile… Dans ces cas là, c’est l’expérience des développeurs qui parle et leur capacité à anticiper, contourner ou corriger ces manques, qui sera indispensable pour mener à bien le projet.

En termes de performances ou du moins de ressentis, tout sera lié au navigateur mais aussi à la qualité du code et des librairies utilisées… Le web traditionnel sur desktop est devenu extrêmement permissif, et les habitudes de développements ne respectent plus beaucoup les bonnes pratiques. Trop de bande passante et trop de puissance de calcul ont réduit les efforts d’optimisation.

Sur PhoneGap et smartphone, on se doit de revenir à ces bonnes pratiques pour offrir un résultat vraiment représentatif de ce que permettent les technologies web sur mobile.

Pour conclure, PhoneGap Cordova répond à la fois à un besoin court terme de développements mobiles cross-plateformes, ET à un choix de technologies standardisées et pérennes. PhoneGap Cordova ne correspond qu’à un complément aux technologies web, et non pas un framework duquel on ne pourra plus sortir.

D’ailleurs comme son éditeur historique le mentionnait, sa vocation principale est à long terme de disparaître le jour où les navigateurs mobiles permettront un accès complet aux « gadgets » des smartphones. A ce moment-là, vous pourrez vous passer du framework, en ressortir votre code HTML, CSS et JS et serez prêts à viser la plupart des appareils et navigateurs.

Plus d'infos sur le Guide Open Source

Retrouvez plus d'informations sur la solution PhoneGap Cordova sur le site www.open-source-guide.com édité par Smile.