Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ASIGNATURA:
PROGRAMACIÓN ORIENTADA A OBJETOS II
Ante la necesidad de crear una interfaz gráfica en Java surge la pregunta si utilizar AWT o
swing, a continuación, expongo similitudes y diferencias entre ambos:
AWT
AWT son las siglas de Abstract Window ToolKit, las herramientas originales de Java para crear
interfaces gráficas. Es una librería GUI portable para aplicaciones autónomas y/o applets,
proporciona la conexión entre nuestra aplicación y el GUI nativo.
Los componentes de AWT dependen de componentes de código nativo, por lo que a los
componentes se les suele llamar “heavyweight components” (componentes pesados).
AWT está pensado para aplicaciones que corran en navegadores antiguos y definido con los
mínimos de cualquier aplicación, es por esto que no incluye componentes complejos como
pueden ser tablas, vistas de árbol, barras de progreso y otros.
Panel: sirve para colocar botones, etiquetas, etc. En particular un applet es un panel.
Window: sirve para crear nuevas ventanas independientes del browser Web. Es decir,
ventanas que serán manejadas por el administrador de ventanas de la plataforma. Una
ventana independiente puede ser:
Frame es un tipo de ventana en donde se pueden colocar menús.
Dialog es un tipo de ventana para dialogar con el usuario. Se usan para colocar botones,
etiquetes, etc. Es decir, cumple la misma función que un panel, pero en una ventana
independiente.
FileDialog es un artefacto para que el usuario escoja un archivo.
Swing
Swing implementa un juego de componentes construidos sobre AWT y además proporciona un
“look and feel” conectable/intercambiable. Está escrito 100% en código Java y basado en el
framework Lightweight UI de la JDK 1.1.
Componentes Atómicos: son los elementos que no pueden almacenar otros componentes:
Componentes de texto: son aquellos que nos permiten procesar cadenas de texto, sea como
entrada o salida de información.
JTextField: permite introducir un campo de texto simple.
JFormattedTextField: permite introducir un campo de texto con formato.
JPasswordField: campo de texto que oculta los caracteres ingresados.
JTextArea: permite vincular un área de texto donde el usuario ingresara información o
simplemente para presentar cadenas de texto.
JEditorPane: permite vincular un área de texto con propiedades de formato.
JTextPane: similar al anterior, permitiendo otras opciones de formato, colores, iconos
entre otros.
Componentes complejos: son componentes un poco más avanzados, cumplen con funciones
enfocadas a procesos específicos y complejos, como por ejemplo obtener gran cantidad de
información de una base de datos, trabajo con nodos, colores entre otros:
JTable: permite vincular una tabla de datos con sus respectivas filas y columnas.
JTree: carga un árbol donde se establece cierta jerarquía visual, tipo directorio.
JList: permite cargar una lista de elementos, dependiendo de las propiedades puede
tenerse una lista de selección múltiple.
JFileChooser: es un componente que permite la búsqueda y selección de ficheros entre
otras.
JColorChooser: componente que permite cargar un panel selector de color
JOptionPane: no es algo complejo sino más un componente independiente que permite
mostrar un cuadro de diálogo personalizable.
Dentro de estos componentes existe una jerarquía que tiene que ver con el tipo de componente
al que se refiere, para entenderlo mejor dejo una imagen sobre esta jerarquía:
Como podemos ver todos los componentes heredan de la clase java.swing, es importante
mencionar que swing es la evolución del AWT (Abstract Window Toolkit), la cual también es un
conjunto de librerías enfocadas a la construcción de interfaces, pero AWT presenta problemas
al ser usada en distintos sistemas operativos.
Bibliografía:
Bell, Douglas. & Parr, Mike. (2008). Java para Estudiantes. México: Pearson.