« ZK (informatique) » : différence entre les versions
Suppression d'une faute de frappe (un S à hibernate) |
|||
Ligne 30 : | Ligne 30 : | ||
'''Avantages :''' |
'''Avantages :''' |
||
<br />Le [[framework]] ZK, basé sur un moteur AJAX, permet : |
<br />Le [[framework]] ZK, basé sur un moteur AJAX, permet : |
||
* de développer des interfaces à la fois |
* de développer des interfaces à la fois riches et esthétiques |
||
* de gagner du temps par rapport aux frameworks WEB classiques |
* de gagner du temps par rapport aux frameworks WEB classiques |
||
* de coder de manière simple (proche d'une application SWING ou AWT) |
* de coder de manière simple (proche d'une application SWING ou AWT) |
||
* d'avoir une application WEB full |
* d'avoir une application WEB full Java (aussi bien les traitements que les interfaces) sans la moindre ligne de Javascript à taper |
||
* ZK s'intègre parfaitement avec toute technologie JAVA : JMS, Hibernate, |
* ZK s'intègre parfaitement avec toute technologie JAVA : JMS, Hibernate, J2EE 5... |
||
'''Inconvénients :''' |
'''Inconvénients :''' |
||
* Le code généré est très intrusif : table dans des |
* Le code généré est très intrusif : table dans des tables dans des div etc... ce qui amène à une personnalisation difficile des composants. |
||
* La performance dépend du navigateur et de la machine. La fluidité ne sera pas celle d'une interface graphique classique. |
* La performance dépend du navigateur et de la machine. La fluidité ne sera pas celle d'une interface graphique classique. |
||
* La technologie est non standard, soutenue uniquement par une petite société. |
* La technologie est non standard, soutenue uniquement par une petite société. |
Version du 17 août 2011 à 11:03
Développé par | Potix Corporation |
---|---|
Dernière version | 3.5.1 () |
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 Wysiwig que de manipuler directement les objets en JAVA.
Principes
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 ce passe comme si l'interface graphique était gérée entièrement côté serveur. Il est aussi intuitif d'ajouter, enlever, modifier des composants graphiques qu'en 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 JSP 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 au quotidien : 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. Si vous désirez toutefois un comportement bien spécifique, vous devrez créer vos propres composants et gérer aussi la partie cliente en javascript.
Forces et faiblesses
Avantages :
Le framework ZK, basé sur un moteur AJAX, permet :
- de développer des interfaces à la fois riches et esthétiques
- de gagner du temps par rapport aux frameworks WEB classiques
- de coder de manière simple (proche d'une application SWING ou AWT)
- d'avoir une application WEB full Java (aussi bien les traitements que les interfaces) sans la moindre ligne de Javascript à taper
- ZK s'intègre parfaitement avec toute technologie JAVA : JMS, Hibernate, J2EE 5...
Inconvénients :
- Le code généré est très intrusif : table dans des tables dans des div etc... ce qui amène à une personnalisation difficile des composants.
- La performance dépend du navigateur et de la machine. La fluidité ne sera pas celle d'une interface graphique classique.
- La technologie est non standard, soutenue uniquement par une petite société.
- La licence payante pour une utilisation commerciale (beaucoup de frameworks concurrents sont 100% gratuits).
Pré-requis système
Pré-requis de compétences en programmation
Requis
- JAVA,
- HTML/CSS,
- XML
ZUML
ZUML (ZK User Interface Markup Language) un langage de balise (markup language) pour une définition d’interface utilisateur