Meqënëse termat JDK, JRE dhe JVM ngatërrohen shpesh, në kuptim dhe në atë cka përfaqsojnë, e pashë të nevojshme këtë postim për të përmbledhur shkurtimisht këto tre paketa software.
Çfarë është JDK?
JDK është shkurtim i Java Development Kit, dhe përdoret për zhvillimin e aplikacioneve në Java. JDK është një mjedis zhvillimi i softuerit, që përfshin JRE. JDK përmbledh një interpretues, një kompilator (javac), një gjenerator dokumentimi (Javadoc), një arkivues (jar) dhe mjete të tjera ndihmëse në zhvillimin e software.
Çfarë është mjedisi i JRE?
Mjedisi i JRE është shkurtim i Java Runtime Environment. Ai përmban klasa kryesore dhe folder mbështetës, si dhe makinën JVM. JRE siguron mjedisin e ekzekutimit të kodit në Java.
Çfarë është JVM?
JVM është shkurtim i Java Virtual Machine. JVM siguron një mjedis për ekzekutimin e bytecode-s në Java. JVM është një makinë abstrakte që varet nga platforma dhe ka tre nocione si një specifikim: një dokument që përshkruan kërkesat për zbatimin e JVM, një program kompjuterik që i plotëson kërkesat e JVM,si dhe një implementim që ekzekuton bytecode-s në Java.
Dallimi midis JDK, JRE dhe JVM
Në skemën më poshtë dallohet lidhja mes JDK, JRE dhe JVM.
Çfarë përfshin JRE?
JRE përfshin segmentet shoqëruese.
- Teknikat e publikimit të kodit – Përfshin Java Web Start dhe Java Plug-in.
- UI toolkits – Ndërfaqja e përdoruesit, duke përfshirë Toolkit Abstract Window (AWT), Swing, Java 2D, Accessibility, Image I / O, Print Service, Sound.
- Libraritë e domosdoshme – Përfshin Interface Definition Language (IDL), JDBC, Invocation me Metoda të Largët (RMI), Thirrje Metodash të Largët mbi Protokollin Inter-Orb të Internetit (RMI-IIOP), Java Naming dhe Interface Directory (JNDI) dhe scripting.
- Librari tjera ndihmëse bazë – Java Beans, Zgjerimet e Menaxhimit Java (JMX), Java Management Extensions (JMX), Java Native Interface (JNI), Math, Networking, Override Mechanism, Security, Serialization, dhe Java për procesimin e XML(XML JAXP).
- Libraritë lang and util – përfshin klasa dhe ndërfaqe të nevojshme për administrimin, formimin, kompresimin, koleksionet, shërbimet e paralelizmit, Java Archive (JAR), Logging, Preferences API, Objektet si dhe shprehjet e rregullta.
- Java Virtual Machine (JVM), duke përfshirë edhe pajisjet Java HotSpot dhe Server Virtual Machines.
Si funksionon JRE?
Për të parë funksionimin e JRE, le të shqyrtojmë një skedar kod në Java, të ruajtur si shembull.java. Pasi kompilimit, kodi në bytecodes do jetë i ruajtur në skedarin me emrin shembull.class.
Gjatë kohës së ekzekutimit kryhen këto veprime:
Java ClassLoader : ClassLoader përmbledh çdo klasë të nevojshme për ekzekutimin e një programi. Ai ofron sigurinë duke izoluar namespace të përdorur në projekt nga namespace të importuar përmes sistemit.
Java ByteCode Verifier: JVM e vendos kodin përmes ByteCode Verifier, i cili verifikon formatin dhe kontrollon për ndonjë kod të parregullt. Kodi i parregullt, për shembull, është kodi që nuk merr parasysh të drejtat mbi Objektet ose abuzon me ekzekutimin e shënjuesave (pointers). ByteCode Verifier garanton që kodi respekton rregullat e framwork-ut.
Java Interpreter: Interpretuesi në Java ofron dy funksionalitete:
- Ekzekuton ByteCode
- Bën thirrjet e duhura
Si funksionon JVM?
JVM kthehet në funksion të JRE-së në kohën e ekzekutimit të një programi në Java. Zakonisht JVM njihet si interpretues në kohën e ekzekutimit. JVM më së shumti ndihmon inxhinierët software në shqyrtimin e ekzekutimit të brendshëm, të cilët shfrytëzojnë libraritë për projektet e tyre në JDK.
Pershtatur nga https://dzone.com/articles/difference-between-jdk-vs-jre-vs-jvm