Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

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

23PARTAGES

3  2 
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 ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de 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.
11  0 
Avatar de 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 ?
8  0 
Avatar de kedare
Membre expérimenté https://www.developpez.com
Le 20/07/2012 à 22:10
Le problème avec cette mode de tout faire en HTML5/CSS, c'est que c'est carrément pas optimisé par rapport aux clients lourds...
Ca se voit particulierement sur les appliances ayant des CPU assez faible type parefeux, par exemple sur les Juniper SRX, ou on va avoir énormement de temps de chargement a chaque clic sur l'interface web malgrès tout l'ajax.
Je prefere par exemple largement avoir un client lourd en Java Web Start (Type Cisco ASDM) ou équivalent (CheckPoint SmartDashboard par exemple), qui prend certes pas mal de temps a démarrer (téléchargement des .jars surtout), mais une fois démarré, ca trace et ca utilise des controles bien plus puissants que ce que l'on peut trouver en bidouillant sur eu HTML5.
7  0 
Avatar de satenske
Membre confirmé https://www.developpez.com
Le 20/07/2012 à 19:08
Adobe AIR le fait déjà depuis un petit moment

Mais arès, tout est une question de besoin, Office par exemple peut très bien être en web (on le voit avec Google doc).
Par contre, tout ce qui concerne l'infographie, mouais.....

De plus, il faut voir également si les applications ne travaillent que en cloud, ou si il y a du stockage sur la machine physique, parce que le cloud, c'est bien, mais typiquement, je me vois mal utiliser un IDE ou tout le projet est chez je ne sais qui.....
5  0 
Avatar de hotcryx
Membre extrêmement actif https://www.developpez.com
Le 20/07/2012 à 19:32
Ouai bof, c'est pour faire joujou

Une application web prendra toujours plus de temps à développer et sera plus lent en exécution.
9  4 
Avatar de 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.
5  0 
Avatar de erwanlb
Inactif https://www.developpez.com
Le 20/07/2012 à 19:12
On fera tourner le navigateur pour utiliser une appli...quel intéret par rapport à une appli qui va se gérer toute seule ?

Après la mode de développer son site web, la mode de développer son application....HTML/CSS/JS est un langage d'aspect très accessible au grand public...même si finalement il n'est pas forcément toujours facile à dompter pour tous...
4  0 
Avatar de erwanlb
Inactif https://www.developpez.com
Le 20/07/2012 à 19:49
Citation Envoyé par powermanga Voir le message
Quel est le rapport entre Adobe AIR une solution propriétaire issue d'un seul éditeur de logiciel et le Web basé sur des normes crées par le W3C ?
Il faut un navigateur pour piloter l'application créée non ? C'est pas très ouvert...

Et HTML5 toujours pas finalisé...

Et après des années d'unification des langages, retourner sur une solution qui nécessite 3 langages différents pffffff
7  3 
Avatar de Julien Bodin
Membre éclairé https://www.developpez.com
Le 21/07/2012 à 2:11
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
Ca je suis bien d'accord c'est un réel problème.
Surtout le javascript auquel je suis allergique. Je trouve la technologie GWT assez intéressante à ce niveau puisqu'elle compile du java en javascript, faisant du javascript l'équivalent de l'assembleur pour les binaires.
Mais je suis encore assez frileux pour l'utiliser sur un vrai gros projet.
5  1 
Avatar de satenske
Membre confirmé https://www.developpez.com
Le 20/07/2012 à 21:11
Citation Envoyé par powermanga Voir le message
Quel est le rapport entre Adobe AIR une solution propriétaire issue d'un seul éditeur de logiciel et le Web basé sur des normes crées par le W3C ?
"Ubuntu met des Web Apps sur son bureau", c'était juste pour souligner le fait que ce n'est pas une innovation.

Sinon, comme l'a dit erwanlb, oui adobe AIR est propriétaire, mais ils ne font qu'appliquer la norme.... Au même titre que opéra, Chrome ou autre.

Je pense que le Web complète les applications natives, mais on ne peut pas utiliser uniquemnet du web, ce n'est pas possible. L'un ne va pas sans l'autre.
Vous faites comment pour développer des applications serveurs en Web? c'est possible, avec beaucoup d'efforts, ce qui donnera une application trop lente.
3  0