La question concerne le client: client web ou client lourd?
La toute première assertion porte sur le fait que le client et le seveur sont intimement liés.
Application web
- Avantages
- Accessible depuis n'importe ou, très portable. Il suffit d'avoir un navigateur web.
- Il suffit de modifier le code serveur pour modifier le client
- rapidité et simplicité de développement
- Déploiement et mise à jour du client simplifiée puisque tout se fait sur le serveur
- Facilité de mise en oeuvre. Installer et configurer un LAMP est très rapide. Un petit script PHP et ça marche.
- Inconvénients
- Interface moins puissante qu'un client lourd.
- Manque de fiabilité (problèmes de cache)
- Difficultés de cryptage et confidentialité des données
- La formation des utilisateurs est obligatoire
- Système de sauvegarde obligatoire et régulier
- Le serveur web est exposé au web: risques élevés de hacking
- Moins performant pour les calculs et les gros traitements
- Témoignage
- "Je peux vous assurer que les boutons précédent, suivant, F1, fermer la fenêtre du navigateur deviennent un cauchemard: l'utilisateur qui trouvait trop long le traitement de sa compta (un million de lignes) ferme sa fenetre -> un lock. La meme personne relance le traitement parce qu'il n'y aucune raison que ca ne marche pas -> c'est fini on appelle la hot line et comme la table est bloquée, tous les autres utilisateurs le sont aussi."
- "Je suis webmaster depuis un an. Avec AJAX et PHP, le site est développé et mis en oeuvre en moins d' une semaine. Le point fort du web c'est de ne pas s' occuper du client. Un client en Chine peut voir mon site aussi bien qu'un client local."
- Avantages
Client lourd
- Avantages
- Plus fiable. Exemple: avec un navigateur web l'utilisateur clique sur page précédente et refait sa manip, résultat il l' a fait deux fois. C'est impossible avec un client lourd.
- Plus flexible: Contrôles complexes mieux adaptés à la présentation de tableaux.
- Plus puissant.
- Moins d'octets qui transitent sur le réseau, d'ou allègement de la charge du serveur.
- Possibilité de cryptage optimum, que ne permet pas un navigateur.
- Pas obligé de passer par le port 80: permet de conserver le système HTTP pour l'interfaçage public, voire de scinder les serveurs.
- Côté serveur, le développement ne dépend pas d'un éditeur tiers (ASP, PHP...) avec les risques supplémentaires apportés par ces plateformes et les mises à jour qui en découlent; mais entièrement du programmeur maison.
- Inconvénients
- Plus difficile et plus long à programmer qu'une application web
- Nécessite un vrai programmeur systèmes et réseaux qui doit maîtriser:
- L'approche bases de données,
- La programmation GUI,
- La programmation réseau: couches inférieures TCP/UDP,
- La programmation réseau: concevoir un protocole de communication sur la couche TCP ou UDP
- La cryptographie, de A à Z
- et combiner le tout deux dans une seule application.
- Témoignage
- "Je suis Directeur Régional pour une multinationale dans le secteur du médical. Tous nos commerciaux ont un ordinateur portable avec sur le bureau un icone qui permet de lancer notre application pour communiquer avec le serveur de la société. Comme cette application est clairement distincte du navigateur web, chacun de nos commerciaux a la possibilité de choisir son navigateur web, ce qui sépare clairement les tâches en leur assignant un cadre précis."
- Avantages
Conclusion:
Le client lourd nécessite beaucoup plus de travail de programmation, mais compense par sa fiabilité, sa puissance, et une sécurité accrue. Comme la durée de développement est réduite en programmation web, elle est en général préférée aux clients lourds.
Le client web c'est la facilité. Le client lourd c'est le professionnalisme.
Le terme de client lourd n'est pas péjoratif, au contraire: c'est son concurrent qui lui est plus léger.
Le compromis: Un client lourd pour l' administration, et un client léger pour les utilisateurs courants.