Scripturi Java

Soos Bela

Limbajul JavaScript (scriptul Java) este un limbaj de programare compact, bazat pe obiecte, folosit la dezvoltarea aplicatiilor Internet client-server. Netscape Navigator 2.0 interpretează scripturile Java, incluse într-o pagină HTML, serverul LiveWire permite crearea aplicatiilor asemănătoare scripturilor CGI. Într-o aplicatie client (scripturi Java într-o pagină HTML), Netscape recunoaste si răspunde la evenimentele utilizator (de exemplu: clic-ul de mouse; completare de formular; navigare; etc.)

JavaScript si applet Java

Limbajul JavaScript este asemănător cu applet-urile Java, fără tipurile statice si verificarea puternică a tipurilor oferite de appleturi. JavaScript a preluat majoritatea expressilor sintactice si a constructiilor de control de bază. În contrast cu sistemul de clase Java (compilate pe server înainte de executare), scripturile Java este interpretat de către client (Netscape), este bazat pe un număr mic de tipuri de date, reprezentând valori numerice, booleene si string. JavaScript are un model de obiecte, bazat pe instante simple, oferind si el capacităti semnificative. Scripturile Java oferă posibilitatea folosirii de functii fără cerinte speciale de declaratii. Functiile pot fi proprietătiile obiectelor, si se execută ca metode. Scripturile Java complementează appleturile Java prin expunerea proprietătiilor folosite de appleturi. Folosind scripturi Java se pot obtine si stabili proprietăti expuse pentru a interoga starea sau a schimba perfomanta unui applet sau plug-in. Programele Java sunt alcătuite exclusiv din clase si metodele lor. În cazul appleturilor declararea claselor, scrierea metodelor fac programarea mai complexă decât în cazul scripturilor.

JavaScript si HTML

JavaScript poate fi plasat întru-un document HTML în două moduri: ca declaratii si functii folosind elementul <SCRIPT>; sau ca metode de tratare a evenimentelor folosind elementele HTML.

Elementul SCRIPT

Un script fixat în documentul HTML cu elementul <SCRIPT> este de forma:

<SCRIPT LANGUAGE="JavaScript"> 
declaratie JavaScript... 
</SCRIPT> 

Între eticheta de început <SCRIPT> si cea de sfîrsit </SCRIPT> pot fi însirate oricîte declaratii JavaScript. Atributul LANGUAGE este optional. Observatie: JavaScript este sezitiv la tipul de caractere (majuscule/miniscule)

Un exemplu:

<HTML><BODY> 
<SCRIPT LANGUAGE="JavaScript"> 
document.write("Bonjour popor!") 
</SCRIPT> 
Tot fericit, tot fericit? 
</BODY></HTML> 

Rezultatul:

Bonjour popor! Tot fericit, tot fericit? 

Este bine ca functiile JavaScript să fie definite la începutul documentului (HEAD). Faptul că HEAD este lansat totdeauna primul, garanteaza lansarea functiilor înainte ca utilizatorul să aibă o sansă să producă un eveniment care ar putea să apeleze o functie.

Alt exemplu:

<HTML><HEAD> 
<SCRIPT LANGUAGE="JavaScript"> 
function line() { 
document.write("<HR ALIGN='center' WIDTH=50%>) 
} 
</SCRIPT> 
</HEAD><BODY> 
<SCRIPT> 
document.write(line()) 
</SCRIPT> 
Celebrul Hello! 
</BODY></HTML> 
Rezultatul: 
______________ 
Celebrul Hello! 

Tratarea evenimentelor

Aplicatiile JavaScript sunt determinate de eveniment. Evenimentele de obicei sunt rezultatele actiuni utilizatorilor (de exemplu miscarea mouse-ului). Există mai multe evenimente recunoscute de navigatoare (onBlur, onChange, onClick, onFocus, onLoad, etc.) Prin scripturi pot fi definite metode care vor trata automat aceste evenimente.

Metodele de tratare a evenimentelor pot fi incluse în documentele HTML ca atribute ale elementelor. Forma generală este:

<TAG eventHandler="JavaScript Code"> 

unde TAG este element HTML, event Handler este numele metodei de tratare a evenimentului.

De exemplu, se doreste întroducerea în pagină a unui buton, care la apăsare va reciti penultima pagină cerută.

<INPUT TYPE=button VALUE="Back 2" onClick="history.go(-2)"> 

Între ghilimelele după onClick pot fi puse mai multe comenzi JavaScript, despărtite cu ";"

Exemplul următor contine două cadre. Sectiunea <NOFRAMES> este întrodusă pentru navigatoarele care nu recunosc cadrele (acestea nu recunosc nici JavaScript). Cadrele sînt realizate cu ajutorul a două documente: index.html si menu.html. Pentru vizualizare se va lansa documentul index.html. care va împărti ecranul în două portiuni horizontale. În cea de sus va apare continutul documentului menu.html, iar în cel de jos continutul documentului de intrare hotsoft.html.

Sursa documentului index.html:

<HTML> 
<TITLE>Welcome to HotSoft</TITLE> 
<FRAMESET ROWS="17%,83%"> 
<NOFRAMES> 
<H4>Continut</H4> 
<A HREF=hotsoft.html TARGET="display">Bun Venit/A><BR> 
<A HREF=servicii.htm TARGET="display">Servicii /A> 
</NOFRAMES> 
<FRAME SRC=menu.html> 
<FRAME SRC=hotsoft.html NAME="display"> 
</FRAMESET> 
</HTML> 

Documentul menu.html contine două butoane, plasate în interiorul unui formular. Formularul este introdus deoarece butoanele pot apare doar în interiorul lor. La apăsarea butoanelor, ce se află în frame-ul de sus, în frame-ul de jos vor apare fie documentul hotsoft.html, fie servicii.html, în functie de butonul apăsat.

Sursa documentului menu.html:

<HTML> 
<BODY> 
<!- <A HREF=menu.html TARGET="_parent">Hide Frame</A> -> 
<FORM> 
<input type=button name=btn_welcome value="Bun Venit" 
onClick="window.open('hotsoft.html','display')"> 
<input type=button name=btn_servicii value="Servicii" 
onClick="window.open('servicii.html','display')"> 
</FORM> 
</BODY></HTML> 

Avantaje, dezavantaje

Compararea JavaScript/Applet Java trebuie făcută din mai multe puncte de vedere. Atât scripturile, cât si appleturile Java sunt aplicatii Internet. Aceasta implică în mod evident discutarea vitezei de transfer, a sigurantei client si server, precum si partajarea resurselor.

Experienta arată că în cazul appleturilor, răspunsul la o cere soseste cu o anumită întârziere, el fiind compilat pe server. Pe de altă parte, pentru executarea appleturilor, clasa respectivă trebuie luată de pe server (cea ce se întîmplă de fiecare dată automat, în mod transparent) cea ce în cazul unei retele aglomerate întroduce o întârziere semnificativă.

Scripturile Java, fiind texte simple (ASCII), incluse chiar în documentul HTML, măresc nesemnificativ mărimea documentului. Acesta se datorează faptului, că limbajul JavaScript fiind compact, bazat pe obiecte, în câteva linii putînd fi rezolvate efecte frumoase si utile. Documentul fiind text, se comprimă destul de bine la transfer. Dezavantajul scripturilor este că permite doar introducerea unor controle noi, sau redefinirea celor deja existente în navigator. În schimb are avantajul de a fi un limbaj simplu, care poate fi învătat foarte usor chiar si de cei care nu sunt experti în domeniul programării.


(C) Copyright Computer Press Agora