Como crear una GUI en Java


Buen día a todos mis lectores, después de casi un mes de ausencia he vuelto para ayudarles en uno de mis temas favoritos en cuánto a Java: La creación de GUI´s, aquí les va…




Primero que nada, hay que definir qué significa GUI: Se refiere a la abreviación para Graphical User Interface (Interfaz Gráfica de Usuario), lo que se traduce en ventanas, botones, campos de texto, etiquetas descriptivas, etc. La creación de GUI´s en Java, como en cualquier otro lenguaje de programación es algo fundamental en el diseño de cualquier aplicación, ya que es la parte con la que el usuario final interactúa, y por lógica, este tema ha evolucionado con el tiempo, porque, ¿quién ve ahora una interfaz de línea de comandos?

En estos tiempos, ¿Con qué programa crees que quiera trabajar el usuario común?, ¿El de línea de comandos, o el que tiene la bonita GUI? Obviamente la mayoría elegiría la GUI ya que es mucho más comprensible y fácil de usar.

Ahora, hay varias formas de diseñar una GUI, a veces depende de la complejidad que tenga la GUI la forma en que lo hacemos, aquí les van 3 ejemplos para una misma situación: Digamos que quiero una ventana, que tenga  una etiqueta, un campo de texto y un botón, aquí va el primer ejemplo:


Algo desordenado, ¿no creen?, quizá para algunos no lo sea, pero pregúntense lo siguiente: ¿Qué pasará cuando tengan que desarrollar una interfaz mucho más compleja? No se trata solo de diseñar la ventana y agregar los componentes, se trata de añadirles oyentes de teclado, de mouse, que realicen acciones en base a eso, posiblemente cambiando fuentes, poniendo tooltips, soporte para tecnologías asistivas, etc.

Aquí va el siguiente ejemplo:
Un poco mejor, ¿no?, aunque algunos dirán, “¿Porqué es mejor si solo generamos más código?” La respuesta es que, ahora, tenemos control sobre la ventana y los componentes fuera del constructor, como se ve en el nuevo método que agregamos en este ejemplo, si hubiéramos intentado escribir un método así en el primer ejemplo, nos habría marcado error, hagan la prueba ;).

Ahora, estas formas de diseñar GUI’s es 100% válida, muchas veces como programadores decimos: “Ahhh, es una aplicación que jamás volveré a usar, por lo tanto no vale la pena esforzarme tanto en el estilo del código” Pero aquí les va algo de mi propia experiencia: Muchas veces, en otros proyectos digamos, de pronto acabamos necesitando extender ese pequeño e insignificante programa a fin de que sea parte de un proyecto de software mucho mayor, ¿y qué pasa? ¡El código es un desastre!, por lo tanto, a mi parecer, queda una solución: Que siempre que diseñemos GUI’s lo hagamos de una misma manera sin importar lo grande o chico que sea lo que pensamos hacer. Les mostraré un ejemplo de cómo lo hago yo, es algo simple y son libres de proponer uno mejor o cambiar un poco mi forma de hacerlo en sus propios códigos:

Es un código algo más extenso que el primero pero trae varios beneficios, van algunos a continuación:
El código está mucho más organizado.
Si necesitamos cambiar algo al código es mucho más fácil ya que siempre sabremos dónde está todo.
Evitamos errores como por ejemplo, agregar un componente a otro antes de instanciarlo.

Un pequeño problema con esta forma de diseñar GUI’s, es que siempre tendremos que escribir los mismos métodos, lo que resulta algo cansado y puede que olvidemos algún método o el orden en el que están, lo que podría generar errores, ¿Puedes pensar en una forma de resolver esto? Si no es así, de todas formas daremos atención a este problema en la siguiente entrada que ya estoy cansado de escribir :P, veremos también esta forma de diseñar GUI’s más a detalle, como el porqué organizar los método de esa forma. Es todo por hoy, no olviden comentar, dar su opinión en las casillas de abajo, suscribirse y todo eso, saludos.


Entradas Relacionadas:
Como crear una GUI en Java - Parte 2


Comentarios