|
JavaScript
JavaScript a devenit rapid un instrument important de dezvoltare si programare in Web, atat pentru simpla imbunatatire a paginilor HTML, cat si pentru aplicatii complete bazate pe Web. Deoarece motivul existentei sale nu este insa la fel de fascinant ca in cazul limbajelor Java sau HTML, JavaScript nu va avea, poate, niciodata popularitatea acestora, totusi reuseste ceva ce nu va izbuti nici unul dintre limbajele amintite - functionarea perfecta laolalta a unor tehnologii divergente. Poate ca tocmai natura sa omnipotenta ii confera aceasta forta care dainuie.
Majoritatea oamenilor vad probabil JavaScript ca fiind limbaj pe parte de client, ceea ce este, de altfel, adevarat. In acelasi timp insa, JavaScript este si un limbaj de scriptare pe parte de server. Sever-Side JavaScript (SSJS) de la Netscape si Active Server Pages (ASP) de la Microsoft au fost printre primele produse care au utilizat JavaScript ca limbaj de scriptare pentru Web.
Pentru a utiliza JavaScript nu este nevoie de un calculator performant, se pot folosi platforme Windows (98, 2000, NT, XP), Linux, Unix folosind bowsere ca Netscape Navigator, Internet Explorer, Sun HotJava, FireFox si versiuni Opera pentru Macintosh si altele.
1.1.2. JavaScript si World Wide Web
JavaScript a depasit limitele initiale ale browserului si poate fi gasit acum pe parte de server si in cele mai recente versiuni Windows. Pe parte de browser, JavaScript in sine prezinta limitari, ca si alte tehnologii Web, cum sunt HTML, Java, CSS (pagini cu stiluri in cascada) si modulele plug-in. JavaScript apare ca un instrument puternic pe masura ce este folosit cu alte tehnologii pentru a oferi solutii eficiente si bine studiate.
Prezentarea limbajului JavaScript
Ca tot ceea ce are legatura cu Web-ul, JavaScript este o tehnologie noua - mai noua chiar decat insusi limbajul Java. Initial, JavaScript a fost dezvoltata de Netscape sub denumirea de LiveScript, un limbaj de scriptare care intentiona sa extinda capacitatile HTML si sa ofere o alternativa partiala la utilizarea unui numar mare de scripturi CGI pentru prelucrarea informatiilor din formulare si pentru a adauga dinamism in paginile utilizatorilor. Dupa lansarea limbajului Java, Netscape a inceput sa lucreze impreuna cu firma Sun pentru a oferi un limbaj de scriptare a carui sintaxa si semantica erau strans legate de Java - motiv pentru care denumirea a fost schimbata in JavaScript. Dupa finalizarea limbajului, Netscape si Sun l-au lansat impreuna.
Una dintre motivatiile care au stat la baza limbajului JavaScript a fost recunoasterea necesitatii ca logica si inteligenta sa existe si pe partea de client, nu doar pe partea de server. Daca toata logica este pe partea de server, intreaga prelucrare este dirijata la server, chiar si pentru sarcini simple, asa cum este validarea datelor. In fapt, lipsit de suport logic pe parte de utilizator, mediul Web ar intra in arhitectura demodata "de la terminal spre calculatorul gazda", care a fost inlocuita de revolutia PC din anii '80. Asigurarea de logica in interiorul browserului il inzestreaza pe client si face ca relatia sa fie un adevarat sistem client/server.
Java a insemnat un pas in aceasta directie dar a fost implementat ca auxiliar al HTML in sine si nu se intentionase integrarea sa din punctul de vedere al unui limbaj. Fiind un limbaj strict in privinta tipului de date, Java nu este optim ca liant pentru numeroasele tehnologii de care Webmasterii au nevoie in crearea paginilor lor si necesita capacitati de programare de nivel redus - ceva ce majoritatea programatorilor HTML prefera sa nu exercite pentru a oferi logica in spatele elementelor unui formular. Un limbaj de scriptare de nivel ridicat, pe parte de client, parea a fi piesa lipsa din arena instrumentelor de programare pentru Web.
De la lansarea sa, in decembrie 1995, JavaScript si-a atras sprijin din partea principalilor distribuitori in domeniu, printre care Apple, Borland, Sybase, Informix, Oracle, Digital, HP si IBM. A continuat sa se dezvolte, obtinand recunoastere nu numai in majoritatea browserelor actuale, ci si in alte aplicatii pe care le-au lansat aceste companii, dar si altele.
Situatia s-a complicat insa atunci cand a intervenit Microsoft. Intelegand importanta scriptarii Web, Microsoft a dorit sa ofere suport si pentru JavaScript. Cand Netscape a preferat sa acorde licenta de tehnologie companiei Microsoft in loc sa o vanda, Redmond a analizat JavaScript, bazandu-se pe documentatia publica, si a creat propria sa implementare, JScript, care este recunoscuta de Microsoft Internet Explorer versiunile 3.0 si ulterioare. JScript 1.0 este aproximativ compatibil cu JavaScript 1.1, care este recunoscut in Netscape Navigator 3.0 si browserele ulterioare. Totusi, numeroasele versiuni JavaScript si diversele bizarerii specifice platformelor de operare le-au dat dureri de cap programatorilor pentru Web, atunci cand au incercat sa desfasoare site-uri Web capabile de JavaScript.
Din fericire, ajutorul se indrepta deja spre programatorii JavaScript frustrati. Netscape, Microsoft si alti distribuitori au acceptat sa predea limbajul unei organizatii internationale de standardizare, ECMA. De atunci, ECMA a finalizat o specificatie de limbaj, cunoscuta ca ECMAScript, pe care o recunosc toti distribuitorii. Desi standardul ECMA este util, atat Netscape cat si Microsoft au propriile lor implementari ale limbajului (JavaScript si JScript) si continua sa extinda limbajul dincolo de standardul de baza.
Pe langa JScript, Microsoft are propriul sau concurent pentru JavaScript, numit VBScript, realizat pentru a usura patrunderea pe Web a actualilor programatori VB. In esenta, VBScript este un subset al limbajului Visual Basic. Deoarece Netscape nu recunoaste VBScript, principalele sale utilizari sunt pentru intraneturile (sau site-urile Web) unde se inregistreaza o abundenta de utilizatori de Microsoft Internet Explorer.
Chiar tinand seama de VBScript, JavaScript a devenit cunoscut ca limbajul de scriptare standard pentru Web. Intrucat distribuitorii produc instrumente de dezvoltare Web care necesita un limbaj de scriptare, JavaScript este frecvent folosit in acest scop; astfel, Netscape foloseste limbajul cunoscut ca Server-Side JavaScript (SSJS) pe parte de server. Desigur, Microsoft nu a ramas in urma si, cand a lansat tehnologia Active Server Pages (ASP), aceasta includea si recunoasterea motorului JScript.
10 lucruri despre JavaScript care trebuie cunoscute
A invata sa folosim un instrument nou, asa cum este JavaScript, poate fi o adevarata piatra de incercare, deoarece nu este usor de inteles cum este folosit instrumentul si cum se incadreaza in tabloul de ansamblu. In continuare se vor prezenta aspectele fundamentale ale limbajului JavaScript, reduse la 10 lucruri.
JavaScript poate fi inglobat in HTML
Poate ca evenimentul JavaScript cel mai important a fost cuplarea sa timpurie cu HTML. Pe parte de client, intre cele doua nu exista aproape nici o deosebire. De obicei, codul JavaScript este gazduit in documentele HTML si executat din interiorul lor. Cele mai multe obiecte JavaScript au etichete HTML pe care le reprezinta, astfel incat programul este inclus la nivelul esential, pe parte de client, al limbajului.
JavaScript foloseste HTML ca modalitate de a sari in cadrul de lucru al aplicatiilor pentru Web si-i extinde capacitatile normale, asigurand evenimente pentru etichetele HTML si permitand acestui cod condus de eveniment sa se execute din interiorul sau.
JavaScript este dependent de mediu
JavaScript este un limbaj de scriptare, nu un instrument in sine si pentru sine. Software-ul care ruleaza de fapt programul JavaScript pe care-l scrieti este motorul de interpretare de mediu - Netscape Navigator, Microsoft Internet Explorer sau unul dintre motoarele pe parte de server. Cand este inclus intr-un document HTML, JavaScript depinde de browser pentru a fi recunoscut. Daca browserul nu-l recunoaste, programul va fi ignorat, ba chiar mai rau - daca nu se tine seama de browserele neacceptate, programul JavaScript in sine poate fi afisat ca text pe pagina respectiva.
Este esential ca aceasta dependenta sa nu fie uitata, atunci cand se decide cand si unde sa se utilizeze JavaScript in aplicatii.
JavaScript este un limbaj interpretat
Ca majoritatea limbajelor de scriptare, JavaScript este interpretat de browser inainte de a fi executat. JavaScript nu este compilat in binar - ca un fisier EXE -, ci ramane parte a documentului HTML la care este atasat. Dezavantajul unui limbaj interpretat este ca executarea programului dureaza mai mult, deoarece browserul compileaza instructiunile in timpul rularii chiar inainte sa le execute. Avantajul consta in faptul ca este mult mai usor sa se actualizeze codul sursa. Nu trebuie sa va faceti griji pentru versiunile vechi ale unui script JavaScript pe care l-ati scapat, deoarece daca-l modificati in fisierul HTML sursa, noul program este executat la prima accesare a documentului de catre utilizator.
Merita amintit ca implementarea Netscape a limbajului JavaScript pe parte de server va impune sa compilati tot codul de biti JavaScript si HTML, care este stocat intr-un fisier.web.
JavaScript este un limbaj flexibil in privinta tipului de date
JavaScript difera mult de limbajele stricte in privinta tipului de date, ca Java sau C++, in care trebuie declarate toate variabilele de un anumit tip inainte de utilizare. Spre deosebire de ele, JavaScript este mult mai flexibil. Se pot declara variabilele de un anumit tip, dar nu este obligatoriu; se poate lucra cu o variabila, desi tipul specific inainte de rulare nu este cunoscut.
JavaScript este un limbaj bazat pe obiecte
Netscape si altii se refera la JavaScript ca la un limbaj de programare orientat spre obiecte (OOP), dar aceasta este o deformare a adevarului inteles al sintagmei OOP.
Se lucreaza cu obiecte care incapsuleaza date (proprietati) si comportamente (metode), dar nu se pot subclasa. Modelul de obiect JavaScript este bazat pe instanta, nu pe mostenire.
JavaScript este condus de evenimente
Mare parte din codul JavaScript va raspunde la evenimente generate de utilizator sau de sistem. In sine, limbajul JavaScript este echipat pentru a trata evenimente. Obiectele HTML, de exemplu butoanele sau campurile de text, sunt imbunatatite pentru a accepta handlere de evenimente.
JavaScript nu este Java
Cand navigati pe Web, puteti intalni in unele site-uri asociate limbajului JavaScript propozitia: JavaScript nu este Java. Java si JavaScript au fost create de doua companii diferite si motivul principal pentru similitudinea denumirilor este legat de exclusiv de marketing.
JavaScript este strans integrat in HTML, o miniaplicatie Java este pur si simplu conectata la un document HTML prin eticheta <applet>. Miniaplicatia in sine este stocata in alt fisier, care este descarcat din server. Strict din privinta tipului de date, realmente orientat pe obiecte si un compilator, Java este un limbaj mai robust si mai complet. Deci, Java este folosit pentru miniaplicatii sau pentru aplicatii complete; JavaScript este folosit in primul rand pentru scripturi.
Daca este examinat limbajul in sine, sintaxa JavaScript aduce cu sintaxa Java.
JavaScript este multifunctional
JavaScript are o multime de fatete si poate fi folosit in multe contexte, pentru a oferi solutii la probleme din Web. Principalele sale scopuri sunt:
- Infrumuseteaza si anima paginile HTML statice prin efecte speciale, animatie si mansete.
- Valideaza date fara a trece totul serverului.
- Slujeste ca element constructiv in aplicatii client/server pentru Web.
- Dezvolta aplicatii pe parte de client.
- Slujeste ca liant pe parte de client intre obiecte HTML, miniaplicatii Java, controale ActiveX si module plug-in Netscape.
- Slujeste ca extensie pentru un server Web.
- Simuleaza conectivitatea bazelor de date fara sa foloseasca CGI.
JavaScript evolueaza
S-a precizat anterior cat de recent este limbajul JavaScript ca tehnologie. Daca se adauga acest fapt la ritmul rapid al schimbarilor din Web, este usor de inteles ca JavaScript in sine continua sa evolueze ca limbaj. Pe masura ce dezvoltati aplicatii JavaScript, va trebui sa va intrebati nu numai daca browserul recunoaste JavaScript, ci si care versiune anume a limbajului JavaScript (sau JScript) o recunoaste. Deoarece exista sase versiuni JavaScript (de la 1.0 la 1.5) si multe versiuni JScript (de la 1.0 la 5.5, plus cateva versiuni incrementale), tentativa de a prevedea solutii pentru toate diferentele poate fi exasperanta.
JavaScript acopera diverse contexte
Repetand o afirmatie facuta anterior, JavaScript este un limbaj de scriptare, nu un instrument, si in aceasta calitate poate fi util intr-o multime de contexte. Programatorii Web se indreapta mai ales spre scriptarea pe parte de client, dar se poate folosi JavaScript si pe parte de server in Netscape Enterprise Server si in cadrul de lucru Active Server Pages de la Microsoft. JavaScript este folosit ca un limbaj nativ pentru instrumente de dezvoltare Web, cum ar fi Borland IntraBuilder si Macromedia Dreamweaver (versiunea 2 si versiunile ulterioare); cand va ganditi la JavaScript, nu-l considerati exclusiv un limbaj de scriptare pe parte de client. In plus, versiunile recente de Microsoft Windows accepta JavaScript pe suprafata de lucru, cu mediul lor Windows Script Host (WSH).