Añadir Scripting a programas Java

0
25310

Bean Shell

Cuando construimos una aplicación profesional, es muy difícil prever todos
los usos que nuestros usuarios querrán hacer de ella.

Los paquetes ofimáticos ya incluyen un montón de funcionalidades pero también
permite al usuario final personalizar las herramienta, e incluso automatizar
tareas, proporcionando a estos usuarios un lenguaje de Script.

Otra caso similar, que asociaremos de un modo inmediato,  lo encontramos
con las páginas HTML que podemos potenciar con el uso de lenguajes de Script,
añadiendo efectos, validaciones personalizadas, etc.

Vamos a ver como podemos incorporar en nuestras aplicaciones Java capacidades
de Scripting e incluso que el propio lenguaje de Script sea también Java (cosa
que me han preguntado últimamente varias veces)

BeansShell

BeansShell es un producto gratuito que nos permite precisamente esto..

Vamos al Web del producto y nos lo descargamos
http://www.beanshell.org/home.html
.

Realmente solo necesitamos un Jar….

Haciendo simplemente doble click… nos aparece un interfaz interactivo donde
podemos empezar a probar.

Podemos ver un ejemplo simple. Si hemos trabajado anteriormente con otros
lenguajes de Script, tardamos en programar lo que invirtamos en ojear la guía de
usuario.

Integración en programas Java

Os vamos a enseñar como construir una pequeña aplicación visual donde dejar
un área para que el usuario escriba su programa y altere algún elemento gráfico
(la posición de un botón).

En NetBeans, creamos un nuevo proyecto… (al final tenéis el código por lo
que no hace realmente falta ningún entorno visual… nos vale el notepad)

Elegimos el directorio de trabajo

Cargamos el Jar para que se vean las clases dentro del entorno

Elegimos el fichero adecuado

Ahora añadimos visualmente una clase visual, a través del asistente

Elegimos la clase deseada (un diálogo)

Le asignamos un nombre a mi clase

Y pasamos a pintar nuestro controles.

Elegimos un Layout nulo para posicionar libremente los
componentes por pantalla.

Vamos a pintar un botón llamado elementoMovil que solo
usaremos para animar desde nuestro Script

Y al hacer doble click en el botón ejecutarScript, nos dirige al
código

Hemos usado NetBeans para crear el esqueleto….

Os mostramos el código generado y, en azul, las líneas añadidas.

Como punto especial, prestad atención a esta línea con la que intercambiamos
variables entre nuestro programa Java y el entorno de Scripting

i.set(“boton”, button1 );

Ejecución

Arrancamos aplicación y escribimos es código Script.

Si pinchamos el botón ejecutarScript….. magia … mirad como se mueve el
botón… (ahora elementoMovil está más al centro de la pantalla)

También podemos crear métodos (como este ejemplo que introduce un retardo),
crear objetos, gestionar los errores, etc…

Conclusiones

Es francamente impresionante el mundo de posibilidades que se nos abre, de un
modo tan simple, en el desarrollo de aplicaciones profesionales.

Ya tenemos un elemento más en el puzzle arquitectónico Java…. la gracia es
saber que utilizar en cada caso … sin abusar y complicar innecesariamente los
proyectos.

Sobre el
Autor ..

Dejar respuesta

Please enter your comment!
Please enter your name here