Les applications Web sont-elles le futur des applications natives ?
Ubuntu et Chrome veulent faire tourner les Web Apps sur le bureau

Le , par Gordon Fowler, Expert éminent sénior
Les Web Apps sont partout. Y compris en dehors du Web.

Ce paradoxe est en train de battre en brèche la frontière entre la notion d’applications dites « natives » et les applications qui s’appuient sur un service hébergé sur le Net.

Deux actualités viennent illustrer cette évolution.

Ubuntu met des Web Apps sur son bureau

Le créateur de Ubuntu vient d’annoncer que les versions 12.04 et 12.10 de sa distribution Linux permettront de lancer des applications développées avec des technologies Web directement sur le bureau, sans passer par le navigateur.

Autrement dit, il sera possible de développer des applications en HTML5, CSS3 et JavaScript et de les faire tourner dans une fenêtre « classique » d’Ubuntu, avec le « look and feel » du système.

Environ 40 services Web (comme Gmail, Picassa ou Last.fm) bénéficient déjà d’une Web App qu’il sera possible d’installer depuis le dépôt d’Ubuntu.

[ame="http://www.youtube.com/watch?v=x7vF-AB7SF4"]Les Wab Apps dans les futurs Ubuntu[/ame]

Chrome Packages Apps

Le mouvement est exactement le même chez Google avec les Chrome Packages Apps.

Là encore le principe est de faire tourner des applications Web comme des applications natives. Bien que réalisées avec du HTML, du CSS et du JavaScript, elles pourront stocker des fichiers en local, se lancer depuis le menu de Windows, fonctionner en mode hors ligne et accéder – grâce à de toutes nouvelles API – à des fonctionnalités du hardware de la machine (comme l’USB ou le BlueTooth) ou du système (TCP/IP, API pour interagir avec d’autres applications, notamment pour gérer ou jouer des fichiers multimédia).

[ame="http://www.youtube.com/watch?v=lBUGTVIJVfM"]Présentation des Chrome Packages Apps[/ame]

La notion de « hors du navigateur » peut néanmoins être questionnée puisque - a priori - ces applications tournent dans Chrome, à la manière d’une machine virtuelle. La seule différence est que l’utilisateur ne le sait pas (et ne le voit pas) et que plusieurs fonctionnalités de navigation sont désactivées pour optimiser la sécurité de la Packaged App.

Windows 8

On peut également se demander si cette solution ne fera pas doublon avec Windows 8 puisque le prochain système de Microsoft permettra lui aussi de faire tourner en natif des applications écrites en HTML5, CSS3 et JavaScript.

Quoiqu'il en soit, et que l'on se tourne vers Canonical, Microsoft ou Google, la distinction entre applications Web et natives devient de plus en plus floue.

Source : Google

Et vous ?

Des applications natives développées en HTML 5, CSS et JavaScript : bonne ou mauvaise chose ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de la.lune la.lune - Membre chevronné https://www.developpez.com
le 21/07/2012 à 8:21
Sans moquerie mais pour bien comprendre, que ce qu'on veut dire par une application web? Répondez moi sincèrement car je suis un peu perdu. Quand je fais du chat sur Windows Live Messenger est ce du web ou non? Les actualités qui s'affichent sur l''entré de WLM animés aussi avec javascript sont-ils des application web ou non? Les application entreprises écrites en java dont les client externe de l'entreprise utilisent des navigateurs et les les utilisateurs interne n'utilisent que des applications natif ne sont-ils pas des application web? Ou bien une application web c'est celle écrite seulement en html, javascript et css? Web veut-il dire des pages web(dunamique ou statiques) hébergés sur un serveur dont on fait appel?

Citation Envoyé par satenske  Voir le message
Adobe AIR le fait déjà depuis un petit moment

Je ne comprend rien là du tout, il fait quoi exactement de particulier qui lui fait comme premier dans le jeux? Mais d'une part pour lancer une application ou un service hébergé dans un serveur même avec C++ on peut faire des application qui utilisent des services web, lire des flux rss, on peut faire de javascript/ajax mélangé avec C++, même avec des Socket en C n'est ce pas du web, avec du java aussi, java au moins le fait plus bien avec des application entreprise aussi costauds sans avoir besoin d'un navigateur, je ne parle pas du fait que Swing interprète le html(qui existe aussi depuis la naissance de Swing) mais les application entreprises sur internet. Sinon écalerez moi le vrai sujet svp.
Avatar de Lutarez Lutarez - Membre chevronné https://www.developpez.com
le 21/07/2012 à 12:35
Un principe en informatique qui revient souvent est qu'il faut éviter de réinventer la roue (même si cela permet l'innovation). Or, si demain les navigateurs internet ont pour but de remplacer les OS, je ne vois clairement pas l'intérêt. Surtout si c'est pour perdre en performance !

Alors certains me diront sûrement "Mais au contraire, c'est génial ! Plus besoin d'installer de logiciels, on auras tous des terminaux légers, etc ". Sauf que le jour où y a une déconnexion ... Et bien y a plus rien ! Et malheureusement, on n’est toujours pas dans un contexte où l'on peut être sûr d'avoir accès au web 24/7.

De plus, comme dis précédemment, malgré la hausse des performances de JavaScript (toujours indiquées en % d'ailleurs, j'ai jamais vu une comparaison par rapport à un langage natif), on est encore loin des performances d'un langage natif.

A titre personnel, je trouve également la productivité en JavaScript exécrable. C'est un langage affreux, et même si la programmation orienté prototype plaît à beaucoup de monde, il est nécessaire de bidouiller pour pouvoir travailler "façon objet". C'est fortement regrettable sachant que le modèle objet fait parti des modèles de programmation les plus répandus.

