Elméleti alapozás
A Java-nyelv rövid története és komponensei
JRE - Java Runtime Environment - Java futási környezet
JVM - Java Virtual Machine - Java virtuális gép
JDK - Java Development Kit - Java fejlesztőkészlet
A Java-nyelvhez kapcsolódó rövidítések
A legendák szerint a Java elnevezés a rengeteg, a nyelv fejlesztése közben elfogyasztott, Java-szigetéről származó kávéadagtól származik (James Gosling - a Java fejlesztési csapat vezetője)...
Igazi programozói humor!
Ebből következően nem véletlen, hogy a nyelv első, legelterjedtebb szimbóluma a gőzölgő kávéscsésze lett:
Első 1.0 verzióját 1996-os publikációval (final release) a Sun MicroSystems alkotta meg, amely céget, vele az összes Java-szabadalmat 2009-ben felvásárolta az Oracle 7,4 milliárd dollárért. Érdemes tehát programozási nyelveket alkotni! A nyelv közvetlen ősei a C és C++ programozási nyelvek voltak.
A Java-verziók hivatalos megjelenése:
-
JDK Alpha / Béta - 1995.03.23.
-
JDK 1.0 - 1996.01.23. - Kódnév: Oak
-
JDK 1.1 - 1997.02.19.
-
J2SE 1.2 - 1998.12.04. - Kódnév: Playground
-
J2SE 1.3 - 2000.05.08. - Kódnév: Kestrel
-
J2SE 1.4 - 2002.02.13. - Kódnév: Merlin
-
J2SE 5.0 (1.5.0) - 2004.09.29. - Kódnév: Tiger
-
Java SE 6 - 2006.12.11. - Mustang
-
Java SE 7 - 2011.07.07. - Dolphin
-
Java SE 8 - 2014.03.18. - Spider
-
Java SE 9 - 2017.09.21
-
JDK SE 10 - 2018.03.20
-
JDK SE 11 - 2018.09.25
A nyelv fejlesztésének aktuális folyamatairól az openjdk.java.net címen tájékozódhatunk.
A nyelv kezdeti célja háztartási eszközök "okossá" tétele volt. Ebből a szempontból a tervezett nyelvnek a következő tulajdonságokkal kellett rendelkeznie:
-
egyszerű, de hatékony, könnyen futtatható - hiszen nem várható el egy háztartási eszköz célhardverétől, hogy olyan erős legyen, mint egy számítógépé,
-
platformfüggetlen, azaz hordozható - tehát ugyanazon Java-kód sokféle célhardveren legyen azonos módon futtatható; később látni fogjuk, hogy a Java ezt a JVM-technológia bevezetésével érte el,
-
biztonságos.
Az Internet robbanásszerű fejlődésével azonban 1995-96 tájékán a Java fejlődése új, nem várt irányt vett. A nyelv nyújtotta lehetőségekkel ugyanis aktívvá-interaktívvá lehetett tenni az addig teljesen passzív internetes böngészőket (Java applet). A Java voltaképpen emiatt terjedt el villámgyors sebességgel annak ellenére, hogy ezen funkcionalitása ma már idejétmúlt technológia. Végeredményben ma már több milliárd eszköz futtat valamilyen szintű Java-kódot.
Egyes szakkönyvek komponens szó alatt a megírt, de később újrafelhasználható kódot értik. A magam részéről ezt a kissé szűkített meghatározást nem követem és a szót általánosabb összetevő értelemben használom. Valójában ez sem elég az alábbi szoftverek meghatározására. A Java-nyelv komponensei rendkívül összetett, önálló működésre képes szoftverrendszerek. Mindegyikük az emberi elme egy-egy nagyléptékű alkotása.
JRE - Java Runtime Environment - Java futási környezet
Ahhoz, hogy egyáltalán hozzáférhessünk a Javához, először ezt a szoftverkörnyezetet kell feltelepítenünk. Hivatalos forrása: www.oracle.com.
Forrás - Source: www.oracle.com
A telepítés platform-, és operációs rendszerfüggő, a számunkra megfelelőt előzetesen nekünk kell kiválasztani. A szokásos telepítés után a Java-környezetet a JVM futtatja.
JVM - Java Virtual Machine - Java virtuális gép
A Java virtuális gép egy szoftverréteg az operációs rendszer és a Java-alkalmazás között. Célja a Java-alkalmazás ellenőrzött, biztonságos futtatása, voltaképpen egy további, mini operációs rendszer (amely természetesen nem veszi át az alatta lévő operációs rendszer feladatait). Szoftverügyileg nézve a JVM feladata a platformfüggetlen Java-bájtkódok optimális futtatása.
Forrás - Source: A&K Java Akadémia
A teljes JVM-specifikáció könyvformátumban is publikálásra került "kék könyv" néven (blue book). (Itt jegyzem meg, hogy a blue book elnevezés amerikai környezetben általánosabb könyvtípust takar: lényegében nagyon sokféle, összefoglaló igényű könyvkiadásra ugyanezen elnevezést alkalmazzák.)
Az Oracle által továbbfejlesztett Java virtuális gépet már Hotspot-nak hívják.
JDK - Java Development Kit - Java fejlesztőkészlet
Olyan szoftver-egységcsomag, amely mindent tartalmaz a Java-programok futtatásához, fordításához, hatékony fejlesztéséhez. Nevezik Java SE, Standard Edition Development Kit néven is. Fontos része az API - Application Programming Interface, amely egy előre megírt és szabadon felhasználható osztálykönyvtár a Java-programok objektumorientált fejlesztésére.
Nemcsak az Oracle biztosít JDK-környezetet, hanem más cégek is foglalkoznak ilyen jellegű fejlesztéssel, például NetBeans, Eclipse. A jelen honlap keretein belül mi az Eclipse-platformot fogjuk folyamatosan használni.
A Java-nyelvhez kapcsolódó rövidítések
Forrás - Source: A&K Java Akadémia