El Swing Application Framework ( JSR 296) es una especificación Java para un marco de trabajo de aplicaciones simple para aplicaciones Swing , con una interfaz gráfica de usuario (GUI) en software informático . Define la infraestructura común a la mayoría de las aplicaciones de escritorio, lo que facilita la creación de aplicaciones Swing. Actualmente ha sido retirado. [ 1 ]
Características
La especificación JSR 296 define la estructura básica de una aplicación Swing. Define un framework como un pequeño conjunto de clases extensibles que definen la infraestructura común a la mayoría de las aplicaciones de escritorio :
- gestión del ciclo de vida, el inicio y el cierre de las aplicaciones;
- Soporte para la carga de recursos localizados;
- estado de sesión persistente;
- Apoyo a la vinculación flexible de acciones con su presentación.
Estado y hoja de ruta
El desarrollo de una implementación de referencia de código abierto llamada "appframework" comenzó en 2006. [ 2 ] Originalmente se esperaba que esta implementación fuera el medio para integrar JSR 296 en la próxima versión Java SE 7 (Dolphin) de Java , y el proyecto estaba programado para ser incluido en el hito 5 del desarrollo del Kit de Desarrollo de Java (JDK7). Sin embargo, en agosto de 2009, se anunció que el proyecto no sería incluido, debido a la imposibilidad de resolver fallas de diseño y lograr un consenso entre el equipo de JSR 296 antes de la fecha límite del hito 5. [ 3 ]
La implementación original de Swing Application Framework se ha suspendido indefinidamente. [ 4 ] Posteriormente, se retiró a petición del responsable de la especificación en junio de 2011. La última versión pública del proyecto appframework fue la versión 1.03. [ 2 ]
Horquillas y alternativas
Varias comunidades de código abierto han iniciado bifurcaciones de la implementación original, y se han creado otras bibliotecas de marcos de aplicación para lograr objetivos similares a los de JSR 296.
- Better Swing Application Framework
- El proyecto Better Swing Application Framework, o BSAF, es una bifurcación de la versión 1.03 del proyecto original appframework. BSAF se creó en Project Kenai en septiembre de 2009 y actualmente es la bifurcación más activa. Sus objetivos son eliminar errores y realizar pequeñas correcciones de diseño en la implementación original de appframework, manteniendo la compatibilidad con la versión 1.03. [ 5 ]
La última versión de BSAF 1.9.1 fue en 2012. [ 6 ] BSAF todavía está disponible en SourceForge , que tiene un botón que dice "Este proyecto ahora se puede encontrar aquí", que te lleva al proyecto Kenai, ahora desaparecido.
- Conjunto de utilidades y herramientas de Guice
- El Guice Utilities & Tools Set, o GUTS, es una implementación de JSR 296 que combina el appframework con la biblioteca de inyección de dependencias de Google Guice. Al igual que BSAF, también está alojado en Project Kenai. A diferencia de BSAF, GUTS se está alejando del patrón "singleton problemático" [ 7 ] [ 8 ] . Este proyecto comenzó en junio de 2009 y actualmente no está activo (la versión 0.1 se estancó en 2010). [ 9 ]
- Bifurcación del marco de aplicaciones Swing
- El Swing Application Framework Fork, o SAFF, es una bifurcación de appframework 1.03. Actualmente está alojado en GitHub . Sin embargo, este proyecto ha estado inactivo desde octubre de 2009. [ 10 ]
- Mapa del tesoro
- TreasureMap es una biblioteca que proporciona el uso independiente de la implementación de ResourceMap de appframework 1.03. [ 11 ]
- Plataforma NetBeans
- La plataforma NetBeans es un marco de trabajo robusto para aplicaciones Swing , con muchas más funcionalidades y una documentación más completa. Debido al fallo/retención de JSR, SAF se eliminó de NetBeans a partir de la versión 7.1. Los desarrolladores no parecen tener interés en ofrecer ninguna alternativa y sugieren que la plataforma NetBeans es el mecanismo adecuado para migrar proyectos SAF a una plataforma compatible. [ 12 ]
- Eclipse RCP
- Eclipse RCP es un gran framework de aplicaciones SWT (una alternativa a Swing ), para proyectos más grandes, que requiere más tiempo para su comprensión.
- jGAF - Marco de trabajo genérico para aplicaciones Java
- jGAF es una biblioteca simple y compacta para crear rápidamente aplicaciones Java Swing con todas las funciones. Este marco de trabajo gratuito de código abierto proporciona API para gestionar el ciclo de vida de la aplicación, menús, configuración, integración con el sistema operativo, persistencia de datos de la aplicación, protección de la aplicación, asistentes, preferencias, etc. [ 13 ]
Véase también
Enlaces externos
- Sitio web de JSR
- Descripción general del marco
- appframework, la implementación de referencia de código abierto para JSR 296
- Página de Source Forge BSAF
Referencias
- ↑ "El programa Java Community Process(SM) - JSRS: Java Specification Requests - detalle JSR# 296" .
- 1 2 appframework: Swing Application Framework
- ↑ Potochkin, Alexander, SAF y JDK7
- ↑ Potochkin, Alexander, Los marcos de trabajo alternativos de Swing
- ↑ Mejor marco de trabajo para aplicaciones Swing
- ↑ Mejor marco de trabajo para aplicaciones Swing - Última versión
- ↑ Hans Müller "El canto del cisne"
- ↑ JSR 296 "Desde las trincheras" (PDF)
- ↑ Conjunto de utilidades y herramientas de Guice
- ↑ Bifurcación del marco de trabajo de aplicaciones Swing
- ↑ TreasureMap , 20 de noviembre de 2018
- ↑ Plataforma NetBeans
- ↑ Java Generic Application Framework , 3 de septiembre de 2021
- Solicitudes de especificación de Java