FortuneCookie, un plugin para gvSIG.
.. include-document:: org.gvsig.tools/reference-links
:rest:
El proyecto *FortuneCookie* es un plugin de ejemplo muy sencillo que pretende servir como patrón a seguir por el desarrollador a la hora de implementar sus propios plugins.
Pero, ¿qué ventajas nos aporta el uso de los distintos proyectos de *FortuneCookies*? En principio, el beneficio más directo es bastante obvio, ya que el hecho de trabajar sobre un proyecto completo totalmente implementado que compila y se ejecuta, permite centrarnos más en el desarrollo del código que en tareas de configuración. Y es que todos los proyectos de *FortuneCookies* tienen declarados sus ficheros POM con todas las dependencias mínimas para funcionar, además de establecer las relaciones entre ellos.
Por lo tanto, decir que nos encontramos ante un proyecto que nos proporcionará una serie de estructuras básicas, completas, compilables y ejecutables, a partir de las cuales comenzar nuestro desarrollo.
Además, presenta varias implementaciones que permiten mostrar al desarrollador los aspectos más destacados que deberá cubrir su plugin según la opción que más se adapte a la naturaleza del proyecto. Las variantes que presenta son las siguientes:
- **Básico**. Desarrolla los elementos esenciales en todo proyecto, como son el API y la implementación.
- **Con proveedores de servicio**. Presenta la estructura necesaria para la implementación de un plugin que haga uso de proveedores de servicios para el desempeño de sus funcionalidades. Aporta a la variante básica la definición del SPI y la implementación de dos proveedores: uno a través de *FortuneCookies* proporcionadas por un servicio Web, y otro desde un fichero de texto local.
- **Con interfaz gráfica de usuario**. Añade a la variante básica toda la estructura para desarrollar la interfaz gráfica del proyecto. Proporciona el API y la implementación del módulo de Swing encargado de la interfaz gráfica, entre los que se encuentra la definición de los paneles y las distintas herramientas para su manejo y visualización.
- **Con proveedores de servicio e interfaz gráfica**. Es un proyecto que reúne los dos puntos anteriores en uno sólo.
En caso de requerir más información sobre alguna de las variantes mencionadas, es recomendable dirigirse al documento `org.gvsig.tools.service`_
Además, también existe la opción de **proveedores de interfaz gráfica**. Ésta será la opción adecuada si, además de lo anterior, se requiere soporte para la adquisición de interfaces de usuario proporcionadas por proveedores (actualmente en construcción)