You are on page 1of 11

INTRODUCCION

Java es un lenguaje de programacin orientado a objetos que permite la


creacin de GUI (interfaz grafica de usuario) que es el conjunto de
componentes grficos que permiten la interaccin entre el usuario y la
aplicacin y es fundamental en el diseo de cualquier aplicacin.
En java existen dos tipos de interfaces o Apis que posee componentes
similares para la creacin de aplicaciones en donde el programador pueda
crear botones, etiquetas de textos, insertar imgenes, casillas etc. , estos son
AWT (Abstract Window ToolKit) y SWING. Estos tipos de aplicaciones
permiten el desarrollo de GUI, en donde la ms bsica es AWT y la ms
nueva es Swing, en donde se pueden crear aplicaciones ms complejas.
El propsito es mostrar al lector que entre AWT y SWING existen
diferencias no muy distantes, ya que una es descendiente de la otra, y
ambas demuestran ser tiles segn su compatibilidad

y aplicacin. A

continuacin se describen las diferencias de ambas, as como sus


caractersticas y los mtodos que ambos utilizan.

AWT

El Abstract Windows Toolkit es una librera portable para aplicaciones y/o


applets. Provee la conexin entre la aplicacin y el sistema de ventanas
nativo. Los componentes AWT dependen de sus contrapartes en cdigo
nativo (llamados peers) para mantener su funcionalidad, por lo que
frecuentemente son llamados componentes heavyweight. Adems permite
a los programadores hacer aplicaciones JAVA con componentes GUI (como
ventanas, botones, barras, campos de texto, etc).
La mquina virtual java es la encargada de traducir los llamados de AWT
a los que corresponden al sistema operativo donde est corriendo.

CARACTERISTICAS DE AWT
1. Amplio conjunto de componentes para interfaz grafica de usuario.
2. Un modelo robusto para el manejo de eventos.
3. Herramientas para manejo de graficas e imgenes, incluyendo clases
para forma, color y tipo de letra.
4. Clases para transferencia de datos.

FORTALEZAS Y DEBILIDADES DE AWT


Fortalezas:
1. Sus componentes son ms rpidos porque usan peers nativos.
2. Sus componentes reflejan mejor la interfaz propia del sistema en el
que estn ejecutndose.
3. La mayora de los browsers soportan las clases AWT, as los applets
pueden correr sin necesidad de un Java plugin.

Debilidades:
1. El uso de peers nativos crea limitaciones de plataforma ya que
algunos componentes podran no funcionar en algunas plataformas.
2. Muchas compaas, incluyendo Borland y Sun, basan el desarrollo de
nuevos componentes en Swing.
3. Los componentes AWT no soportan caractersticas como iconos y tips.
4. La versin del AWT que Sun proporciona con el JDK se desarroll en
slo dos meses y es la parte ms dbil 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 grficos novedosos. Quiz la
presin de tener que lanzar algo al mercado haya tenido mucho que
ver en la pobreza de AWT.
5. Los componentes de AWT dependen de componentes de cdigo
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
mnimos de cualquier aplicacin, es por esto que no incluye
componentes complejos como pueden ser tablas, vistas de rbol,
barras de progreso y otros.

MTODOS DE AWT
Imgenes:
1. boolean drawImage(Image img, int x, int y, ImageObserver observer);
2. boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int
sx1, int sy1, int sx2, int sy2, ImageObserver ob);
Texto:
1.
2.
3.
4.

void drawString(String str, int x, int y);


void drawChars(char charArray[], int offset,
int numChars, int x, int y);
void drawBytes(byte byteArray[], int offset,

5. int numChars, int x, int y)


Lneas:
1. void drawLine(int x1, int y1, int x2, int y2);
Mtodos de la Clase font:
2.
3.
4.
5.
6.
7.
8.

String getFamily();
String getName();
int getSize();
int getStyle();
boolean isBold();
boolean isItalic();
boolean isPlain();

Mtodos de clase rectangle:


1.
2.
3.
4.
5.

void move(int newX, int newY);


void translate(int xChange, yChange);
void setSize(int newWidth, int newHeight);
void grow(int widthChange, int heightChange);
void setBounds(int newX, int newY,int newWidth, int newHeight);

Mtodos de la clase color:


1.
2.
3.
4.
5.
6.

