Miniaplicacions del Java (applets)

Informació Les miniaplicacions (applets) del Java són normalment petites aplicacions que es poden incrustar en una pàgina web.
 

No es pretén fer un curs del Java, però sí aclarir alguns conceptes per entendre què és un applet del Java i com es pot fer servir en una pàgina web.

A continuació, es comenten alguns conceptes que normalment indueixen a error, simplement per evitar confusions molt típiques entre el Java i el JavaScript.

Diferència entre el Java i el JavaScript

No s'ha de confondre el Java amb el JavaScript, ja que tenen semblances, especialment en el nom. El Java és un llenguatge de programació orientat a objectes i pensat per a la realització de programes, que es poden executar sols o, si és necessari, es poden programar com a miniaplicacions per incrustar-los en una pàgina web.

En canvi, el JavaScript, encara que té una certa orientació a objectes, es fa servir normalment com a simple llenguatge script per fer petits controls en la pàgina web. Aquests scripts poden ser relativament complexos, però no tenen entitat com a programa, no poden funcionar sols, sinó que depenen d'una pàgina web i dels esdeveniments que reconeix el navegador.

Són dos llenguatges diferents, l'ús és completament diferent i la forma d'inserir-los en una pàgina web també ho és.

Diferències en la forma de programar

La forma de programa del JavaScript és normalment a base de funcions simples que s'insereixen a les pàgines web, o fins i tot es poden crear llibreries de funcions que es guarden en un arxiu i es criden des de les pàgines HTML.

En canvi, per programar miniaplicacions del Java, s'ha de plantejar una utilitat, crear els arxius Java i precompilar-los amb el JDK o amb qualsevol editor del Java (que en el fons fa servir el JDK). Un cop s'ha fet el programa i la precompilació ha funcionat correctament, s'obté un arxiu format binari amb l'extensió .class i aquest és l'arxiu que es pot incrustar a la pàgina web.

A vegades, quan el projecte a programar és complex, es creen diferents arxius .class en una carpeta. Per evitar confusions i facilitar-ne la usabilitat, el que es fa és empaquetar tots els arxius .class en un únic arxiu comprimit amb extensió .jar que es pot inserir molt fàcilment en una pàgina web. Fem un petit esquema per aclarir-ho:

Tipus d'arxiu
.java .class .jar
Un arxiu on hi ha el codi del programa. Un arxiu compilat a partir d'un arxiu .java Un paquet format per diferents arxius .class
No es pot inserir en una pàgina web.

Es pot inserir en una pàgina web.

Es pot inserir en una pàgina web.

Diferències en la forma d'inserir el codi en una pàgina

El codi escrit en JavaScript es pot inserir en una pàgina HTML, especificant les etiquetes HTML <SCRIPT> i </SCRIPT>, i entre aquestes etiquetes, les funcions que siguin necessàries. Això s'ha pogut veure en els mòduls anteriors, amb totes les funcions del JavaScript que s'han vist al llarg del curs.

En canvi, el codi escrit en Java, s'ha de crear específicament com a miniaplicació del Java, s'ha de precompilar i finalment s'ha d'inserir a la pàgina amb unes etiquetes específiques per a miniaplicacions del Java.

   
Normalment, les miniaplicacions del Java són petites aplicacions, però poden ser força grans, depèn dels objectius de l'aplicació.

Conceptes bàsics sobre el Java

El Java és un llenguatge genèric, és a dir, el Java no és un llenguatge de programació específic per a una àrea determinada. En el fons, el Java no està especialment pensat per fer una cosa específica, és un llenguatge genèric, que ho pot fer gairebé tot, al mateix nivell que altres llenguatges, com el C, però amb algunes diferències que es comenten a continuació.

Aquest llenguatge és, normalment, més lent que altres, com el C. Això fa que per certes aplicacions en què la velocitat és important, no sigui recomanable. Aquest punt és discutible i això està en constant evolució, la qual cosa fa difícil preveure el futur.

Un dels aspectes que s'han de tenir en compte és que el Java no és específic de cap plataforma, és a dir, es pot fer un programa en un ordinador amb el Windows i després executar-lo en una màquina amb l'Unix o en una màquina amb el Macintosh, vigilant, això sí, les comptabilitats entre plataformes.

