Développé par | Potix Corporation |
---|---|
Dernière version | 8.5.1.2 () |
Dépôt | github.com/zkoss/zk |
Écrit en | Java |
Environnement | Multiplate-forme |
Type | Ajax Web Framework |
Licence | GNU General Public License / Commercial |
Site web | www.zkoss.org |
ZK est un framework open source web 2.0, proposant une interaction utilisateur (UI) riche. ZK permet tout autant de définir rapidement des interfaces graphiques via une syntaxe XML ou un éditeur Wysiwyg que de manipuler directement les objets en Java.
Le traitement des événements se fait côté serveur relié depuis le navigateur via le moteur JavaScript de ZK.
Pour l'utilisateur du framework, tout se passe comme si l'interface graphique était gérée entièrement côté serveur. Il est possible d'ajouter, enlever, modifier des composants graphiques comme avec Swing. Le moteur de ZK se chargeant de répercuter automatiquement les modifications dans le navigateur du client.
Il est tout autant possible de définir une application relativement classique, comme avec des framework tel que Struts et JavaServer Faces. Les JavaServer Pages sont remplacées par des fichiers XML. Le code EL est lui aussi de la partie et chaque événement (validation d'un formulaire...) donnera lieu à changement de page.
Il est au contraire aussi possible de designer l'interface graphique sans aucun rechargement de page, le contenu étant mis à jour dynamiquement via AJAX. Le comportement est alors proche d'une interface graphique classique, raisonnablement rapide, mais sans toutefois avoir la même réactivité.
De nombreux tag et composants graphiques sont inclus dans le framework afin de faciliter la tâche : saisie de date avec calendrier, fenêtres, popups, menus, arborescences, grilles et peuvent être mélangés à du code XHTML.
Utiliser les composants graphiques prédéfinis et les assembler permettra de se passer totalement de code JavaScript. S'il faut un comportement bien spécifique, il sera nécessaire de créer ses propres composants et de gérer aussi la partie cliente en JavaScript.
Avantages :
Le framework ZK, basé sur un moteur AJAX, permet :
Inconvénients :
ZUML (ZK User Interface Markup Language) un langage de balise (markup language) pour une définition d’interface utilisateur.