avantages/inconvénients application web/natif

avantages/inconvénients application web/natif - Divers - Programmation

Marsh Posté le 11-03-2013 à 21:23:29    

Bonjour,
Je pose une question très générale,
Quels sont selon vous, les différents avantages ou inconvénients à faire une application web ou une application native.
Aujourd'hui avec le html5 ou des frameworks tels que sencha, on peut faire des application très dynamiques se rapprochant des application natives (Qt, WPF).
Quelles pourraient être les limites d'une application utilisant les technologies web ?
Quelles pourraient être les avantages à développer une application native (sous windows 8 par exemple ?

Reply

Marsh Posté le 11-03-2013 à 21:23:29   

Reply

Marsh Posté le 12-03-2013 à 09:13:59    

Web:
- Facilement accessible par n'importe qui sans devoir installer de programme sur son PC
- sera toujours plus lent que le natif
- Inaccessible sans connexion internet (a moins d'installer un server web sur son pc)
 
Natif:
- Rapide
- Accessible sans avoir besoin d'une connexion internet
- vie privée généralement mieux protégée
 
voila ce qui me vient à la tête pour l'instant


---------------
Mods: HAF922 | Shinobi XL White    GitHub     Admin de La Colère d'Aurile, serveur RP-Action Neverwinter Nights 2
Reply

Marsh Posté le 12-03-2013 à 11:01:07    

Merci,
C'est un peu les points que j'ai aussi réussi à identifier.
Cependant, dans un environnement où l'on maîtrise le matériel et que ce matériel est un PC de bureau. La limite entre les deux devient plus floue, que signifie plus lent pour un PC d'aujourd'hui ? Est ce que l'utilisateur le ressent vraiment ? Et peut on faire moins "d'effets" en html5/Css 3 qu'en natif ?

Reply

Marsh Posté le 12-03-2013 à 11:48:31    

Web :  
Avantages :
- pas de pb de déploiement de l'appli
- appli toujours à jour puisqu'hébergée sur un serveur => quand on met à jour l'appli, y'a que le serveur
- plus facile de faire une belle IHM et s'adaptant aux différents terminaux (tant en taille qu'OS) => voir "responsive design"
- plus difficile à hacker puisque l'utilisateur n'a pas accès au code source côté serveur
 
 
Inconvénients :
- nécessite un réseau avec un très bon taux de disponibilité et de bonnes perfs, surtout en cas de gros échanges de données et beaucoup d'utilisateurs simultanés puisqu'il faut envoyer, en plus des données, l'IHM. A noter qu'on peut retrouver cet inconvénient si l'appli nécessite une connexion à une BD.
 
 
 
Natif :
Avantages :
- meilleures performances (temps de calcul, temps de réponse, consomme moins de ram...)
 
 
Inconvénients :
- Doit être déployé sur les PC des utilisateurs,
- Quand l'appli évolue, il faut mettre à niveaux tous les PC équipés de l'appli. Nécessite donc soit une gestion de parc tenue à jour, soit le développement un module d'auto-update (l'appli détecte une nouvelle version disponible et se met à jour)
- en cas de connexion à une BD, nécessite un réseau avec un bon taux de disponibilité et de bonnes perfs (mais un peu moindre puisque le client natif n'embarque pas l'IHM contrairement à l'appli web)
- peut être cracké puisqu'accès aux binaires (via décompilation puis patch...)
 
 
A noter que l'aspect multi-OS se retrouve chez l'appli web et le client natif avec chacun ses solutions de mises en oeuvre plus ou moins évidente.  
Côté web, y'a la problématique de gérer certains vieux navigateurs ou des récents qui ne respectent pas les normes du W3C (surtout en ce qui concerne le CSS et le Javascript).
Côté Natif, y'a bien Qt ou Java, mais y'a toujours des limitations de fonctions utilisables ou de dégradation de perfs (là, je pense à Java :D ).
 
L'aspect sécurité des données peut tout à fait être performant en natif comme en web dès lors qu'on met en place une solution technique adaptée (HTTPS, chiffrement/hash pour le web, chiffrement/hash pour le natif).
 
 
Franchement, aujourd'hui avec les possibilités du HTML5 et javascript + le fait que la plupart des applis nécessitent une BD, partir sur un appli web me paraît le meilleur choix sauf si l'appli fait de gros calculs (traitement d'image, simulation...). Et encore, si ces calculs ne nécessite pas du temps réel, ils peuvent être différés la nuit.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed