Java (gjuhë programimi)
Java (sqt. Xhàva) është gjuhë programuese e cila fillimisht u zhvillua nga James Gosling dhe inxhinierë të tjerë të kompanisë Sun Microsystems. Java, si komponentë thelbësore e Java platformës, u lëshua në publik më vitin 1995. Java edhe pse shumicën e sintaksës së saj e ka të derivuar nga gjuhët programuese C dhe C++, ajo në krahasim me këto dy gjuhë përmban një model të objektit më të thjeshtë si dhe ka përkrahje më të vogël për punë të drejtë-për-drejtë me resurset sistemore (si p.sh. memorien). Programet e shkruara në Java, zakonisht përpilohen në bajtkod që ekzekutohet në makinën virtuale të Java-së (ang. Java Virtual Machine) e cila është e pavarur nga arkitektura kompjuterike.
Gosling këtë gjuhë programuese fillimisht e kishte quajtur Oak (sq. dushk), sipas një druri dushku që shihej nga dritarja e zyrës së tij. Mirëpo, emri u shndërrua më mbas në Java për faj të drejtës së autorit, sepse ekzistonte një gjuhë tjetër programuese e quajtur Oak që nga 1991-shi.
Historia
Java filloi me një projekt të quajtur “Oak” nga James Gosling. Qëllimet e Gosling-ut ishin të vinte në jetë në makinë virtuale dhe një gjuhë që të ishte familjare me stilin e C dhe C++. Implementimi i parë ishte në 1995. Ai premtoi “Një shkrim, Zbato kudo” (WORA – Write Once, Run Anywhere), duke furnizuar runtime pa shpeza për platoformat popullore. Në fakt është i sigurt dhe siguria e tij mund të përshtatet, duke lejuar që hyrja e rrjetës dhe e file-eve të kufizohet. Me daljen e “java 2”, versionet u mundën me konfiguracione të shumëfishta të ndërtuara për platforma të ndryshme. Për shëmbull, J2EE ishte për programe për ndërrmarje dhe J2ME për programe për platforma të lëvizshme, si telefonat celular, etj. Në 2006, versionet e reja të “J2” u riemërtuan Java EE, dhe Java SE.
Këto janë versionet e projektit Java që nga 1997:
- JDK 1.1.4 (Sparkler) 12 shtator, 1997
- J2SE 1.2 (Playground) 4 dhjetor, 1998
- J2SE 1.3 (Kestrel) 8 maj, 2000
- J2SE 1.4.0 (Merlin) 13 shkurt, 2002
- J2SE 1.4.1 (Hopper) 16 shtator, 2002
- J2SE 1.4.2 (Mantis) 26 qershor, 2003
- J2SE 5.0 (1.5.0) (Tiger) 29 shtator, 2004
- Java SE 6 (1.6.0) (Mustang) 11 dhjetor, 2006 Arkivuar 4 korrik 2007 tek Wayback Machine
- Java SE 7 (1.7.0) (Dolphin) i parashikuar për 2008
Qëllimet primare
Gjatë procesit të krijimit, gjuha programuese Java duhej t’i përfshinte pesë qëllimet vijuese:
- Të jetë e “thjeshtë, e orientuar në objekte, dhe e afërme”.
- Të jetë e “fuqishme dhe e sigurt”.
- Të jetë “neutrale sa i përket arkitekturës si dhe portative”.
- Të ketë “efektshmëri të lartë”.
- Të jetë e “interpretuar, fijezuar dhe dinamike”.
Platforma Java
Njëra nga karakteristikat e Java-së është portativiteti, ku kjo d.t.th që programet kompjuterike që janë të shkruara në Java duhet të funksionojnë në mënyrë të ngjashme në cilëndo nga pajisjet ose/edhe sistemet operative që janë të përkrahura. Programeri duhet të ketë mundësinë që ta shkruaj programin një herë, ta përpilon një herë, dhe ta ekzekutoj çdokund, ku kjo është në përputhshmëri me parullën “Write once, run anywhere“ (sq. “Shkruaj një herë, ekzekuto kudo“) të Sun për Java.
Ky qëllim është arritur duke e përpiluar Java kodin në Java bajtkod në vend të kodit të makinës. Bajtkodi përmban instruksione që janë të ngjashme me ato të kodit të makinës, mirëpo këto instruksione janë të parapara që të interpretohen vetëm nga makina virtuale e Java-së.
Shembulli: Tung, Botë!
Programi i njohur Tung, Botë! mund të shkruhet në Java në këtë mënyrë:
/**
* Programi shfaq në terminal mesazhin "Tung, Botë!" dhe më pas përfundon
*/
public class TungBote {
public static void main( String[] args ) {
System.out.println( "Tung, Botë!" );
}
}
| Paradigma | Orientuar në objekte, strukturuar, urdhëror |
|---|---|
| E projektuar nga | Sun Microsystems |
| Doli më | 1995 |
| Emetimi i fundit | Java Standard Edition 6 (1.6.0) |
| Tipi i disciplinës | Static, strong, safe, nominative, manifest |
| Implementimi | I shumtë |
| Ndikuar nga | Objective-C, C++, Smalltalk, Eiffel, Ada 83, Mesa, Modula-3 |
| Ndikoi në | C#, D, J#, Ada 2005, ECMAScript, PHP, Scala |
| SO | Ndër-platformik |
| Licenca | GNU General Public License / Java Community Process |
| Website | http://java.sun.com |
