Introducción a JavaFX

logoFX

Las tecnologías web llegaron para revolucionar a la Ingeniería de Software, ya hace un tiempo las webapps al ser cada vez mas complejas tendieron a dividir la complejidad en 3 partes:

  1. lógica de la aplicación(JavaScript y lenguajes del lado del servidor p.e. php,python, ruby, perl, asp, etc…)
  2. El contenido de la aplicación (El marcado HTML)
  3. El diseño (CSS).

JavaFX es una implementación de esto, diviendo los elementos en:

  1. lógica de la aplicación(Java)
  2. El contenido de la aplicación (El marcado FXML)
  3. El diseño (CSS).

En otras palabras javaFX es un conjunto de librerías que utiliza Java para el manejo de la lógica de la aplicación, FXML para el marcado de contenido(botones, etiquetas, textos de entrada, etc..) y CSS para darle estilo o diseño a estos elementos de contenidos, la siguiente imagen ilustra como se comporta las tecnologías JavaFX en un patrón MVC.

Vista:

La parte de la vista son escenas las cuales el contenido están descritas por archivos con extensión .FXML estos son modificados desde la aplicación JavaFX Scene Builder por otra parte el diseño de la ventana(escena) se realiza mediante archivos de descripción de estilo .CSS

Controlador:

La vista previamente tiene la capacidad de definir un controlador el cual hace referencia a una clase en Java que se va a encargar de controlar la lógica de la ventana.

Modelo:

El modelo es el responsable de la recuperación de datos convirtiéndolos en conceptos significativos para la aplicación, así como su procesamiento, validación, asociación y cualquier otra tarea relativa a la manipulación de dichos datos.

En los siguiente contenido de esta categoría javaFX se va a vamos a explicar mas el funcionamiento de las vistas.

Le recomiendo descargar y revisar el código de la calculadora con JavaFX para que se vaya contextualizando con esta forma de crear aplicaciones.

Calculadora con JavaFX

Vamos a crear la siguiente calculadora:

calculadora_estructura

Ejemplo del funcionamiento

calculadora

Estructura:

Vamos a crear una calculadora, la cual tiene la siguiente estructura:

  • Calculadora.java
  • Controller.java
  • Evaluar.java
  • Vista.fxml
  • Style.css

Vista

La vista de la aplicación es el archivo Vista.fxml el cual describe una ventana divida en dos partes la parte superior contiene el texto de entrada y la parte inferior es una rejilla(GridPane) de 4×4 que contiene los botones (4 renglones de 4 columnas), como se puede ver a continuación.

calculadora_estructura_detalle

Controlador:

El archivo Controller se encarga de “controlar la lógica de la vista”, el cual contiene los métodos:

  • Evaluar: es ejecutada cuando se presiona el Enter en la “#entrada” o el botón con símbolo “=”
  • Borrar: Es ejecutada cuando se presiona el botón con símbolo “c”(clear)
  • OtroBoton: Es ejecutada cuando se presiona cualquier otro botón(0-9*/+-) y simplemente concatena el símbolo contenido en el botón a #entrada..

Evaluar.java se encarga de realizar las operaciones detectando errores de aritmética como la división entre cero.

Código:

Dejo el enlace del código fuente:

https://github.com/fitorec/calculadora_javaFX

Programacion de Palms con MOJO y Java

Introducción:

Existen múltiples formas de programar estos dispositivos móviles, aquí veremos como configurar nuestro equipo para poder programar a través del kit de desarrollo(MOJO) que nos ofrece esta compañía.

Desarrollo de Aplicaciones en Palm con SDK y MOJO

Desarrollo de Aplicaciones en Palm con SDK y MOJO

Tabla de contenidos:

0.- Breve introducción.

1.- Instalando Entorno de Desarrollo.

1.- Instalando el Entorno de Desarrollo.

linux

Nota: he configurado e instalado sobre ubuntu 9.04.

Lo primero que tenemos que hacer es instalar la suite Mojo SDK para nuestro entorno Linux para esto nos basamos en la documentacion que se localiza en la pagina:

Installing the Palm® Mojo™ SDK on Ubuntu 8.04 –  http://developer.palm.com/index.php?option=com_content&view=article&id=1585

1.1 . Instalando Virtual Box.

VirtualBox

VirtualBox

Descargamos el virtual box para nuestro linux en la siguiente liga:

http://www.virtualbox.org/wiki/Linux_Downloads

Por ejemplo en mi caso que tengo ubuntu 9.04:

$wget http://download.virtualbox.org/virtualbox/3.0.4/virtualbox-3.0_3.0.4-50677_Ubuntu_jaunty_i386.deb

luego ejecutamos nuestro archivo descargado para instalar.

$sudo deb virtualbox-3.0_3.0.4-50677_Ubuntu_jaunty_i386.deb

posteriormente descargas el SDK MOJO de la pagina de palm:

una vez descargado se instala:

$sudo deb palm_mojo_sdk-Ubuntu-1.1.0-sdk62-hud25_i386.deb


Instalación Palm plugin en Eclipse Windows Linux Mac

Desarrollo de Aplicaciones en Palm con SDK y MOJO

Desarrollo de Aplicaciones en Palm con SDK y MOJO

Para poder programar los dispositivos Palm la compañía desarrollo un kit de desarrollo denominado MOJO el cual esta disponible para distintas plataformas lo cual hace que su instalación sea distinta en cada de ellas.

Sin embargo existe una solucion mas accesible y generalizada para las plataformas si es que lo hacemos desde el Eclipse.

indice

0.- Instalación Eclipse.

1.- Instalación Mojo.

2.- Instalación Aptana.

3.- Probando paquetes.

4.- Fuentes y links

0.- Instalacion de Eclipse

Lo primero que tenemos que hacer es intalar el eclipse esto lo hacemos descargando la version mas actualizada desde el sitio:

Seguir las instrucciones o bien la instalacion la realizamos segun sea nuestro Sistema operativo p.e. en sistemas linux basados en debian basta con:

$sudo apt-get install eclipse
Regresar al Indice.

1.- Instalacion de MOJO

Para esto una vez instalado nuestro Eclipse lo abrimos de ahi desde el menu principal nos vamos a:

Help>Software Updates o bien (Ayuda>Actualizaciones de Software)

Una vez que le damos click nos aparecera una ventana como a la cual le damos click en la pestaña de “Available Software” lo cual nos debe aparecer una ventana parecida a:

Eclipse Instalación de Plugins

Eclipse Instalación de Plugins

Ahi le damos a agregar servidor (add site)  lo cual nos va a pedir una URL la cual debera ser dirigida hacia un archivo XML el cual contiene la informacion de los paquetes a instalar en este caso los paquetes de MOJO, siendo la direccion:

http://cdn.downloads.palm.com/sdkdownloads/1.1/eclipse-plugin/eclipse-3.4/site.xml

La ventana se debera ver como:

Añadir direccion de servidor de plugins

Añadir direccion de servidor de plugins

Una vez que insertamos dicha direccion nuestro Eclipse se tardara un poco en lo que revisa dicho archivo XML para ver los paquetes disponibles, para lo cual nos debera de aparecer en nuestro caso el MOJO, seleccionamos(CheckBox) estos paquetes y le damos instalar.

Instalación Mojo

Instalación Mojo

Casi por ultimo nos va a pedir una serie de cosas como que si aceptamos la licencia le damos que si.

Terminos y licencia

Terminos y licencia

Ya por ultimo nos va a pedir si deseamos reiniciar nuestro eclipse le decimos que si.

Regresar al Indice.

2.- Instalación de Aptana Studio

Aptana

Aptana

En el sitio oficial de palm nos recomiendan instalar el plugin para eclipse de Aptana el cual puede descargarse de su sitio oficial.

Sin embargo aqui vamos a ver como instalar desde el eclipse como plugin al igual que como lo hicimos con el MOJO(repetiremos los mismos pasos).

Bueno de igual forma abrimos el eclipse y nos vamos a:

Help>Software Updates o bien (Ayuda>Actualizaciones de Software)

Una vez que le damos click nos aparecera una ventana como a la cual le damos click en la pestaña de “Available Software” lo cual nos debe aparecer la misma ventana que cuando instalamos el MOJO.

de igual forma le damos “add site” e insertamos la URL siguiente:

http://update15.aptana.org/studio/25914/site.xml

Esta vez nos debera de aparecer el paquete “Studio Pro > Aptana Studio Professional” los cuales seleccionamos tal como lo muestra la siguiente imagen:

