jueves, 16 de julio de 2009

Diseño de interfaces gráficas en Java, Parte 1: El concepto y la herramienta


Duke, la mascota oficial de la plataforma Java

De vuelta a la carga después de mucho tiempo eh, pues una disculpa por el retraso, ya que el trabajo y las vacaciones consumieron mucho de mi tiempo. Ahora regreso con una pequeña serie de post sobre un tema que siempre fue de mi particular interés, debido a las diferentes dificultades que encontré al enfrentarlo: diseñar interfaces gráficas en Java.

¿Por qué me parece complejo? Pues porque debido a las características de esta plataforma, en el diseño de interfaces gráficas de Java se implementa el patrón MVC (Modelo Vista Controlador) que, como su definición lo indica, separa los datos de una aplicación, la interfaz de usuario y la lógica de control en tres capas distintas. Al hablar de la interfaz de usuario se refiere a la parte de los programas con la que los usuario se comunicaran con nuestra aplicaciones, mientras que la lógica de control se refiere a la forma en la que se ejecutarán las acciones que involucre un programa. En el MVC se habla de tres niveles en la aplicación, los cuales son el modelo (que contiene la gestión de los datos y la lógica de negocios), la vista (se ocupa de la aparición de los componentes de la interfaz de usuario en pantalla) y el controlador (que gestiona los eventos de entrada generados en la vista).



Además, resulta que en Java nos encontramos con varios conceptos muy interesantes, como la utilización de ubicaciones relativas en lugar de absolutas para los componentes de la interfaz gráfica, el contar con diferentes tipos de manejadores para la aparición de estos componentes y un control de eventos con varias opciones de implementación.

¿Y por qué Java? Para hacerlo corto diré que por una preferencia personal hacia este lenguaje, además de sus ya conocidas características: independiente de la plataforma, robusto, versátil, de libre utilización, cuenta con una gran comunidad de desarrolladores y una serie de aplicaciones IDE entre las que encontramos Eclipse, que es software 100% libre.

En el título hablo de Java 2, porque fue a partir de la versión 2 de este lenguaje que se dio un gran cambio en el desarrollo de interfaces gráficas, mejorando el funcionamientos de los programas por fortuna, pero aumentando un tanto la complejidad de la programación al introducir la biblioteca de clases Swing, de la que hablaremos más adelante.

La herramienta que utilizaré para los ejemplos es la más reciente versión de Eclipse, es decir el Eclipse Galileo, que pueden descargar desde la ubicación anterior (es la segunda opción de la lista, deje este enlace para que puedan seleccionar la descarga según su sistema operativo).



En la página de la comunidad en español de Eclipse podemos encontrar varios tutoriales para iniciarnos en el uso de este IDE. En particular deberían revisar el que se titula Programando Java con Elipse, ya que les dará una noción de cómo crear y gestionar proyectos en este lenguaje, así como el conjunto de herramientas para la programación con que se cuenta, para después puedan pasar a la creación de sus programas de manera más cimentada.

En esta serie de post me enfocaré en los conceptos del lenguaje y la realización de varios ejemplos, mientras que me detendré poco en la utilización de la herramienta de programación, de forma que alguien que desee utilizar un IDE distinto de Eclipse pueda hacerlo.

Hay que señalar que el entorno de desarrollo de Eclipse por defecto no cuenta con un editor visual para desarrollar interfaces gráficas en Java, por lo que en los ejemplos crearemos el código completo de la interface, no solo por esta característica del entorno, sino porque considero muy valioso conocer los detalles de la implementación de la vista y el controlador de las aplicaciones. Sin embargo, para los que ya sean más veteranos, les interesará saber que existe un complemento para Eclipse que permite incluir un editor visual para interfaces gráficas, llamado Visual Editor Proyect. Aunque se encuentra en desarrollo, ya permite incluir la mayoría de los componentes gráficos del lenguaje en nuestros programas de manera visual. En este artículo se muestra como instalar el mencionado plug-in.

También pueden revisar esta página que contiene un video-tutorial sobre el desarrollo de proyectos e interfaces gráficas en Java usando Eclipse, en el cual se incluyen las instrucciones para emplear el mencionado editor visual de interfaces gráficas.

Bueno, por ahora es todo lo que diré sobre los siguientes contenidos que veremos, solo les dejo el trabajo de revisar acerca de las características de Eclipse y en el post que seguirá, comenzaremos a introducirnos en los componentes de las interfaces gráficas en Java.

Hasta la próxima.

0 comentarios:

Publicar un comentario en la entrada