Un altre aspecte que s'ha de tenir en compte és que per executar un programa Java s'ha de tenir una màquina virtual del Java instal·lada a l'ordinador on es vol executar el programa.

Si algú vol investigar aquest tema, seria recomanable llegir algun tutorial sobre el Java, que es pot trobar fàcilment anant a un cercador i cercant les paraules clau Java tutorial.

El Java i els navegadors

Els navegadors com l'Explorer i el Mozilla Firefox tenen una petita màquina virtual del Java que permet executar des d'una pàgina web un petit programa Java. Aquest tipus de programa, pensat per ser executat per un navegador d'Internet, és el que s'anomena Applet del Java.

Possibilitats de les miniaplicacions del Java

Les miniaplicacions o applets del Java són normalment petites aplicacions que s'incrusten en les pàgines web i permeten executar accions que difícilment es poden fer d'una altra manera.

Per exemple, es poden fer servir per dibuixar gràfiques en el navegador, o per fer petits cercadors o calculadores o programes de xat, pantalles de dibuix comunes, editors de text, gestors de correu i un llarg etcètera.

És difícil donar exemples suficients per mostrar les possibilitats de les miniaplicacions del Java, i potser, la millor manera de saber-ne les possibilitats pot ser veure el que ja existeix.

Alguns exemples triats de la xarxa

Els exemples següents s'han triat de la xarxa i potser alguns tenen una adreça d'Internet errònia; això no es pot evitar, atesa la naturalesa inquieta i canviant de la web.

Corbes
http://www-groups.dcs.st-andrews.ac.uk/~history/Java/

Joc 4 en ratlla
http://www.geocities.com/Area51/Cavern/4535/connect4.html

Miniaplicacions de matemàtiques
http://www.xtec.net/recursos/mates/aqui/math-applets/math-applets.html

Miniaplicacions per posar a la pàgina web
http://www.galeon.com/webjordis/applets.htm
http://freewarejava.com/applets/index.shtml

Això només és una petita mostra del que es pot trobar, i és important recordar que alguns enllaços poden no funcionar; el més segur és anar a un cercador i cercar per Internet les miniaplicacions que interessin en un moment donat.

   
 
Pràctica

Dediqueu una estona a mirar alguns dels exemples seleccionats i les seves possibilitats i interacció amb l'usuari/ària que ofereixen.

 

 

Un cop mirades les miniaplicacions que hi ha als exemples, es pot veure clarament un denominador comú: totes estan incrustades en una pàgina web i totes estan emmarcades en un rectangle de dimensions fixades.

Això ens mostra un dels elements que s'han de tenir en compte a l'hora de pensar a posar una miniaplicació en una pàgina web: disposició respecte de la pàgina web i mida de l'espai previst per a la miniaplicació.

Recordeu aquest concepte a l'hora d'inserir la vostra miniaplicació a la pàgina.

   
 

Inserir una miniaplicació en una pàgina web

Per inserir una miniaplicació en una pàgina web, només cal tenir l'arxiu .class, i arxius associats si cal, saber les dimensions que ha d'ocupar la miniaplicació, i estar en possessió de les instruccions dels creadors de l'applet per sabert quins paràmetres cal posar.

Hi ha dues maneres d'inserir un applet. Una a partir de la vista Código, tal com heu fet amb els JavaScript, i una altra a partir dels menús del Dreamweaver. Ho fareu de les dues maneres.

   
 
Pràctica

Inserir un applet amb la vista Código

El primer que fareu serà un trencaclosques. Encara que l'exemple sigui molt simple, segur que hi podeu trobar utilitat. Feu clic a la imatge següent, per veure que és el que volem aconseguir.

Peça Trencaclosques

Heu de crear una carpeta nova amb el nom c:\cursd98\m7\trencaclosques

Copieu-hi tots els arxius de la carpeta trencaclosques que són dins de ../materials/m7/applet/.

Obriu el fitxer joc.htm amb el Dreamweaver.

Veureu que hi ha una taula amb dues columnes. A la columna esquerra hi ha inserida la imatge phi-phi.jpg. Situeu-vos ara a la columna de dreta que està buida i aneu a la Vista código.

Obriu l'arxiu codi_applet_joc.txt que teniu copiat a la carpeta que heu creat. Veureu que hi ha el codi següent:

<applet code=puzzlemaker.class width=275 height=200>
<param name="IMAGE" value="phi-phi.jpg">
<param name="ROWS" value="3">
<param name="COLS" value="4">
<param name="AUTHOR" value="Virtual_Max (http://come.to/vmax)">
<param name="KEY" value="112111122-134127118611281071">
</applet>

Copieu el contingut a la finestra Código. Deseu el document i comproveu que funciona.

Veureu que el que fa el codi és cridar un applet que s'anomena puzzlermaker.class. Els paràmetres serveixen per personalitzar-lo. Podeu canviar la imatge, les mides i les peces del trencaclosques. Els dos últims paràmetres indiquen el nom de l'autor i una clau que el mateix autor ha intoduït. És costum, en aquests applets gratuïts, deixar el nom dels autors com a deferència. Si es treu, moltes vegades funciona igual, però poden sortir missatges que no faran l'applet tan funcional.

Si canvieu a la vista Diseño, veureu que ha aparegut una imatge com la següent:

Captura vista diseño

La part de la dreta representa l'applet que heu inserit. Si us poseu a sobre, al pannell Propiedades podreu veure el següent:

Panell Propiedades applet

Els camps An i Al permeten canviar les mides de l'applet.

Feu clic al botó paràmetros i observeu que podeu canviar aquí també la imatge i les peces del trencaclosques.

Finestra parámetros applet

   
 
Pràctica

Inserir un applet amb la vista Diseño

L'objectiu d'aquesta pràctica és inserir un applet que generi aquest text

sense utilitzar la vista código.

Heu de crear una carpeta nova amb el nom c:\cursd98\m7\ona\

Copieu-hi l'arxiu flag2.class que hi ha dins de ../materials/m7/applet/ona/

Obriu el Dreamweaver MX 2004. Des de la barra de menú, activeu Archivo I Nuevo. Deseu el document amb el nom ona_text.htm a la carpeta que heu creat.

Inseriu l'applet a la pàgina amb l'opció Insertar | Medio | Applet.

També podeu fer-ho escollint l'opció apropiada a la barra d'eines Común:

Menú insertar applet

Apareix un navegador del Windows per seleccionar l'arxiu .class que voleu posar (en el vostre cas, flag2.class). Seleccioneu-lo i obtidreu una icona amb forma de tassa de cafè.

icona java

Feu clic a la tassa. Aneu el pannell Propiedades i canvieu l'amplada de l'applet a 500 píxels. Feu clic a Parámetros i introduïu els valors següents:

Finestra parámetros applet

Heu d'anar fent clic a la icona + per indroduir nous paràmetres. Deseu l'arxiu i comproveu que s'obté l'efecte desitjat.

   
 
Pràctica

Inserir un applet amb extensió .jar

Ara fareu un exemple molt semblant als anteriors: inserireu una calculadora dins una pàgina web. Podeu veure el model per fer-vos una idea del resultat.

Heu de crear una carpeta nova amb el nom c:\cursd98\m7\calc

Copieu-hi tots els arxius de la carpeta calc que són dins de ../materials/m7/applet/.

Obriu el fitxer clac.htm amb el Dreamweaver MX 2004.

Veureu que hi ha una taula amb tres files i dues columnes. Situeu-vos a la columna de l'esquerra de la segona fila i aneu a la vista Código.

Introduïu-hi el codi següent:

<applet code= "calc" archive="calc.jar" height="300" width="200">
Calculadora
</applet>

Com podeu veure, hi ha un nou paràmetre al codi que és archive="calc.jar". Aquesta és la diferència principal entre inserir arxius .class o .jar

La paraula Calculadora no afecta el funcionament de l'applet i es podria eliminar.

   
 

A la carpeta ../materials/m7/applet/tux/ teniu un altre exemple més sofisticat. És un joc amb sons i gràfics. Si l'obriu, feu clic a la imatge inferior: obrireu el fitxer tux.htm i veureu com funciona.

Pingu

Podeu observar que el codi és molt simple; l'únic que hi ha són les línies següents:

<applet code="Runtux.class" archive="tux.jar" align="baseline" width="320" height="320">
</applet>

Si copieu tot el contingut de la carpeta i afegiu el codi anterior a una pàgina web, observareu que el joc formarà part de la vostra pàgina.

 
Pràctica
Accediu a un cercador d'Internet, per exemple el Google, i busqueu les paraules applet i matemáticas.