ordinateur-interfaces-riches

Sencha lance une nouvelle version de GXT pour accélérer le développement d’applications web

Réaliser une interface riche n’est pas chose facile : non seulement il faut la coder, mais en plus il faut se casser la tête pour choisir la bonne technologie (État de l’art des interfaces riches). Pour résumer une longue explication, il n’y a pas de bon ou mauvais choix technologique, tout dépend du contexte et des ressources disponibles. Aujourd’hui, je vais vous parler de Sencha, un éditeur d’outils de développement pour créer des interfaces web ou mobiles en HTML5, et plus particulièrement de GXT qui vient de sortir en version 3 : What’s New in Sencha GXT 3.

Pour vous la faire courte, GXT est une librairie pour créer des applications en ligne en Java. Ça vous fait penser à GWT ? C’est normal, car GXT se veut être une sur-couche qui exploite le même environnement de développement et les mêmes outils (Développez vos applications Web avec GXT). Concrètement, vous codez en Java et vous compilez votre application en HTML, CSS et javascript (GXT s’appuie sur la librairie Ext JS). L’intérêt de cette librairie est de gagner du temps tout en bénéficiant d’un environnement de développement rigoureux.

Dans la pratique, cette librairie vous propose un ensemble de composants d’interface pour accélérer le développement d’applications en ligne. Nous parlons ici d’applications d’entreprise, n’espérez donc pas y trouver des choses très funky, mais plutôt des choses utiles dans un contexte BtoB. L’éditeur fournit une liste d’exemples de ce que l’on peut faire. J’ai particulièrement apprécié (entre autres) :

  • Les boutons personnalisables ;
    splitbuttons-8668060
  • Les graphiques (en barres, colonnes, gauge, camembert ou surface) ;
    areachart-6032418
  • Les menus déroulants enrichis ;
    combobox-6088350
  • Les formulaires ;
    form-7678388
  • Les tableaux avec options de tri avancées ;
    editablegrid-6240016
  • Les menus en cascade ;
    menubar-3722269
  • Les listes avec menu contextuel ;
    contextmenutree-1201923
  • Et même le dessin vectoriel (ici un logo).
    drawing-1813112

Tout ceci est donc fort sympathique. Je ne me prononcerais pas sur l’épineux sujet des performances ou de la stabilité, je me contente d’apprécier les éléments d’interface du point de vue de l’utilisateur final.

Le seul concurrent direct de GXT semble être SmartGWT (merci à Tomiche pour la précision), sinon la concurrence la plus proche vient de GWT lui-même. On retrouve par contre des librairies javascript qui se rapprochent de cette philosophie comme le projet français qooxdoo ou des librairies plus répandues comme Dojo ou jQuery UI.

Ce que je trouve particulièrement intéressant dans cette approche est de pouvoir coder la logique métier de façon rigoureuse et de s’appuyer sur une librairie « standardisée » pour l’affichage. D’autant plus qu’il est possible de concevoir une application à la souris (avec Sencha Architect) et de la déployer sur le web et le mobile (avec une autre librairie comme Sencha Touch). Idéalement, il faudrait pouvoir combiner ça avec un atelier de BPM en amont (Business Process Management) pour avoir une approche encore plus rigoureuse…

Voir les 6 commentaires