Web, Technologies, IA, Vidéo...

janv. 20, 2011

Interview - Retour sur WP7 vs iOS

Pourrais-tu te présenter en quelques mots ?

Dominique Siacci : je m'appelle Dominique Siacci, 21 ans, j'ai créé DuoApps avec mon associé au début de l'année 2009 à la fin de mes études. Nous développons des applications mobiles sur iPhone, iPad, Android et Windows Phone. La structure a un peu évolué entre temps (nous sommes désormais 4 dans l'équipe), et j'assure aujourd'hui seul la gestion de l'entreprise.

Mon profil est plutôt un profil technique (je suis développeur web à l'origine) et j'ai beaucoup développé sur iOS, notamment au démarrage de notre entreprise.

Plus loin dans cette interview, j'ai sollicité Christelle Thiry, qui est en charge des développements Android et Windows Phone 7 chez DuoApps afin qu'elle puisse apporter un point de vue plus technique que le mien.

Tu travailles depuis 2 ans maintenant sur iOS, qu’est ce qui t’a séduit dans ce langage ?

DS : Incontestablement, iOS, l'Objective-C, le framework Cocoa Touch, et par extension la procédure de validation des applications par Apple, imposent une certaine rigueur qui me semble saine. Au départ, j'avoue avoir été complètement désorienté, notamment à cause des problématiques à résoudre qui sont complètement différentes du développement web. La syntaxe d'Objective-C, qui est un langage très verbeux, est aussi déstabilisante, mais au final, il s'avère beaucoup plus logique à utiliser que n'importe quel autre langage.

Ce qui est plus plus attirant dans cette technologie est sans conteste iOS lui même, et plus généralement les terminaux (iPhone, iPad, etc.) qui ouvrent des possibilités extraordinaires dans la conception d'applications.

Windows Phone 7 est sorti depuis peu. Tu as réalisé une première application. Que penses-tu de ce nouvel environnement ?

DS : Très honnêtement, Windows Phone 7 me semble être le premier OS à pouvoir réellement prétendre faire concurrence à iOS. C'est pour cela que nous avons fait le choix de former quelqu'un à cette technologie. C'était une sorte de pari, car à l'époque où nous avons débuté le développement (c'est à dire cet été), nous n'avions pas eu l'occasion de tester un device en réel. Cela dit, nos impressions se sont confirmées très vite, lorsque nous avons pu disposer d'un téléphone prêté par Microsoft.

Sur le modèle de distribution, WP7 est davantage comparable à Android qu'à iOS, avec une offre de devices élargie. Microsoft a d'ailleurs fait un très bon choix en imposant des spécifications très strictes aux constructeurs, ce qui permettra peut-être d'éviter l'hétérogénéité calamiteuse d'Android. Sur tous ces points (qualité des devices, qualité de l'ergonomie du système, qualité des outils de développement), Windows Phone surpasse largement Android.

Nous avons commencé par développer l'application de l'hebdomadaire Marianne, ce qui lui a permis d'être parmi les deux premiers titres de presse français (avec Le Figaro) présents lors du lancement de la plate-forme. L'équipe web de Marianne est très dynamique, et il est très appréciable de travailler avec des gens conscients des enjeux du mobile.

Plus précisément  que est ton avis les outils de développements et du langage ?

DS : J'avoue ne pas avoir développé moi-même l'application de Marianne, il s'agit de notre développeuse Android, qui a consacré un peu plus de deux mois à se former sur cette nouvelle plate-forme. Cependant, j'ai suivi d'assez près le développement, et je dois dire que les outils me semblent très bien conçus. Microsoft a clairement fait de gros efforts. De plus, Silverlight est un framework qui a fait ses preuves, et qui présente une communauté assez importante - ce qui n'était de fait pas le cas d'iOS à sa sortie.

Christelle Thiry : Les outils ainsi que le langage sont très stables. Cet environnement de développement était déjà très utilisé avant la sortie de WP7.

Le framework Siverlight est vraiment bien pensé, ce qui, je trouve, permet une programmation très intuitive.

Est-ce comparable à iOS ?

DS : On sent clairement qu'il reste du chemin à parcourir à Microsoft avant d'atteindre le niveau d'iOS. Cependant, il y a tout de même près de quatre ans et quatre versions d'écart entre les deux systèmes. Mais je pense sincèrement que la comparaison n'a pas à se faire avec iOS, plutôt avec Android. iOS et WP7 ont vocation à perdurer tous les deux, dans une complémentarité assez bonne. Ce sont deux approches ergonomiques réellement différentes, deux approches de commercialisation différentes...

Personnellement je fais confiance à Microsoft pour faire évoluer son système dans le bon sens, en ne commettant pas les mêmes erreurs que Google. A mes yeux, Android est un casse-tête pour les développeurs. Il y a aujourd'hui 4 versions de l'OS qui cohabitent, ce qui nous empêche clairement de pouvoir franchir un pas fonctionnel. On est de fait obligés d'assurer la rétro-compatibilité de nos applications ce qui est assez contrariant...

CB : A mon sens, les outils de développement WP7 peuvent facilement être comparés à ceux d'iOS dans la mesure où ils facilitent vraiment le développement, ce qui n'est pas le cas du SDK Android. En revanche, au niveau du fonctionnement de l'OS, WP7 est beaucoup plus semblable à Android. Je parle surtout du cycle de vie d'une application. Bien sûr, au niveau de l'OS, il manque encore quelques fonctionnalités clefs pour rattraper iOS et Android (comme le multi-tâches).

Pour moi il n'y a pas de comparaison possible au niveau du développement en lui-même entre WP7 et Android. La programmation Android est très contraignante, et je ne parle même pas de la partie test et débugage de l'application avant la publication. En effet, il est impossible de tester une application sur tous les types de devices existants, que ce soit au niveau physique ou au niveau logiciel. En revanche, la publication immédiate sur l'Android Market (sans passer par un processus de certification) est vraiment très pratique du point de vue du développeur… Sur ce point, Microsoft a opté pour le même modèle qu'Apple.

(NDLR : Christelle n'a jamais développé sous iOS, mais elle a une bonne année d'expérience sur Android)

Qu’en est-il de l’intégration graphique ? Est-ce comparable à l’Interface Builder pour iOS ou à l’intégration plus laborieuse sous Android ?

CT : N'ayant jamais développé pour iOS, je ne pourrais dire si l'intégration graphique est comparable à Interface Builder. En revanche, je peux dire qu'elle est beaucoup plus aisée que sur Android, grâce notamment à l'outil Expression Blend.

De plus les éléments graphiques du framework WP7 sont plus aboutis, Google n'ayant pas du tout joué sur l'esthétique pour son système.  Le problème, ou l'avantage, avec Android c'est que même au niveau de l'intégration graphique c'est totalement libre, ce qui donne une multitude de styles graphiques pour les applications, donc beaucoup d'hétérogénéité.

Et encore une fois le gros point noir de l'intégration graphique pour Android c'est le parc très large de modèles de devices (taille et résolution d'écran, clavier physique ou pas…). Microsoft étant beaucoup plus restrictif sur ce plan l'intégration graphique est plus simple et beaucoup plus gratifiante pour le développeur.

Merci à tous les deux.

nov. 15, 2010

Retour sur les conférences du ForumPHP (jour 2)

Déboguer son code - Xdebug

Xdebug est un outil développé et maintenu par Derick Rethans (http://derickrethans.nl). Il possède deux fonctionnalités : debug et profiling.

Derick nous présente une grande partie des éléments de configuration afin de réaliser les traces de debug les plus explicites possibles : ajout direct vers les fichiers présentant des problèmes, gestion de l'affichage des var_dump (profondeur d'affichage), etc...

Ensuite il nous présente la possibilité de faire du profiling et d'interpréter les données récupérées. Pour cela, un petit tour dans la configuration et ensuite des applications tierces sont mises à contribution : KCacheGrind ou WebGrind. Des plugins sont (seront) disponibles pour les différents IDE afin de travailler "en live" avec le serveur.

Un site web performant, tout est dans le réseau et le navigateur

Eric Daspet nous présente quelques méthodes afin d'augmenter les performances. Avant cela, des chiffres nous font prendre connaissances des effets bénéfiques de la performance d'un site web. Qui dit performance, dit augmentation potentielle du revenu et du business liée au site en question.

Nous rentrons ensuite dans des aspects plus techniques :

  • sur un appel de page : 5% du traitement est réalisé en back-end et 95% en front-end
  • 4 à 6 requêtes en parallèle par domaine sont possibles avec les derniers navigateurs, il est donc important de gérer au mieux /images, CSS, JS
  • mise en place de la compression Gzip, utilisation des Etags et autres entête de cache HTTP
  • utilisation de sprites pour les /images
  • regroupements des multiples fichiers CSS en un 1 seul (même chose pour les JS)
  • appel des JS externes avant le \</body> afin d'augmenter l'affichage de la page
  • utilisation du KeepAlive au niveau de la configuration Apache afin de réduire les temps de connexions TCP (à utiliser avec attention car elle augmente la charge CPU des serveurs).
  • amélioration de la gestion des DNS

Tout ceci afin de réduire les temps de latence et ainsi augmenter la performance du site.

Attaque sur les webservices

L'intervenant Renaud Bidou présente dans un premier temps la structure fonctionnelle des webservices puis les différentes technologies différentes. Je pensais connaître assez bien cet aspect, cela m'a permis d'en apprendre plus.

Des attaques par Xpath, DOS, XSLT, avec le pipe sont présentés et sont, pour moi, assez flippantes de par leurs simplicités de mise en place.

On retiendra : "plus le code est complexe à relire, plus il sera complexe à maintenir et moins la sécurité sera importante !"

Une conférence intéressante car elle aborde un sujet de plus en plus sensible et présent pour les sociétés; Je regrette tout de même que le terme webservice ait été associé à SOAP lors de la conf et que le REST n'ait été que survolé.

Un excellent ForumPHP qui m'a permis de revoir certaines personnes, d'en découvrir de nouvelles. J'attends la fin d'année prochaine pour l'édition 2011, qui ne fêtera elle aucun anniversaire...

nov. 10, 2010

Retour sur les conférences du ForumPHP (jour 1)

Développer une application mobile avec Flex et PHP

C'est Michael Chaize (@mchaize) qui est aux commandes. Il présente dans un premier temps l'historique de Flash puis Flex. On se rappellera par exemple que Flash adopte le riche media à partir de 2006 mais également qu'à l'heure actuelle : 75% des lecteurs de vidéos tournent avec Flash.

Flash 10.1 est ensuite abordé, une véritable révolution. En effet, cette dernière mouture prend en charge tous les types d'équipements. Auparavant, Flash était uniquement disponible sur Mac, PC et Linux. Dorénavant, il est également disponible sur mobile, tablette et GoogleTV.

Pour les applications disponibles sur iOS (iPad et iPhone), c'est l'iOS packager permet de compiler l'application.

Michael aborde ensuite AMF et propose l'exemple suivant : 5000 lignes. Ces 5000 lignes disponibles au format XML pèseront 1,1Mo. Avec AMF, le poids est réduit à 21ko. C'est un atout non négligeable dans le cas d'application mobile. Bien sûr, nous sommes au ForumPHP, il nous présente donc le SDK AMF pour PHP (très simple à mettre en place).

En conclusion, on retiendra que Flex permet de gérer l'ensemble de l'animation Front-End et PHP s'occupera de toute la logique métier d'une application.

Terrible audit de sécurité

Damien Seguy nous parle d'un "Terrible Audit de Sécurité". Terrible dans le sens où très souvent, l'audit fait peur aux entreprises, notamment un audit de sécurité. L'objectif est de vulgariser la manière dont se réalise l'audit, afin de permettre de le renseigner soi-même son protocole d'audit de sécurité.

Il nous explique les différentes phrases d'un audit et commence par la mise en place d'un référentiel de sécurité qui exposera les différents axes et en les détaillant. Pour cela, il est possible de s'appuyer sur différentes références : OSWASP, ISO, etc.. En résumé, il faut rédiger un référentiel, le convertir en code à éviter ou recommander et le vérifier soi-même.

Comme à chaque fois, la conférence de Damien est très pédagogique, un réel plaisir. Je me dit que l'audit de sécurité pourrait être le sujet d'un Barcamp...

Optimisation des performances LAMP

Cyril Pierre de Geyer et Guillaume Plessis nous présentent cette conférence orientée sur les aspects systèmes et permettant d'améliorer la disponibilité d'une infrastructure LAMP. On passe d'abord en revue les outils permettant de réaliser du monitoring de plateforme : de Nagios à Zend Platform en passant par Cacti ou Pimba. Les conférenciers nous présentent également comment réaliser des tirs de charge. Pour cela, les outils ApacheBench ou encore Jmeter nous sont présentés.

En résumé, cela nous donne un aperçu global des outils et informations qui permettent d'optimiser sa plateforme.

Slides

Voir la présentation : développer une application mobile avec Flex et PHP

Voir la présentation : optimisation des plateformes LAMP

nov. 05, 2010

Suite de la discussion sur ma question du jour

Aujourd'hui, je me suis posé une question et je l'ai partagé sur Twitter, en voici le contenu :

Dans une archi complexe, les différentes fonctions ne devraient-elles pas etre sur une logique de webservice ? Ceci afin d'assurer maintenance, évolutivité, flexibilité et migration mieux adapté. Des avis ?

@ludobos a repris cette question autrement et je trouve la question tout à fait adaptée :

dans un monde cross-plateform, le dev site html multi-browser a-t-il un sens ? quid des applis ?

Qu'en pensez vous ? Quel est votre avis sur le sujet ?

nov. 04, 2010

Sigle et débit 3G sont différents, pourquoi ?

J'entends souvent "j'ai le sigle 3G mais le contenu de ton application ne remonte, le bug vient de ton application". Etant donné qu'une réponse en 1 phrase n'existe pas vraiment, je vais le faire en plusieurs lignes par ce billet et plutôt qu'un long discours, rien ne vaut un bon schéma pour expliquer les différents éléments en place.

Le principe est le suivant : un utilisateur lance une application récupérant des informations depuis un serveur web. Cette demande est transmise :

1) par les ondes radios depuis le téléphone jusqu'à l'antenne relais (ou Base Transceiver Station ou BTS), selon différentes technologies 3G+ (débit de 4Mbits/s en pratique) , 3G (2MBits/s), EDGE (473 kbit/s).

2) cette antenne est connectée au réseau interne de l'opérateur. Le débit entre la BTS et le réseau de l'opérateur n'est pas le même d'une antenne à l'autre. Il peut aller de quelques Mbits/s à plusieurs dizaines (voire centaines) de MBits/s suivant la zone géographique où l'antenne se trouve.

3) la demande émise sort alors du réseau de l'opérateur pour entrer dans le réseau internet.

On voit qu'aux deux premiers niveaux, le débit diffère très facilement. Prenons différents exemple afin de mieux comprendre.

Exemple 1: L'antenne sur laquelle mon téléphone est connecté, possède un débit avec le réseau opérateur d'environ 100MBits/s. Nous sommes 25 à naviguer sur l'internet mobile. En théorie, nous aurons environ 100Mbits/s divisés par 25 utilisateurs = 4 Mbits/s pour chaque utilisateur. Si la BTS permet l'accès à la technologie 3G+, je pourrais donc avoir le max du débit, cela permet donc une navigation très fluide.

Exemple 2 : Même contexte que l'exemple 1, mis à part qu'au lieu d'être 25, je suis 1000 connecté sur la même antenne. Le calcul donne 100 / 1000 = 0,1 Mbits/s soit 100kbits/s. On voit donc que plus il y a de personnes connectés sur la même antenne, plus le débit chute. Même si mon téléphone indique 3G, je serais limité à un débit de 100kbits/s théorique.

En résumé, il faut retenir que lorsque le sigle 3G est indiqué, le débit disponible ne sera pas automatiquement le débit maximum de la 3G.

NB : attention, ceci est bien entendu la théorie, en pratique, il faut également prendre le fait que l'onde radio (entre le téléphone et l'antenne) peut être altérée et réduite par les obstacles. De plus, il est important de savoir que le réseau est divisé en deux : le trafic voix (les appels téléphoniques) et le trafic data (internet mobile). Sur ces deux sources de trafic, la voix restera prioritaire.

oct. 07, 2010

Brevets et lobbying : la guerre du mobile en cours

On remarque actuellement que la guerre fait fortement rage dans le monde mobile, les grands acteurs des nouvelles technologies étant sur le qui-vive. Un petit récapitulatif des faits sur les 10 derniers jours :
\- [Google tape du pied  une fois de plus à Nokia](http://www.mobile-ocean.com/google-veut-convaincre-nokia-d-utiliser-android--id=4836.html), Google souhaite en effet voir des terminaux mobiles by Nokia
\- [Google vs Oracle](http://www.mobile-ocean.com/android-google-accuse-oracle-de-mauvaise-foi--id=4876.html%20), Oracle est agressif au sujet d'Android qui se base sur Java
\- [Apple vs Nokia](http://pro.clubic.com/it-business/actualite-369046-apple-attaque-nokia-brevets-royaume-uni.html%20)
\- [Microsoft vs Motorola/Google](http://www.itespresso.fr/violation-brevets-microsoft-defie-motorola-google-android-36904.html%20)
J'imagine déjà ce qui pourrait se passer sur le marché TV... cela promet

oct. 07, 2010

Les grandes phases d'un projet mobile

Cet article a pour but d'avoir une vision globale des différentes grandes étapes d'un projet mobile. Ces phases sont analogues à un projet classique informatique.

Expression de besoin

Cette partie permet d’aider les équipes MOA à mieux définir le périmètre de leur projet mobile.

Le Consultant sera d’assister les équipes mais également à les orienter au mieux à la fois sur les problématiques produits et fonctionnelles mais il anticipe également les problématiques techniques.

Le Consultant aidera également à répondre aux problématiques de contributions multi-écrans : web, mobile, …

Spécifications fonctionnelles

Spécifications

Ce document définit l’ensemble des fonctionnalités de l’application. Etant dans le monde applicatif,  il est important de prendre en compte les actions non visibles. Exemple : que se passe-t-il lorsqu’un utilisateur se connecte.

Il est important de prendre également en compte l’ergonomie de l’application, tout en respectant les Guidelines des SDK. C’est un autre des rôles important du consultant.

Création graphique

La création graphique permettra de finaliser la définition d’un projet. En effet, il est possible lors de la phase de conception graphique de répondre à des problématiques ergonomiques.

Spécifications techniques

Les deux phases suivantes peuvent être parallélisées. On définit :

  • L’architecture de l’application : cette partie est fortement en relation avec les spécifications fonctionnelles et prends également en compte les Guidelines des différents SDK.
  • L’architecture, le format des webservices (politique de cache, type de webservices, etc…). Ces derniers impacteront les équipes SI.

Maitrise d’œuvre

Développements

Tout comme les spécifications techniques, les développements peuvent être effectués en parallèle. On distingue :

  • les développements de l’application en elle-même (voire ses différentes versions suivants les SDKs)
  • les développements des webservices qui impactent les Systèmes d’Informations.

Recette

C’est la phase la plus importante d’un projet. Suivant le temps de développements, on pourra définir une livraison hebdomadaire de l’application. Ceci permettra à la fois au Delivery Manager d’assurer le suivi et également aux équipes produits (à partir de la 2ème moitié du temps) de voir les évolutions des développements.

Soumission

Pour les applications, deux options se présentent :

  • soumissions avec validation à priori pour Apple (les temps approximatifs de validation pourront être transmis au démarrage des développements)
  • soumissions avec validation à posteriori pour Google : l’application est directement disponible sur le Market Place

Pour les web-applications, le principe est le même que les sites internets.

sept. 16, 2010

Interaction entre projet web et projet mobile

Je poursuis l'exploration du monde du projet mobile. Aujourd'hui, j'aborde les interactions entre les projets mobiles et les projets webs.

Je séparerais les projets mobiles en 3 types :

1) standalone (que je n'aborde pas, ce n'est pas le sujet);

2) apporte un complément au projet web (ou vice-versa);

3) "copie" le web.

Si le système d'information (SI) est déjà présent, il est important d'analyser l'adaptation et le rendu des informations disponibles sur mobile. Je recommande d'ailleurs fortement d'effectuer cette analyse dans le cadre d'une pré-étude d'un projet. Ceci permettra alors d'anticiper les problèmes et évolutions techniques tout en impactant le moins possible l'ensemble des acteurs qui auront à intervenir sur le SI.

Lors de la création d'un système d'information, il est nécessaire d'analyser et de rendre disponible un mode de contribution à la fois user-friendly mais également répondant aux attentes en terme de rendu sur le web et sur le mobile. La prise en compte de ce paramètre est l'un des facteurs de réussite d'un projet web/mobile.

L'animation est un autre sujet sur lequel, il est important de poser la question suivante : mon produit mobile va être animé de la même manière que mon produit web.

L'animation identique entre le web implique une mise à disposition des informations contenus dans le SI sur les deux cibles : web et mobile. Par exemple, un visuel pourrait être disponible dans un format "pivot"  permettant ainsi un traitement adéquat.

Lors d'une animation différente, il est important de faciliter le travail des animateurs du service. Dans les deux cas, associer les contributeurs du service (un des deux grands utilisateurs du SI) lors de la création et la mise en place des interfaces d'animation, est un autre facteur de la réussite d'un projet.

Enfin, la technique est l'élément central. Un projet informatique n'est pas réalisable sans technique, c'est à la technique que les fondations sont définis et réalisés, tout comme un maçon construit une maison ! Certains risquent de bondir en lisant cela, mais c'est mon point de vue. Bref, il est très important que le noyau technique soit à la fois solide, robuste et agile. Plusieurs techniques d'architecture, de développements et de mise en place sont disponibles et réalisables.

Il ne faut pas non plus oublier que réaliser un projet mobile ouvre une porte extérieure supplémentaire et qu'il ne faut pas prendre à la légère la mise en place, par exemple de service web.

Un projet mobile est comme un projet web; il rajoute "juste" des contraintes supplémentaires, tout particulièrement lorsque ces derniers sont liés. Il est très important de prendre en compte l'avis de tout le monde en amont d'un projet, afin de répondre au mieux à leur attente.

juil. 13, 2010

Débats sur le mobile - application vs web-application

Je suis tout récemment tombé sur le site techtoc.tv, ce site regroupe un ensemble de webcasts autour de sujet liés aux nouvelles technologies. Pourquoi ces deux informations, tout simplement parce que je souhaitais 3 de ces webcasts qui sont en liaison avec un de mes précédents billets, où je présentais les différences entre application et webapplication.

Les apps' vont-elles remplacées les navigateurs webs ?

Application mobile vs version web mobile

Mon business a-t-il besoin d'une application mobile ?

Si je devais résumer la situation actuelle, une société se doit d'être actuellement présente sur les AppStores (AppStore d'Apple, AndroidMarket de Google, ...). Mais une société doit également ne pas oublier le web mobile, car il permet une meilleure inter-opérabilité mais également une plus grande liberté d'évolution. Enfin, les webapplications sont pour certains considérés comme l'avenir, alors que les applications sont amenés à une décroissance à partir de 2015 voire 2013 selon certains.

juil. 06, 2010

Différences entre projet de web-app mobile et projet d'application mobile

On me demande souvent quelle est la différence entre application et web-application. Je vais par ce billet définir chacun et indiquer leurs avantages et inconvénients.

Applications

Une application mobile est un programme informatique utilisant un SDK (Software Development Kit) basé sur un OS (Operating System) tel qu'iOS ou Android. Le SDK se définit par :

  • un langage de programmation (Java pour Android, Objective-C pour Apple, Silverlight pour WindowPhone 7 WP7) qui permet de développer l'application
  • un ensemble d'APIs (Application Programming Interface) permettant d'utiliser ou d'accéder à des éléments matériels du terminal. L'API sur laquelle il est important de s'arrêter est l'openGL qui permet de faire de la 3D et donc des jeux évolués. A noter que WP7 sera quant à lui basé sur un autre type API.

Les applications permettent d'avoir une interactivité plus poussée et elles permettent également d'avoir à disposition très facilement toutes les informations à un instant T. La logique est totalement différente par rapport à un site web et il est absolument nécessaire de prendre en compte ce point lors de la phase de spécifications du projet.

Cependant deux problèmes se posent : le temps de développement (2 mois pour une application de type standard) et le versionning. En effet, si un bug apparaît sur une application, il est nécessaire de repasser par une phase de développement, recette et soumission de l'application; on parle de changement de version. Ce paramètre est très important et explique la nécessité de faire une phase de recette poussée et complète.