setColor(Color c);
int getRed();
int getGreen();
int getBlue();
Color darker();
Color brighter();
SWING

Swing es un toolkit para Java. Es parte de Sun Microsystems ' Java


Foundation Classes (JFC), un API para proporcionar una interfaz grfica de
usuario (GUI) para programas de Java. Esta implementado completamente
en lenguaje Java. Los componentes Swing no dependen de los peers para
su funcionalidad, por lo que a estos componentes frecuentemente se le llama
componentes lightweigth.
Swing fue desarrollado para proporcionar un sofisticado conjunto ms del
GUI componentes que el anterior Window Toolkit Resumen. Incluye widgets
para interfaz grfica de usuario tales como cajas de texto, botones,
desplegables y tablas.
CARACTERISTICAS DE SWING
1. Tiene todas las caractersticas de AWT.
2. Un conjunto de componentes de mayor nivel (listas en rbol, paneles
de pestaas, etc.).
3. Diseo en Java, no depende de cdigo nativo.
4. Trata de emular la apariencia del sistema operativo que se ejecuta en
lo que se asemejan al entorno nativo.
FORTALEZAS Y DEBILIDADES DE SWING
Fortalezas:
1. El diseo en Java puro posee menos limitaciones de plataforma.
2. El desarrollo de componentes Swing es ms activo.
3. Los componentes de Swing soportan ms caractersticas de lo que
hace AWT. Componentes como informacin sobre herramientas y los
7

iconos no estn disponibles en AWT estando plenamente utilizables


en swing.
4. Se cre para solucionar muchas de las limitaciones de AWT. Swing se
cre como un bien diseado, flexible y poderoso juego de
herramientas GUI.
Debilidades:
1. La mayora de los browsers no incluyen las clases Swing, porque es
necesario usar un Java plugin.
2. Los componentes swing generalmente son ms lentos y presentan
ms problemas debido a que estn hechos en Java puro y a
problemas relacionados con video en varias plataformas.
3. No siempre lucen igual que en el sistema donde fueron diseados.

METODOS DE SWING
Contenido del botn
JButton(String, Icon)
JButton(String)
JButton(Icon)
JButton()
void setText(String)
String getText()
void setIcon(Icon)
Icon getIcon()

Crea un ejemplar de JButton, lo


inicializa para tener el texto/imagen
especificado.
Selecciona

obtiene

mostrado en el botn.
Selecciona u obtiene

el
la

texto
imagen

mostrada por el botn cuando no est

void setDisabledIcon(Icon)

seleccionado o pulsado.
Selecciona u obtiene

Icon getDisabledIcon()

mostrada por el botn cuando est

la

imagen

desactivado. Si no se especifica una

imagen, el aspecto y comportamiento

void setPressedIcon(Icon)
Icon getPressedIcon()

crea una por defecto.


Seleccin u obtiene

la

imagen

mostrada por el botn cuando est


pulsado.

Ajustes sobre la apariencia del botn


Selecciona u obtiene dnde debe
situarse el contenido del botn. La
void setHorizontalAlignment(int)

clase AbstractButton permite uno de

void setVerticalAlignment(int)

los

int getHorizontalAlignment()

alineamiento

int getVerticalAlignment()

CENTER (por defecto), y LEFT. Para

siguientes

valores

horizontal:

para
LEFT,

alineamiento vertical: TOP, CENTER


(por defecto), y BOTTOM.
Selecciona u obtiene dnde debera
situarse
Void setHorizontalTextPosition(int)
void setVerticalTextPosition(int)
int getHorizontalTextPosition()
int getVerticalTextPosition()

el

texto

del

botn

con

respecto a la imagen. La clase


AbstractButton permite uno de los
siguientes valores para alineamineto
horizontal:

LEFT,

CENTER

(por

defecto), y LEFT. Para alineamiento


vertical: TOP, CENTER (por defecto),
y BOTTOM.

Funcionalidad del botn


void setMnemonic(char)

Selecciona la tecla alternativa para

char getMnemonic()

pulsar el botn.

void setActionCommand(String)

Selecciona u obtiene el nombre de la

String getActionCommand(void)

accin realizada por el botn.

Void
addActionListener(ActionListener)
ActionListener

Aade o elimina un objeto que


escucha eventos action disparados
por el botn.

removeActionListener()

Realiza un "click". El argumento


void doClick()

opcional especifica el tiempo (en

void doClick(int)

milisegundos) que el botn debera


estar pulsado.

CUADRO COMPARATIVO
AWT
SWING
1. Interfaz Java nativa sistema de 1. evolucin de AWT. Utiliza AWT
cdigo GUI presente en su sistema para crear una ventana del sistema
operativo. No va a funcionar de la operativo y, a continuacin, pinta
misma en cada sistema, aunque se cuadros de botones, etiquetas de
intenta.
texto, casillas de verificacin, etc.
2. Sus componentes son heredados 2. Los componentes swing se
del paquete javax.swing pero no reconocen porque anteponen la letra
anteponen

la

letra

antes

del J

antes

del

nombre.

Ejemplo:

nombre. Ejemplo: Button.


Jbutton.
3. Utiliza muchos de los comandos de
la plataforma que le da una gran 3. Swing utiliza cdigo Java puro,
cantidad de velocidad. Pero a fin de hacindolo muy porttil con el costo
convertirlo para su uso en otras de velocidad y rendimiento a travs
plataformas,

debe

cambiar

los de plataformas.

comandos de la contraparte.

10

4.

Compatible

con

mviles.
5. El argumento

dispositivos 4. Swing no es compatible con

que

recibe

dispositivos mviles.
el 5. Cada vez que

el

usuario

constructor es la etiqueta que se interacta con la aplicacin se gatilla


colocar sobre el botn. El aspecto y un

evento,

para

que

una

comportamiento de este botn es componente determinada reaccione


dependiente de la plataforma. La frente a un evento, debe poseer un
aplicacin se basa slo en que ser "escuchador" con, al menos, un
informada
presionado

cuando
por

el

el

ejecutar alguna accin.

botn

usuario

sea mtodo

determinado

que

se

para ejecutar al escuchar un evento en


particular.
CONCLUSION

AWT y Swing son herramientas fundamentales en la creacin de


aplicaciones graficas que permitan la interaccin entre usuario y aplicacin. Y
que una difiere de la otra dependiendo del entorno en que se desee hacer
compatible la aplicacin, es decir, AWT permite que las aplicaciones creadas
por l puedan ser ejecutados en cualquier entorno sin importar su
antigedad, sin embargo SWING se ejecuta en entornos ms potentes y
complejos aunque en ciertos casos muy lento.
Como se dijo anteriormente SWING es la evolucin de AWT por lo que
swing hereda sus libreras, sus clases logrando una presentacin ms
atractiva para el usuario y que pueda ser compatible a distintos sistemas
operativos. Como programadores es importante conocer estos dos tipos de
interfaces con el fin de saber cul de las dos se adapte a las necesidades de
los usuarios y ofrecindoles aplicaciones o sistemas adaptable a sus
sistemas operativos.

11

REFERENCIAS ELECTRONICAS

Palacio Guerrero, Alma. Introduccin a la programacin en Java. [Documento


en

lnea]

disponible

en:

http://fcqi.tij.uabc.mx/usuarios/palacios

/java7.pdf. Consulta: 25- 04 - 2015.


Definicin

de

AWT.

[Pagina

web

en

lnea]

disponible

en:

http://www.alegsa.com.ar/Dic/awt.php. Consulta: 25- 04 - 2015.


Qu es SWING? [Pagina web en lnea] disponible en: http://gl-epnprogramacion-ii.blogspot.com/2010/04/que-es-swing.html.

Consulta:

26- 04 - 2015.
La diferencia entre AWT y SWING. [Pagina web en lnea] disponible en:
http://www.diferenciaentre.net/la-diferencia-entre-awt-y-swing/
Consulta: 27- 04 - 2015.

12

Diferencias entre Java Swing y Awt. [Documento en lnea] disponible en:


http://es.slideshare.net/extrajuandavid/diferencias-swing-y-awt
Consulta: 27- 04 - 2015.
Ovejero Snchez, Javier. SWING: JButton, JCheckBox y JRadioButton.
[Documento

en

lnea]

disponible

en:

http://itma.galeon.com/cont/controles.pdf. Pginas 16 - 18. Consulta:


27- 04 - 2015.

13

You might also like