Bonjour,
J’ai travaillé avec JSF, ou pour être plus précis, un framework interne utilisant JSF. J’étais très insatisfait de l’expérience utilisateur que ce framework proposait.
La raison est très simple :
- Je fais une action dans mon navigateur (ex: clic, perte de focus d’un champ, etc.)
- Ça envoie sur le réseau, donc j’attends… parfois longtemps (+5s)…
- Je peux de nouveau faire une action et repartir à l’étape 1.
Quand tu as 10 opérations, autant dire que tu as envie d’aller autre part.
Le problème que nous avions était de deux ordres:
- Performance de la partie java (on l’améliorait petit à petit)
- Réseau (on ne pouvait rien y faire)
De même, les composants utilisés étaient très limités et il n’était pas possible d’être un minimum créatif, car ces composants avaient été écrit en partie en JS (à un moment, c’est obligé, hors langages spécifiques) et que la culture de l’entreprise était anti-JS. Là, c’est plus un travers que cette architecture peut fournir qu’une fatalité.
Excepté si ton objectif est uniquement de faire un contrôle au niveau de l’envoi de formulaire et navigation, ton architecture peut être intéressante pour une appli (hors tout public). Mais si c’est pour avoir des cas où tu doit générer une mise à jour de la page parce que le premier <select>
limite les résultats du deuxième <select>
, je te déconseille vraiment de le faire.
Je n’ai parlé que de la partie expérience utilisateur. J’ai aussi été déçu de la partie développement, mais je pense que c’est aussi une question de conception et qu’il est possible d’avoir quelque chose de correct (selon langage, framework, etc.).
Je suis cependant curieux de lire un retour d’expérience positif et de comment ces challenges énoncés ont été traités.