Un dernier point important à noter également est que l'application, contrairement à la web-application, est disponible sur la place de marché de l'OS (AppStore d'Apple, AndroidMarket de Google, ...). Ceci permettant donc une potentielle visibilité, je dis potentielle car l'application sera noyé dans des dizaines voire centaines de milliers d'autres. Ce paramètre est donc à prendre en compte dans la phase de communication.

Web-application

On entend par web-application un site mobile évolué qui utilise les performances des navigateurs embarqué dans le mobile (Safari mobile, Chrome sur Android, etc..). Ces derniers disposent des éléments suivants :

  • différentes fonctionnalités du xHTML et également du HTML5
  • le support du Javascript (différents frameworks sont disponibles JQueryTouch par exemple)
  • un ou plusieurs librairie Javascript et associé au navigateur permettant d'accéder par exemple au GPS.

Deux avantages principaux (les inverses de l'application) : le temps de développement (on est sur des technologies webs) est court, la gestion des mises à jour sont réalisées en totale transparence pour l'utilisateur puisque l'on est sur une technologie client-serveur. On peut également ajouter que ce type de développement permet de servir n'importe quel terminal de type smartphone : une web-application sous Android sera également disponible sur iPhone.

Etant sur des technologies webs, il est important de mettre en place les bonnes pratiques suivantes :

  • les règles de SEO/référencement, même si actuellement, Google ne rends pas prédominant le mobile, il est important d'être présent.
  • la possibilité de rediriger l'utilisateur depuis le site web standard vers le site mobile et vice-version. Je conseillerais également de permettre cette redirection page à page.

En conclusion, je conseillerais la méthode suivante : faire une application mobile (sur iPhone et Android) pour avoir la visibilité des places de marchés, mais ne surtout pas oublié les web-applications. Même si cette dernière sera le plus souvent beaucoup moins ambitieuse que l'application.

← Previous Next → Page 8 of 12