Quel avenir pour les applications multiplateformes?

Programmation

Vous avez une idée ? Trouvez gratuitement des développeurs sur Codeur.com !

Recevez des devis (gratuit)

Le développement d’applications est l’un des domaines qui a le plus évolué ses vingt cinq dernières années.  En effet, les langages utilisées sont de plus en plus évolués et de moins en moins complexes permettant aux développeurs de proposer des fonctionnalités dont la limite n’est presque plus la technique. Parallèlement, le coût du matériel informatique  a chuté et ses performances ont été décuplé rendant ainsi possible les plus folles idées. Mais avec la généralisation de l’accès internet haut débit et les dernières avancées dans le domaine du Cloud Computing, on peut se demander quels peuvent être l’avenir de ses applications natives ou multiplateformes? La réponse ne semble pas si simple, si?

Tout d’abord, je souhaiterais éclaircir un point. Cet article n’a pas été publié sans arrière pensé même s’il aurait pu trouver sa place sur WebActus naturellement. Alors pourquoi je vous ça et pourquoi un tel article? Vous aurez pu remarquer que de nombreuses autres personnes traitent du sujet. En effet, Intel organise actuellement un concours permettant de faire gagner aux personnes tirées au sort une invitation à LeWeb’10. Vous n’êtes pas sans savoir que j’aimerais vraiment mais vraiment m’y rendre mais que malheureusement je n’ai pas été sélectionné comme blogueur officiel invité et que je n’ai pas les finances pour. Du coup, lorsque Intel (l’un des partenaires officiels LeWeb’10) m’a contacté pour gagner une invitation, je me suis empressé de participer, d’autant plus que le concours consiste à publié un article sur notre vision de l’avenir des applications multiplateforme, sujet rentrant totalement dans ligne éditoriale de ce blog. Alors pourquoi, pour une fois, ne pas joindre l’utile à l’agréable.

Mais revenons plutôt à nos moutons. Dans le développement d’applications, il existe à vrai dire 3 grandes stratégies possibles parmi lesquelles le développeur doit faire un choix:

  • Développer des applications à destination d’un système d’exploitation spécifique et donc les décliner ensuite sur les autres OS
  • Développer une application multiplateforme permettant de faire fonctionner son application sur plusieurs OS sans développement supplémentaire
  • Une troisième possibilité, plus récente, consiste à créer une application web disponible via un navigateur et les faire héberger sur des solutions de Cloud Computing

Ces trois stratégies ont bien évidemment leurs avantages et leurs inconvénients et c’est la dessus que le développeur va préférer un stratégie par rapport à une autre.

Pour faire rapide, le développement d’application à destination d’un OS spécifique est intéressant si l’on a besoin de tirer les meilleures performances du système sur lequel il est installé et/où si le client final utilise majoritairement un système d’application plus qu’un autre (c’est souvent le cas pour Windows et les administrations ou grosses structures).

Le développement multiplateforme permet de créer des applications ne nécessitant pas de fonctionnalité particulière liées au système et permet surtout d’avoir un outil universel, identique pour tout le monde. Il demande un suivi/évolution plus simple, puisqu’une « seule » version n’est considéré. Ce système est très intéressant pour toucher un maximum de clients.

Applications web

Avec les applications web complètes comme on peut le voir avec Google Apps, Office 365 les contraintes sont différentes. Les possibilités sont bien moins importantes puisqu’il faut que ce soit rendu dans un navigateur mais tendent de plus en plus à proposer une alternative vraiment intéressante par bien des manières et je pense que l’avenir du développement va se tourner essentiellement de ce côté.

On a pu voir récemment que de nombreux acteurs importants comme Microsoft, Google, Amazon (pour ne citer qu’eux) investissent petit à petit ce nouveau domaine d’applications Web. Basé sur la technologie du Cloud Computing, ils proposent depuis peu des applications en ligne similaires à ce que l’on peut trouver installé habituellement sur nos ordinateurs. Les exemples les plus parlants sont les systèmes de webmail (vous permettant de gérer vous couriel sans client de messagerie), les suites de bureautiques vous permettant de créer/éditer/partager des documents word/excel/powerpoint avec les solutions Office 365, Zoho ou encore Google Apps.

Google a d’ailleurs poussé l’expérimentation à un autre niveau puisqu’il développe actuellement un système d’exploitation complet (Google Chrome OS) utilisant ce « nouveau » type d’applications. La majorité de celles-ci passe par le navigateur. Cela n’est bien évidemment possible que par la généralisation de l’accès  haut débit Internet mais aussi l’évolution des techniques/possibilités induit par les nouveaux langages et autres supports (HTML5/CSS5/Framework JS très performant). D’ailleurs, Google prépare cette sortie depuis quelques mois en optimisant tout le processus de la requête HTTP (il propose d’utiliser ses propres DNS, donne un module permettant d’optimiser le coté serveur…), permettant de rendre ses applications possibles, cohérentes et légitimes vis à vis des structures habituelles. Pour le coup, il n’est pas le premier a y penser puisque l’entreprise française JoliCloud propose un système similaire qui connait aujourd’hui un succès grandissant.

