Griffon es un framework de plataforma de cliente enriquecido de código abierto que utiliza los lenguajes de programación Java , Apache Groovy y/o Kotlin . Griffon está pensado para ser un framework de alta productividad al recompensar el uso del paradigma Modelo-Vista-Controlador, proporcionando un entorno de desarrollo independiente y ocultando gran parte de los detalles de configuración al desarrollador.
La primera versión es fruto del esfuerzo del equipo de Groovy Swing y un intento de aprovechar lo mejor del desarrollo rápido de aplicaciones, como lo indica su estructura similar a Grails, la agilidad de Groovy y la disponibilidad de componentes para Swing. El marco fue rediseñado desde cero para la versión 2, lo que permite utilizar diferentes lenguajes de programación JVM de forma aislada o en conjunto. Los kits de herramientas de interfaz de usuario compatibles son
Griffon tiene como objetivo reducir la confusión típica que se produce con el desarrollo tradicional de UI en Java. Gracias a la estructura MVC de Griffon, los desarrolladores nunca tienen que buscar archivos ni confundirse sobre cómo iniciar un nuevo proyecto. Todo comienza con:
lazybones crea <nombre_de_plantilla> <NOMBRE_DE_APLICACIÓN>
El proyecto generado sigue esta estructura:
%PROYECTO_INICIO% + aplicación griffon + conf ---> ubicación de los artefactos de configuración como la configuración del generador + controladores ---> ubicación de las clases de controladores + i18n ---> ubicación de los paquetes de mensajes para i18n + ciclo de vida ---> ubicación de los scripts del ciclo de vida + modelos ---> ubicación de las clases del modelo + recursos ---> ubicación de recursos que no son de código (imágenes, etc.) + vistas ---> ubicación de las clases de vista + fuente + main ---> opcional; ubicación de los archivos fuente de Groovy y Java (de tipos distintos a los de griffon-app/*)
La infraestructura del constructor permite una integración perfecta de diferentes bibliotecas de widgets como Swing, JIDE y SwingX.
En la primera versión, se incluyen tres aplicaciones de muestra:
Griffon se puede ampliar con el uso de complementos. Los complementos proporcionan acceso en tiempo de ejecución a bibliotecas de prueba como Easyb y FEST, y todas las bibliotecas de widgets, excepto las del núcleo Swing, se proporcionan como complementos. El sistema de complementos permite una amplia gama de adiciones, por ejemplo
Las características que eventualmente se convertirían en partes integrales de Griffon (constructores de UI) se presentaron en estos libros:
Libros que cubren Griffon: