Introducción al AWT
AWT es el acrónimo del X Window Toolkit para
Java, donde X puede ser cualquier cosa: Abstract, Alternative,
Awkward, Another o Asqueroso; aunque parece que Sun se
decanta por Abstracto, seriedad por encima de todo.
Se trata de una biblioteca de clases Java para el desarrollo de
Interfaces de Usuario Gráficas. La versión del AWT
que Sun proporciona con el JDK se desarrolló en sólo
dos meses y es la parte más débil de todo lo que
representa Java como lenguaje. El entorno que ofrece es demasiado
simple, no se han tenido en cuenta las ideas de entornos gráficos
novedosos, sino que se ha ahondado en estructuras orientadas a
eventos, llenas de callbacks y sin soporte alguno del entorno
para la construcción gráfica; veremos que la simple
acción de colocar un dibujo sobre un botón se vuelve
una tarea harto complicada. Quizá la presión de
tener que lanzar algo al mercado haya tenido mucho que ver en
la pobreza de AWT.
JavaSoft, asegura que esto sólo era el principio y que AWT será multi-idioma, tendrá herramientas visuales, etc. En fin, al igual que dicen los astrólogos, el futuro nos deparará muchas sorpresas.
La estructura básica del AWT se basa en Componentes y Contenedores. Estos últimos contienen Componentes posicionados a su respecto y son Componentes a su vez, de forma que los eventos pueden tratarse tanto en Contenedores como en Componentes, corriendo por cuenta del programador (todavía no hay herramientas de composición visual) el encaje de todas las piezas, así como la seguridad de tratamiento de los eventos adecuados. Nada trivial.
No obstante y pese a ello, vamos a abordar en este momento la
programación con el AWT para tener la base suficiente y
poder seguir profundizando en las demás características
del lenguaje Java, porque como vamos a ir presentando ejemplos
gráficos es imprescindible el conocimiento del AWT. Mientras
tanto, esperemos que JavaSoft sea fiel a sus predicciones y lo
que ahora veamos nos sirva de base para migrar a un nuevo
y maravilloso AWT.
|
[Anterior] [Indice] [Siguiente] |