A mon avis, le manque de concurrence dans les langages de script web se fait vraiment ressentir. En comparaison, on remarque étrangement que, côté serveur (où il n'existe pas que le PHP par exemple), les améliorations et corrections sont bien plus nombreuses et conséquentes.

Bref, aujourd'hui je préfère une bonne application native qui travaille avec des webservices plutôt qu'une application web bancale. Dans la téléphonie mobile, on remarque d'ailleurs (http://www.presse-citron.net/interne...s-applications) que les gens préfèrent télécharger une application dédiée à un site plutôt que d'aller sur le site HTML. (cf. http://www.developpez.net/forums/d12...plication-ios/ par exemple).

Il est vrai que mon avis est très biaisé dans le sens où j’ai toujours eu une préférence pour le développement natif (pas besoin de se préoccuper du design pour faire une application fonctionnelle au moins :p), donc taper pas trop forts =)

EDIT : petit lien assez intéressant (j'ai pas approfondi) : http://pro.clubic.com/creation-de-si...3c-whatwg.html
Bientôt 2 HTML différents à moitié implémentés par les navigateurs ?
Avatar de BlueScreenJunky BlueScreenJunky - Membre du Club https://www.developpez.com
le 21/07/2012 à 12:35
Citation Envoyé par jv-boy  Voir le message
Mais si c'est une application qui necessite la puissance de calcul de l'hote, genre excel, photoshop etc ... je vois pas trop l'interet.

Pouvoir utiliser excel, photoshop etc. sous linux, android, ou n'importe quel OS qui est capable d'interpréter du HTML5 et du javascript.

Je pense aussi qu'il y a plus de personnes capables de faire du javascript et de HTML que de développer des applis natives pour tel ou tel OS.
Avatar de moriarti13 moriarti13 - Nouveau membre du Club https://www.developpez.com
le 21/07/2012 à 12:36
Citation Envoyé par la.lune  Voir le message
Sans moquerie mais pour bien comprendre, que ce qu'on veut dire par une application web? Répondez moi sincèrement car je suis un peu perdu. Quand je fais du chat sur Windows Live Messenger est ce du web ou non? Les actualités qui s'affichent sur l''entré de WLM animés aussi avec javascript sont-ils des application web ou non? Les application entreprises écrites en java dont les client externe de l'entreprise utilisent des navigateurs et les les utilisateurs interne n'utilisent que des applications natif ne sont-ils pas des application web? Ou bien une application web c'est celle écrite seulement en html, javascript et css? Web veut-il dire des pages web(dunamique ou statiques) hébergés sur un serveur dont on fait appel?

Je ne comprend rien là du tout, il fait quoi exactement de particulier qui lui fait comme premier dans le jeux? Mais d'une part pour lancer une application ou un service hébergé dans un serveur même avec C++ on peut faire des application qui utilisent des services web, lire des flux rss, on peut faire de javascript/ajax mélangé avec C++, même avec des Socket en C n'est ce pas du web, avec du java aussi, java au moins le fait plus bien avec des application entreprise aussi costauds sans avoir besoin d'un navigateur, je ne parle pas du fait que Swing interprète le html(qui existe aussi depuis la naissance de Swing) mais les application entreprises sur internet. Sinon écalerez moi le vrai sujet svp.

Application native : Une application spécifiquement développée pour fonctionner sur le système d’exploitation d’un constructeur. Il est dans ce cas nécessaire de développer une application pour chacune des plateformes où l’on désire être présent.(a moins d'un dev. avec un langage cross-platform).En gros une application desktop ou RDA

Web application : Une application accessible depuis n’importe quel terminal disposant d’un navigateur internet et d’un accès internet. Elle peut être obtenue en développant un site internet optimisé mobile ou en adaptant le site en place. En gros un widget ou RIA

quand a AIR, cette technologie permet de compiler sur tous types de device (ne pas confondre le flash player et le runtime air), elle reprend le language actionscript3 de flash en y ajoutant des fonctionnalités classiques des applications natives (en gros accès aux processus natifs...). A noter que l'on peut aussi créer une application AIR avec JS/HTML/CSS/AJAX.

Elle est facile d'utilisation pour la construction d'UI et de client léger.

Comme tu le sais certainement , Flash et donc AIR ont le vent en poupe pour ce qui est création de mini-jeux sur le web et donc en application desktop également. La gestion du son, de la video, des animations, des sprites, la 3D y sont aisés , légées et plus abordables pour les dev. moins expérimentés que du JAVA , C++ etc...

Après tu peux certainement faire toute sorte d'application avec n'importe quel langage.

je pense pas qu'il y ait une techno meilleure que les autres.

donc ce que raconte l'article est la creation de webApp (donc JS/HTMLS/CSS) et de les faire tourner dans des wrappers d'applications natives. donc en gros constuire des applications natives en JS.

bonjour le bordel et les failles de sécurité mais aussi la réduction des coûts.
Mais pour un client lourd aie aie aie.
JS c'est sympa mais c'est limité au niveau du dev. et des performances (notamment sur mobile). Il y a trop de frameworks pour essayer de repousser les limites de ce langage et aucun ne fait l'unanimité. Imaginons un client lourd avec plus de 1000 classes, tu fais ca en JS tu pleures (la notion de package voir de namespace n'etant pas réellement présente), et sans framework, la galère pour l'héritage, les interfaces...

donc c'est une bonne initiative mais seulement pour les petites applications.
Avatar de air-dex air-dex - Membre émérite https://www.developpez.com
le 23/07/2012 à 0:29
Après tout, les applications Web sont des applications comme les autres. Dans ce cas pourquoi pas aller plus loin en poussant plus loin l'intégration au système (notifications) ? L'avantage peut-être par exemple ergonomique. On économise un clic en cliquant directement sur l'icône de la Web app plutôt qu'en faisant le navigateur > la Web App. Bonne idée donc.

Sinon je comprend mieux pourquoi Ubuntu voulait se synchroniser avec d'autres comptes externes dès Oneiric. Ça prend tout son sens ici. J'adore également l'intégration des services Google sur Shotwell. Ça fera peut-être enfin une bonne application Picasa quelque part. Par contre c'est dommage que cela se limite à Firefox (enfin l'abominable version "for Canonical") et Chromium (même si le "ium" sera bientôt de trop pour le dernier ). Autant pour Opera, une fois de plus.
Avatar de pyros pyros - Membre éprouvé https://www.developpez.com
le 23/07/2012 à 9:12
Que les appli spécifiquement destinées à une utilisation web comme les clients messageries deviennent des appli web, pourquoi pas. Mais de là à dire que les appli web vont remplacer les appli native... J'imagine bien un Pro-engineer ou un 3DSMax codé en javascript...
Déjà quand on vois la version SharePoint de MSOffice en silverlight
Avatar de erwanlb erwanlb - Inactif https://www.developpez.com
le 23/07/2012 à 9:37
Citation Envoyé par pyros  Voir le message
Que les appli spécifiquement destinées à une utilisation web comme les clients messageries deviennent des appli web, pourquoi pas. Mais de là à dire que les appli web vont remplacer les appli native... J'imagine bien un Pro-engineer ou un 3DSMax codé en javascript...
Déjà quand on vois la version SharePoint de MSOffice en silverlight

Silverlight c'est quand même autre chose que du JS....
Avatar de erwanlb erwanlb - Inactif https://www.developpez.com
le 23/07/2012 à 9:41
Et je viens de lire que le W3C et le WHATWG se séparaient pour faire des spéc Web chacun de leur côté....

Ca va être chouette de faire de l'appli lourde si les 2 divergent....fallait déjà 3 langages différents pour faire du web et maintenant il va y avoir 2 visions différentes...
Avatar de Freem Freem - Membre émérite https://www.developpez.com
le 23/07/2012 à 13:33
Citation Envoyé par erwanlb  Voir le message
Et après des années d'unification des langages, retourner sur une solution qui nécessite 3 langages différents pffffff

3 langages? J'en verrai plus: HTML, CSS, JS, SQL, XML et souvent un p'tit coup de PHP/perl/Java/cequonveut côté serveur. Bon, certes, on peut fusionner XML et HTML, et il est possible d'utiliser JS côté serveur... Mais il me semble que JS est l'un des langages les plus gourmands et que généralement côté serveur on cherche plus la perf que le gâchis?

Enfin, de toute façon, je croirai à la fin du natif le jour ou il y aura un kernel codé en JS
Je sais que les navigateurs ont le vent en poupe, mais je pense que ce n'est pas un si bonne chose: ça rompt le principe qui dit qu'un programme utile ne fait qu'une chose, mais la fait bien. Pour le moment, les navigateurs ne m'ont pas prouvé être capable de faire une seule chose bien parmi la foule de fonctionnalités qu'ils ont:
_ gestionnaire de téléchargement souvent bordéliques (testé firefox, IE et opera. Le moins pire est opera pour moi, même si je sais qu'on peut ajouter des plug-ins... histoire que le navigateur aie plusieurs fois la même fonctionnalité)
_ affichage type MDI qui nécessite son propre WM, pas forcément puissant ou simple à configurer
_ affichage des pages web qui ne respecte pas toujours entièrement le standard (mais sur ce point, la faute reviens peut-être au standard, je ne connais pas assez tout ça pour juger)
_ ...

Bref, le jour ou je serai un grand fan des "webapp" les poules auront des dents... Ou un navigateur correct sera enfin apparu, au choix.
Avatar de camus3 camus3 - Membre éprouvé https://www.developpez.com
le 23/07/2012 à 14:20
Les applications Web sont-elles le futur des applications natives ?

La réponse est non , puisqu'il faut un moteur ou machine virtuelle écrit/écrite en natif pour les faire tourner. Les techno HTML/JS/CSS ne sont que des surcouches , donc rien de neuf. On peut déja embarqué un moteur WebKit/Javascript dans une application C++ donc encore une fois rien de nouveau. Cela permet par exemple , comme dans les logiciels adobe , d'étendre les fonctionnalités d'un logiciel sans coder en C++.

Donc pas de "peur" à avoir. Le système sera toujours le même , une API C/C++/JAVA/... scriptable dans un logiciel natif.
Avatar de yohannc yohannc - Membre actif https://www.developpez.com
le 24/07/2012 à 10:10
En faite ça revient pratiquement à ajouter un bouton "isoler" sur le navigateur, qui permettrait de créer une icone sur le bureau. Cette icone lancerait le navigateur avec cette page et un mode spécial (sans la barre d'adresse ni les barres d'outils). Bon quand même il faudrait adapter la partie login pour ne pas avoir à s'identifier à chaque fois.
Et il faudra peu-être adapter les langages pour avoir plus d'accès à la machine.
Offres d'emploi IT
Architecte et intégrateur scade/simulink H/F
Safran - Ile de France - Vélizy-Villacoublay (78140)
Architecte systèmes études & scientifiques H/F
Safran - Ile de France - Vélizy-Villacoublay (78140)
Ingénieur H/F
Safran - Ile de France - Moissy-Cramayel (77550)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil