Limbajul de programare Java
In prezent Java este mai mult decat un limbaj de programare, este o colectie de tehnologie ce permite dezvoltarea si rularea de aplicatii sigure, portabile si scalabile. In functie de tipul de aplicatie ce trebuie dezvoltata un programator poate selecta una dintre urmatoarele platforme java:
-
Java 2 Platform, Standard Edition (J2SE) - contine compliatoarele, uneltele, masina virtuala java, setul de librarii (Java API) pentru dezvoltatea de aplicatii si applet-uri.
-
Java 2 Platform, Enterprise Edition (J2EE) – defineste standardul pentru dezvoltarea de aplicatii complexe multinivel. Se bazeaza pe J2SE si ofera in plus servicii, unelte si librarii pentru dezvoltarea de aplicatii multinivel complexe.
-
Java 2 Platform, Micro Edition (J2ME) – este un set de specificatii si tehnologii ce permite dezvoltarea de aplicatii java pentru dispozitive embaded: telefoane, PDA, imprimante etc.
Java este un limbaj de programare de nivel inalt, dezvoltat de JavaSoft, companie in cadrul firmei Sun Microsystems. Dintre caracteristicile principale ale limbajului amintim:
- simplitate, elimina supraincarcarea operatorilor, mostenirea multipla si toate "facilitatile" ce pot provoca scrierea unui cod confuz.
- robustete, elimina sursele frecvente de erori ce apar in programare prin eliminarea pointerilor, administrarea automata a memoriei si eliminarea fisurilor de memorie printr-o procedura eliberare automata a memoriei de obiectele care nu mai sunt folosite.
- complet orientat pe obiecte - elimina complet stilul de programare procedural
- usurinta in ceea ce priveste programarea in retea
- securitate - asigurând mecanisme stricte de securitate a programelor concretizate prin: verificarea dinamica a codului pentru detectarea secventelor periculoase, impunerea unor reguli stricte pentru rularea programelor lansate pe calculatoare aflate la distanta, etc
- este neutru din punct de vedere arhitectural
- portabililtate, cu alte cuvinte Java este un limbaj independent de platforma de lucru, aceeasi aplicatie ruland, fara nici o modificare, pe sisteme diferite cum ar fi Windows, UNIX sau Macintosh.
- compilat si interpretat
- asigura o performanta ridicata
- permite programarea cu fire de executie (multitheaded)
In functie de modul de executie al programelor, limbajele de programare se împart în doua categorii :
- interpretate : instructiunile sunt citite linie cu linie de un program numit interpretor si traduse în instructiuni masina; avantaj : simplitate; dezavantaje : viteza de executie redusa
- compilate : codul sursa al programelor este transformat de compilator într-un cod ce poate fi executat direct de procesor; avantaj : executie rapida; dezavantaj : lipsa portabilitatii, codul compilat într-un format de nivel scazut nu poate fi rulat decât pe platforma pe care a fost compilat.
Programele Java sunt atât interpretate cât si compilate.
In urma compilarii unui program java rezulta un set de fisiere speciale numite cod de octeti (eng. bytecode). Aceste fisiere nu sunt executabile pe nici un sistem de operare. Pentru a putea fi rulate este nevoie de o masina virtuala java ( masina virtuala java este o aplicatie care emuleaza un calculator) care va interpreta codul de octeti si va executa instructiuni specifice sistemului de operare pe care ruleaza. In acest fel se asigura independenta de platforma si portabilitatea aplicatiilor java.
Asadar pentru a rula o aplicatie java este nevoie ca pe masina pe care urmeaza sa fie executata aplicatia sa fie instalata in prealiabil o masina virtuala java specifica platforme respective.