Que sont les classes Java Foundation?
Les Java Foundation Classes (JFC) sont des composants logiciels réutilisables qui peuvent être utilisés pour créer une interface utilisateur graphique dans une application Java®. Ils constituent une amélioration par rapport à la boîte à outils livrée avec les premières versions de Java®. Ils ont pour objectif de simplifier le développement de logiciels, de réduire le temps de programmation et de créer des applications identiques et performantes, quel que soit le type d'ordinateur sur lequel elles sont exécutées.
Les JFC sont un ensemble de composants d'interface utilisateur qui se développent sur le Abstract Window Toolkit (AWT) fourni à l'origine avec le langage de programmation Java®. Ce sont des composants JavaBeans ™ qui font partie de Java 2® et qui sont conçus pour être multi-plateformes et personnalisables. Ils sont conçus pour réduire le temps de programmation en fournissant des composants pouvant être réutilisés d'une application à l'autre et d'une plate-forme à l'autre. Les classes Java Foundation ne remplacent pas réellement la boîte à outils Abstract Window, mais en font plutôt partie. Cependant, ils permettent à l'idéal Java® "d'écrire une fois, de fonctionner n'importe où" plus complètement que l'AWT d'origine.
AWT permet la conception d'interface utilisateur, mais à l'aide du système de fenêtrage du système d'exploitation sur lequel il s'exécute. Cela rend difficile la création d’applications qui ont l’air et le même comportement sur toutes les plates-formes, en raison des différences inhérentes aux fonctionnalités entre les systèmes d’exploitation. AWT était également très limité en ce que l'ensemble de contrôles qu'il fournissait n'était pas assez large pour créer des interfaces utilisateur complexes et des applications logicielles avancées. Les composants AWT sont ce que Sun Microsystems appelle "poids lourd" car ils utilisent le système de fenêtrage de l'hôte.
Reconnaissant les limites d'AWT, les développeurs Netscape ont créé un ensemble de composants appelé Internet Foundation Classes. Il s’agissait d’un ensemble de composants "légers", des composants écrits nativement en Java®. Cela étend les fonctionnalités d'AWT et permet aux développeurs de créer des interfaces utilisateur qui conservent leur apparence lorsqu'elles sont exécutées sur différentes plates-formes. JavaSoft a ensuite lancé un projet commun avec Netscape, appelé projet Swing. Ce projet a abouti à un ensemble de contrôles d'interface utilisateur avec une variété comparable à celle disponible depuis n'importe quelle plate-forme de système d'exploitation.
Swing est un ensemble de composants légers que Sun a mis à la disposition du public, associé à plusieurs autres améliorations de fonctionnalités destinées au kit de développement Java (JDK) version 1.2. Ce paquet de Swing et d’autres améliorations de fonctionnalités était ce que JavaSoft a appelé les Java Foundation Classes. Les commandes de l'interface utilisateur Swing constituent la majeure partie des classes Java Foundation, qui incluent également, entre autres, des fonctions d'impression, de presse-papiers et d'accessibilité. Le JDK 1.2 inclut la version complète de JFC, bien qu'une version limitée ait été mise à disposition qui puisse être utilisée avec le JDK 1.1 alors en vigueur.