Un service novateur: Spoon

On se rend donc bien compte que l’avenir du développement des applications se tourne inexorablement vers le web et du coup les applications natives et multiplateforme seront à termes (dans quelques dizaines années) plutôt marginales. D’ailleurs des services comme Spoon semblent en être persuadé puisqu’il vous propose de faire tourner n’importe quelle application bureau (native ou multiplateforme) directement dans le cloud (via Internet).  L’application devient alors accessible via un navigateur et peut être ensuite imbriquée dans n’importe quel site. Quelque souci de vitesse sont encore à recenser notamment avec les applications les plus complexes.

Cependant ce système impose donc au développeur de savoir si son application pourra fonctionner dans un navigateur web et si les technologies actuelles lui permettent de faire ce qu’il veut. Il existe toujours des problématiques similaires au développement natif puisqu’il faut que le rendu soit identique sur toutes les versions de navigateurs existants. Et je vous promets que les développeurs web passent un moment important à corriger des bugs d’affichage pour que l’application soit conforme aussi bien sous firefox, chrome que IE… De plus la technologie Cloud Computing est assez jeune et méconnue d’un bon nombre d’acteur. De plus cette technologie coûte relativement cher à mettre en place (en terme d’architecture serveurs) surtout si vous consommez beaucoup de ressources. Pour finir, ce domaine est assez récent et comme l’ancien mode de développement fonctionnait bien, cela demande d’être un peu aventurier et prêt à « casser la routine »  pour tester tout cela

Je suis aussi d’accord pour dire qu’il y aura toujours besoin de fonctionnalités précises uniquement obtenables par un fonctionnement local (traitement vidéo par exemple) mais je pense aussi que la plupart des applications n’ont pas forcément besoin d’être installé sur l’ordinateur pour être utilisées. L’un des exemples les plus vrais et explicites sont les jeux qui arrivent en ligne et évoluent maintenant vers le social…

Les tablettes tactiles

Il reste une catégorie que les applications web auront du mal à battre, quoi que… les tablettes tactiles! Actuellement on voit que tous les constructeurs y vont de leur conception pour proposer ce nouveau type d’équipement, qui vient remplacer le marché des notebook (oui oui rappelez vous ces petits ordinateurs qui avait le vent en poupe l’année dernière). Du coup chaque constructeur propose un système d’exploitation personnalisé censé révolutionner notre manière d’utiliser nos ordinateurs, au lieu de se baser sur les existants (chacun veut sa part du gâteux…). Alors même s’ils ont tous pour la plupart un accès au web et vu le coup de la 3G, les applications full web devrait encore rester encore assez marginales, d’autant plus que les fonctionnalités des navigateurs embarqués sont assez loin des version bureau. Du coup, les développeurs doivent décliner leur logiciel en plusieurs versions et les développent en suivant les spécificités du système. A l’heure actuelle, Le développement natif pour ce genre d’équipement reste l’unique alternative au web qui s’impose un peu plus chaque jour.

En conclusion je pense que les applications multiplateformes devraient à termes (dans quelques dizaines d’années) disparaitre de plus en plus au profit des applications web et que seules les applications natives pourront tirer leur épingle du jeu (avec des enjeux très spécifiques).

Avec l’évolution des caractéristiques matérielles, des possibilités liés aux langages de développement et la généralisation de l’accès Internet, cette technologie a le vent en poupe et devrait être adoptée rapidement.  Ses intérêts majeurs? Une simplification des processus de développement et de maintient (malgré les soucis de compatibilité entre les différents rendus suivant les navigateurs web qui n’évoluent pas à la même vitesse), réduction des prix d’infrastructures nécessaires pour faire tourner votre application, coût de développement réduit puisqu’il existe un nombre important d’acteurs permettant de créer ce genre d’applications ou encore une réduction des capacités matérielles nécessaires donc le coût de l’ordinateur final, stratégie d’ailleurs intéressante pour inonder rapidement les pays en voie de développement par exemple. Du implicitement, peut-être aussi que cette technologie sauvera le marché des netbooks qui souffrent actuellement d’une préférence importantes des consommateurs pour le marché des tablettes tactiles…

L'équipe de WebActus.net vous propose tous les jours des articles sur l'univers des startups, du e-commerce et du growth hacking.

Rejoignez la communauté Webactus

Recevez régulièrement les meilleures actus et ressources

Pas de spam, vous pouvez vous désabonner à tous moment.