CATEGORII DOCUMENTE |
Prezentarea generala a unui applet Java
Am discutat in prima parte a acestui capitol despre impactul pe care l-a avut Java in randul programatorilor. E greu de crezut ca mai exista acum oameni pentru care Web-ul nu mai este un mister si care sa nu fi auzit vorbindu-se macar odata de Java. Dar in acelasi timp, fiecare a fost poate surprins cand a auzit diverse caracterizari ale limbajului Java: script-uri, applet-uri sau aplicatii. Exista tendinta de a intelege prin aceste trei notiuni complet diferite acelas lucru: un program care poate rula intr-o pagina de Web. Sa vedem care este de fapt diferenta dintre cele trei categorii.
Script-ul Java este cea mai simpla, dar si cea mai primitiva, metoda de a face "vie" o pagina Web. Pentru a scrie un script Java este de ajuns sa scriem instructiunile in interiorul unui document HTML, document care la interpretarea de cate un navigator va rula comenzile respective. Acest lucru inseamna ca daca dorim sa vedem codul scriptului este de ajuns sa deschidem sursa documentului HTML.
Aplicatiile Java sunt programe care au initiativa pe toata perioda rularii. Pentru aceasta exista o clasa de pornire care contine o functie publica principala si care va fi lansata in executie la apelarea programului.
public class AplicatieJava
}
Aplicatiile Java sunt cu mult mai puternice decat script-urile si ele dau posibilitatea programatorului sa dezvolte clase independente.
Applet-urile Java sunt asemanatoare aplicatiilor, diferenta fiind ca primele intra in executie doar atunci cand sunt generate evenimente in sistem. Insa un applet are si alte caracteristici: codul lui ruleza in interiorul unui navigator, iar clasa de pornire are implementate metode de raspuns la anumite evenimente pe care le genereaza navigatorul. Iata si o varianta a clasei applet din WebOnWeb:
public class WebOnWeb extends Applet
public String getAppletInfo()
public void init()
public boolean action(Event evt, Object obj)
}
return false;
}
// alte metode
}
Pentru a rula un applet intr-un document HTML trebuie sa inseram in acesta clasa de pornire. Acest lucru se face cu ajutorul urmatorul tag, special definit:
<applet [atribute-standard]>
[parametri-applet]
[text-alternativ]
<applet>
unde
atributele standard sunt obligatorii:
code: Numele clasei principale
width: Latimea applet-ului
height: Inaltimea applet-ului
optionale:
codebase: URL-ul de baza al applet-ului
alt: Text pentru browsere text
name: Numele applet-ului
align: Alinierea applet-ului
vspace: Spatiere verticala
hspace: Spatiere orizontala
parametrii applet-ului sunt
name: Numele parametrului
value: Valoarea parametrului
textul alternativ este
textul ce va apare in caz ca navigatorul nu interpreteaza Java
La intalnirea acestui tag, navigatorul porneste incarcarea claselor ce compun applet-ul. Asemanator incarcarii unei imagini (pe care nu o putem vedea in totalitate sau nu o putem salva pana cand nu s-a incarcat complet), nici applet-ul nu intra in executie pana la incarcarea ultimei clase.
Dupa incarcarea codului, appletul este apelat pentru initializare. Acesta este momentul in care appletul isi pregateste parametri si obtine de la sistem resursele necesare rularii. Dupa ce initializarea a fost terminata, navigatorul trimite catre applet o comanda de pornire. Acesta este comanda care pune efectiv appletul in functiune deschizand interactiunea cu utilizatorul.
Un applet ruleaza atata timp cat navigatorul este activ. La schimbarea paginii curente, appleturile din vechea pagina nu sunt distruse, dar primesc o comanda de oprire temporara (pe care de altfel pot sa o ignore). La reincarcarea paginii, o alta comanda de pornire este lansata spre applet si acest ciclu se poate relua. In sfarsit, la oprirea navigatorului, appletul primeste o comanda de oprire definitiva, caz in care el trebuie sa elibereze toate resursele pe care le blocheaza.
In continuare, intre doua evenimente de pornire si respectiv de oprire temporara a appletului navigatorul transmite catre applet evenimente specifice oricarei interferente grafice cum ar fi evenimentul care provoaca redesenarea spatiului destinat appletului, evenimente legate de apasarea unor taste sau a unor butoane ale mausului, etc. Ca raspuns la aceste evenimente, appletul trebuie sa reactioneze schimband continutul ferestrei, lansand mesaje sonore, etc.
Orice applet Java reprezinta, din punct de vedere al limbajului un nou tip de obiect, derivat din obiectul standard Applet. Atunci cand navigatorul lanseaza un nou applet el nu face altceva decat sa instantieze un nou obiect din aceasta clasa. Subrutinele care trateaza evenimentele descrise anterior trebuiesc definite ca metode in interiorul acestui nou tip de obiecte.
In sectiunea anterioara am prezentat pachetul java.awt; clasa Applet a fost prezentata, asemeni clasei Frame, ca fiind o clasa ce mosteneste clasa Container. Este foarte interesant de vazut aceasta legatura, atunci cand definim in interiorul unei applet cu obiect de tip Frame: fereastra applet-ului ramane fixa in pagina HTML, pe cand obiectul Frame apare intr-o fereastra independenta, ce poate fi mutata, micsorata, marita sau poate fi inchisa.
In final trebuie spus ca, desi un applet ofera posibilitati de interactiune cu browser-ul, exista reale limitari impuse mai ales de securitatea datelor pe Internet. Pe langa efectele linistitoare aduse celor care doar vizualizeaza applet-ul (un applet nu poate scrie pe masina client), aceste limitari ingreuneaza munca programatorilor in cazul unei aplicatii client-server, care necesita de multe ori accesul de tip scriere/citire a unuia sau mai multor fisiere locale.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1129
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved