eFace est la première solution XAML pour Java au monde. Il fournit un modèle de programmation unifié pour construire à la fois une application client riche et une RIA. Il met des applications à l'abri du changement de technologie ou d'environnement tels que Swing, SWT ou Web/Ajax.

    Vote for it on EPIC :

eFace - XAML/WPF pour Java


eFace est un framework indépendant de la plateforme et neutre vis à vis des technologies d'affichage. Sa syntaxe XML et sa logique de fonctionnement restent compatibles avec XAML de Microsoft, qui est largement utilisé dans le dernier Windows Vista. Il est important à noter que depuis le Mars 2008, la specification devient publique sous la license OSP (Open Specification Promise).

eFace capture des informations sur les composants de l'interface utilisateur et transmet leur affichage à un moteur de rendu spécifique à la plate-forme. En fonction de la plate-forme ou du dispositif utilisé, le moteur de rendu décide de la meilleure façon de présenter l’interface utilisateur à l’utilisateur et reçoit les entrées de l’utilisateur.

Le noyau d'eFace, dont le nom de code est UPF (Universal Presentation Framework), reste compatible avec Microsoft WPF (Windows Presentation Foundation). Il s’agit d’une solution 100% Java.

eFace possède les avantages clés suivants par rapport aux solutions traditionnelles :

1. Développement rapide et orienté métier (Expérience utilisateur)

eFace met en place une infrastructure extensible et basée sur des composants, qui minimise la quantité de code que les développeurs ont à réécrire et qui maximise la possibilité d’une réutilisation du code. Cette approche rend possible la répartition des rôles des développeurs dans un projet : celle séparant les développeurs métier de ceux technologiques.

Le développeur technologique, conscient de la spécificité du dispositif de la plate-forme, acquiert le développement de composants réutilisables pour les développeurs de métier. Le développeur de métier possède les connaissances spécifiques du métier ainsi que la sémantique de chaque composant. Il ne s’intéressera ni à leur mise en œuvre, ni à l’affichage des dispositifs de plate-forme. L’objectif final de cet organisme est de minimiser le pourcentage de développeurs de technologie et d’accroître le domaine des activités de développement.

2. Applications à environnement unique

En utilisant eFace, des applications créées fonctionneront depuis une unique source dans de multiples environnements de moteurs de rendu. eFace fournit des moteurs de rendu pour SWT, Swing et pour ceux fonctionnant sur le Web comme un servlet ou un portlet. Les mêmes binaires peuvent être utilisés pour déployer des applications dans tous les environnements supportés, ces binaires ne nécessitant qu’un différent déploiement.

En outre, les fichiers XAML peuvent être partagés par. NET ou une application Java.

3. Isolation des changements technologiques

Le code de l’application n’étant pas écrit spécifiquement pour l’API pour l’environnement dans lequel il est exécuté, les moteurs de rendu eFace absorbent la charge de mises à jour et de correctifs, lorsque des mises à jour se produisent dans l'une des technologies de rendu employées, telle que Swing, SWT Web, etc.

4. Composant GUI idéal pour une approche MDD/MDA

XAML est un langage descriptif riche. Il s’agit en fait d’un langage exécutable indépendant de la plate-forme et neutre vis à vis de la technologie employée qui simplifie la tâche de génération de GUI, depuis des modèles logiques basés sur métiers, sur UML , BPM, ou directement en Java.