AWT



La programación en Java significa que debes tener las herramientas adecuadas a fin
de terminar tu proyecto rápida y eficientemente. Una de las herramientas esenciales
es el componente de GUI (interfaz gráfica de usuario).
Esto permite agregar fácilmente el componente gráfico sin la mayor parte de la programación
necesaria. En esta categoría, hay dos de las que puedes elegir.
La primera es la AWT (Abstract Window Toolkit) y el segundo es el swing,
que apareció más tarde.

¿Qué es Java AWT?


La Abstract Window Toolkit (AWT, en español Kit de Herramientas de Ventana Abstracta)
es un kit de herramientas de gráficos, interfaz de usuario, y sistema de ventanas
independiente de la plataforma original de Java. AWT es ahora parte
de las Java Foundation Classes (JFC) - la API estándar para suministrar
una interfaz gráfica de usuario (GUI) para un programa Java.

¿Qué es Java Swing?


El paquete Swing es parte de la JFC (Java Foundation Classes) en la plataforma Java.
La JFC provee facilidades para ayudar a la gente a construir GUIs.
Swing abarca componentes como botones, tablas, marcos, etc...
Las componentes Swing se identifican porque pertenecen al paquete javax.swing.


Ventajas y Desventajas de AWT y Swing


El AWT utiliza muchos de los comandos de la plataforma que le da una gran cantidad
de velocidad. Pero a fin de convertirlo para su uso en otras plataformas,
debe cambiar los comandos de la contraparte. Por otro lado, Swing utiliza código Java puro,
haciéndolo muy portátil  con el costo de velocidad y rendimiento a través de plataformas.


Otra característica de swing es que trata de emular la apariencia del sistema operativo
que se ejecuta en lo que se asemejan al entorno nativo. Esto es mejorado por AWT ya
que utiliza comandos nativos; se ve exactamente  como se ve el UI , interfaz de usuario.
Una ventaja importante de swing es que soporta mucho más características de lo que hace
AWT. Componentes como información sobre herramientas y los iconos no están disponibles
en AWT estando plenamente utilizables en swing. Las características agregadas y
puro diseño en Java de swing, aunque significa que necesite la orden del plug-in de Java
para que el programa se ejecute, mientras que la mayoría de los navegadores
se apoyan hoy en el AWT que elimina la necesidad de descargas de plug-in.


Para resumir, si deseas crear simples applets de java se pueden encontrar que,
los métodos de construcción rápida y fácil de AWT, pueden ser de gran ayuda.
Pero si desea crear una aplicación completa, podrías investigar lo que swing tiene
que ofrecerte. La lista de componentes mejorada y portabilidad podría para ser más útil.


----------------------------------------- * --------------------------------------------


AWT:
Pros
  • Speed: use of native peers speeds component performance.
  • Applet Portability: most Web browsers support AWT classes so AWT applets can run without the Java plugin.
  • Look and Feel: AWT components more closely reflect the look and feel of the OS they run on.
Cons
  • Portability: use of native peers creates platform specific limitations. Some components may not function at all on some platforms.
  • Third Party Development: the majority of component makers, including Borland and Sun, base new component development on Swing components. There is a much smaller set of AWT components available, thus placing the burden on the programmer to create his or her own AWT-based components.
  • Features: AWT components do not support features like icons and tool-tips.


Swing:
Pros
  • Portability: Pure Java design provides for fewer platform specific limitations.
  • Behavior: Pure Java design allows for a greater range of behavior for Swing components since they are not limited by the native peers that AWT uses.
  • Features: Swing supports a wider range of features like icons and pop-up tool-tips for components.
  • Vendor Support: Swing development is more active. Sun puts much more energy into making Swing robust.
  • Look and Feel: The pluggable look and feel lets you design a single set of GUI components that can automatically have the look and feel of any OS platform (Microsoft Windows, Solaris, Macintosh, etc.). It also makes it easier to make global changes to your Java programs that provide greater accessibility (like picking a hi-contrast color scheme or changing all the fonts in all dialogs, etc.).
Cons
  • Applet Portability: Most Web browsers do not include the Swing classes, so the Java plugin must be used.
  • Performance: Swing components are generally slower and buggier than AWT, due to both the fact that they are pure Java and to video issues on various platforms. Since Swing components handle their own painting (rather than using native API's like DirectX on Windows) you may run into graphical glitches.
  • Look and Feel: Even when Swing components are set to use the look and feel of the OS they are run on, they may not look like their native counterparts.





Componentes de AWT


TextField   
componente de entrada y salida
Componente que permite editar una línea de código simple.
public class TextField extends TextComponent


TextArea
Es un componente multi-linea que permite mostrar texto.
public class TextArea extends TextComponent

Label
Es un componente que nos permite poner un texto dentro de un contenedor.
public class Label extends Component implements Accessible

Button
Clase que crea un botón con una etiqueta. Se pueden capturar eventos para controlar el comportamiento del botón.
public class Button extends Component implements Accessible

CheckBox
Clase que representa al componente gráfico Checkbox. Un Checkbox es un componente
que puede tener los valores de true o false, dependiendo de si está marcado o no.
public class Checkbox extends Component implements ItemSelectable, Accessible

Scrollbar
Clase que representa a un componente que es una barra de desplazamiento.
Con la barra de desplazamiento podemos seleccionar un rango de valores.
public class Scrollbar extends Component implements Adjustable, Accessible

Choice
Representa un menú pop-up con opciones. La opción actual aparece como título del menú.
public class Choice extends Component implements ItemSelectable, Accessible

List
Es un componente que nos permite crear una lista de elementos, de los que podremos elegir uno o varios,
dependiendo de la configuración.
public class List extends Component implements ItemSelectable, Accessible

Canvas
Representa un área rectangular blanco sobre el que se pueden dibujar elementos,
así como detectar eventos del usuario sobre él.
public class Canvas extends Component implements Accessible

Frame
contenedores
Un Frame es una ventana de primer nivel con un título y un borde.
public class Frame extends Window implements MenuContainer

Dialog
Un Dialog es una ventana de primer nivel que suele ser utilizada para obtener datos del usuario.
public class Dialog extends Window


FileDialog
Nos ayuda a mostrar un cuadro de dialogo dónde el usuario puede seleccionar un fichero.
public class FileDialog extends Dialog

Panel
La clase Panel representa a un contenedor simple. En el contenedor es dónde podremos ir añadiendo
los diferentes componentes.
public class Panel extends Container implements Accessible





Comentarios

Entradas populares