Selección Aptana Studio

Selección Aptana Studio

Una vez selecionado los paquetes le damos instalar, lo cual se tardara un poco en descargar dichos paquetes dependiendo de la velocidad de conexion.

Instalacion Aptana

Instalacion Aptana

Por ultimo de igual forma nos va a pedir reiniciar el eclipse le decimos que si.

Regresar al Indice.

3.- Probando Mojo y Eclipse.

Para probar abrimos nuestro Eclipse de ahi nos vamos a  “Archivo>nuevo Proyecto” lo cual nos debera aparecer como opcion el poder crear un proyecto del tipo “Palm WebOS>Mojo Aplication” el cual seleccionamos y le damos siguiente como se muestra en la figura:

Creacion Proyecto Mojo

Creacion Proyecto Mojo

De ahi seguimos con lo que nos pide el asistente, en este caso vamos a crear la aplicacion HelloWord (para mas info. seguir ejemplo) la cual esta disponible en el sitio oficial de desarrollo de Palm :

HelloWord

HelloWord

Una vez creada nos vamos a “Ejecutar>Depurar como>Mojo Aplicattion” Si seguimos bien el ejemplo nos debera de aparecer la siguiente ventana.

HelloWord

HelloWord

Regresar al Indice.

Fuentes :

Siempre es bueno agradecer por el conocimiento nos llega.

Installing Eclipse and the Plug-Ins — sitio oficial Palm Developer

http://developer.palm.com/index.php?option=com_content&view=article&id=1639

Installing this Plugin via Aptana or Eclipse – Sitio Oficial Aptana

http://www.aptana.com/studio/download/thanks?platform=plugin&os=false

Hello Word! – sitio oficial Palm Developer

http://developer.palm.com/index.php?option=com_content&view=article&id=1758

Ligas que considero importantes:

API -palm http://developer.palm.com/palm-sdk/jsdoc/

Developer Palm Guide –  http://developer.palm.com/index.php?option=com_content&view=article&id=1645

Regresar al Indice.

Instalacion de Java-6 Ubuntu 9.04 + Netbeans 6.7 + J2ME

Que tal muestro un post sobre la programación de dispositivos móviles lo primero que necesitamos es tener un IDE para esto yo recomiendo el NetBeans o el EclipseMe aquí veremos como instalar la versión mas actualizada del NetBeans:

Indice:

0.- Instalando Java

1.- Instalar NetBeans 6.7

2.- Instalar Sun Java Wireless Toolkit 2.5.2

3.- Configurar NetBeans

0.- Instalando Java

Primero tienes que instalar los paquetes de Sun:

$ sudo apt-get install sun-java6-bin sun-java6-jdk sun-java6-jre

Configurando Java al escribir el comando:

$ sudo update-alternatives --config java

Nos aparecerá una serie de opciones de la cuales eligimos el número que le corresponda a la opción: /usr/lib/jvm/java-6-sun/jre/bin/java
Regresar al Indice


1.- Instalar NetBeans 6.7

lo primero que tenemos que hacer es descargar el paquete del sitio oficial dejo la liga:

http://www.netbeans.org/downloads/start.html?platform=linux&lang=en&option=all&version=6.7

Abrimos una terminal en la ubicación donde se descargo:

Ejecutamos el archivo descargado :

$ sudo sh ./netbeans-6.7-ml-linux.sh

Instalamos la versión completa.

Una ves instalado abrimos el netbeans de ahí nos vamos ha:

herramientas>Complementos

Ventana Complementos Netbeans

Ventana Complementos Netbeans

Instalamos todo lo referente con Java Me

Regresar al Indice

2.- Instalar Sun Java Wireless Toolkit 2.5.2

Por alguna rara razón el NetBeans 6.7 no funciona del todo correcto con el simulador por defecto es por esto que es necesario instalar la versión mas reciente que se encuentra en:

http://java.sun.com/products/sjwtoolkit/download.html

Ejecutamos desde un terminal:

$sh sun_java_wireless_toolkit-2.5.2_01-linuxi486.bin.sh

Te mostrara la licencia de Sun y después de un rato te preguntará:

Do you agree to the above license terms? [yes or no]

Escribes yes para aceptar dicha licencia y presionas enter.
Después a no encontrar el interprete te aparece el siguiente dialogo:

