Fordeler og ulemper med Java Virtual Machines

Java Virtual Machine (JVM) er et miljø som kjører Java-programmer. Java-programmer er kompilert til et mellomspråk kalt bytecode, som er det JVM kjører. Ethvert program kompilert til bytekode kan kjøres på enhver plattform som har en JVM installert på den. Dette gjør Java-programvare kompatibel med mange forskjellige dataplattformer. JVM har noen bemerkelsesverdige fordeler og ulemper som enhver utvikler bør veie nøye før de investerer i Java-utvikling.

Plattformuavhengighet

Java-bytekode kan skrives én gang og deretter kjøres på flere plattformer. Java-bytekode trenger ikke å bli portert til et spesifikt maskinvaremiljø fordi den kjører i Java Virtual Machine. Enhver applikasjon kompilert inn i Java-bytekode kan kjøres på en hvilken som helst dataplattform som har en Java Virtual Machine.

Dagens video

Sikkerhet

Java ble skrevet med sikkerhet i tankene. Java Virtual Machine har innebygde sikkerhetsfunksjoner som lar programmerere skrive svært sikre Java-programmer. Det forhindrer også skadelig programvare fra å kompromittere operativsystemet (OS) fordi det hindrer Java-applikasjoner i å samhandle med operativsystemets ressurser.

Opptreden

Java-programmer som kjører på en Java Virtual Machine har en tendens til å yte tregere enn tilsvarende programmer skrevet i C++. Systemnøytraliteten til bytekode fungerer som en ulempe når det gjelder ytelse. Dette er fordi kodeoptimalisering i stor grad er avhengig av systemspesifikke funksjoner. Siden Java-bytekode er systemnøytral, kan den ikke optimaliseres for et spesifikt maskinvaresett.

Korrekthet

Et program som fungerer, som forventet, sies å være korrekt. Siden et Java-program er avhengig av Java Virtual Machine for å kjøre den, må JVM være fri for feil for at programmet skal fungere korrekt. Denne avhengigheten av Java Virtual Machine introduserer et mulig feilpunkt for programmet. Heldigvis er Java Virtual Machine-programvaren produsert med svært høye standarder, og derfor er det ikke sannsynlig at den leveres med noen feil. Uansett er en feil i Java Virtual Machine en mulighet som bør vurderes.