No suitable Java interpreter was detected

0) Specify a path to a Java interpreter directory.

1) Cancel this installation.

Select a choice [0-1]:

Escribes 0 para insertar el interprete manualmente y presionas Enter.
Después Aparece el siguiente dialogo:

This application requires Java 2 SDK, Standard Edition (1.5 or later). Enter a path to a Java 2 SDK (For example: /user/jdk1.5/bin).You can type “exit” to cancel installation.

Enter a path to the Java 2 SDK:

Escribimos esta ruta: /usr/lib/jvm/java-6-sun/bin

Luego aparece el siguiente dialogo:

/usr/lib/jvm/java-6-sun/bin/java

Testing /usr/lib/jvm/java-6-sun/bin/java…

Please enter a directory into which you would like to install the Sun Java(TM) Wireless Toolkit, 2.5.2 for CLDC. [ default is /home/UsuarioLinux/UbicacionDescargas/WTK2.5.2 :

donde : /home/UsuarioLinux/UbicacionDescargas/WTK2.5.2 es el path de instalación (Al cual llamaremos PathWTK) escribimos uno por ejemplo: /home/UsuarioLinux/.WTK2.5.2 para que la carpeta  ~/.WTK2.5.2  sea oculta o bien si no te quieres complicar mucho presionamos solamente Enter para continuar.
Luego aparece el siguiente dialogo:

Check for Product Updates? [yes or no]

Escribimos yes y presionamos Enter.

Casi al final Aparece el siguiente dialogo:

0) Begin copying files if you are satisfied with the settings .

1) Cancel the installation.

Select a choice [0-1]:

Escribimos 0 y presionamos Enter.

Finalmente aparece el ultimo dialogo:

Checksumming…

Extracting the installation files…

Documentation for the Sun Java(TM) Wireless Toolkit 2.5.2 for CLDC is in the file PathWTK/index.html

In order to start using the Sun Java(TM) Wireless Toolkit 2.5.2 for CLDC, please run PathWTK/bin/ktoolbar

donde PathWTK es el directorio en donde se realizo la instalacion es importante que recuerdes este directorio ya que lo necesitaras para configurar el NetBeans.

Regresar al Indice


3.- Configurar NetBeans

Inicio NetBeans 6.7

Inicio NetBeans 6.7

Abres el NetBeans de ahi te vas a:

Archivo>proyecto nuevo>Java ME>Mobile Aplication>

Seleccionar el proyecto Java Me

Seleccionar el proyecto Java Me

Creamos un nuevo proyecto al cual le denominamos HelloMIDlet y luego le damos Terminar:

Creando el proyecto HelloMIDlet

Creando el proyecto HelloMIDlet

una vez creado nuestro proyecto le damos en sus propiedades donde nos aparecera un cuadro de dialogo como este:

Cuadro de Dialogo propuedades del proyecto

Cuadro de Dialogo propuedades del proyecto

De ahi nos vamos a Platform y precionamos el boton de “Manage Emulator” donde nos aparecera otro cuadro de dialogo como este:

Ventana Manejador de Emuladores

Ventana Manejador de Emuladores

Ahi precionamos el boton de “Añadir Plataforma” donde nos aparecera una nueva ventana como esta:

Añadiendo una plataforma

Añadiendo una plataforma

Por ultimo agregamos la plataforma del tipo: Java Me MIDP Platform Emulator y seleccionamos como directorio nuestro  PathWTK (Te acuerdas que te dije que se ocuparia) y Eliminamos el anterior Sun Java(TM) Wireless Toolkit para que los siguientes proyectos funcione con el WTK nuevo.

Por ultimo si todo se instalo correctamente nuestro ejemplo debe de funcionar perfectamente como en la siguiente imagen:

Simulacion Correcta!

Simulacion Correcta!

Regresar al Indice

Espero que a alguien le sirva este post y le pueda ahorrar tiempo a si como a mi tambien me sirvio este post en donde saque la configuracion para Eclipse y del cual me apoye (ahora tanto eclipse como Netbeans funcionan perfectamente con J2Me).

Eclipse + EclipseME + Ubuntu 9.04 –http://sowhatz.bligoo.com/content/view/522507/Eclipse-EclipseME-Ubuntu-9-04.html

sea oculta