Java – IT

Uttale
dʒˈa:va

Innhold

objektorientert programmeringsspråk for datamaskiner, utviklet av Sun Microsystems tidlig i 1990-årene for å fremstille applikasjoner som kan kjøres uavhengig av teknologisk plattform, primært for bruk på Internett og andre nettverk. Java har innebygget støtte for nettverk og for sikker kjøring av kode lastet ned fra andre datamaskiner. I praksis er det bare én alternativ plattform å bygge Internett-applikasjoner på, Microsoft .Net.

Utviklingen av Java skjer gjennom en forholdsvis åpen fellesskapsprosess kjent som Java Community Process. Java er likevel ikke en «åpen standard», fordi Sun eier varemerket, forbeholder seg retten til å godta alle endringer og utvidelser, og stiller bruksvilkår for språket. Sun har også avvist forslag fra store Java-aktører som IBM og BEA Systems om å distribuere Java som åpen kildekode.

For å kjøre en Java-applikasjon må en datamaskin (som kan være alt fra en server til en mobiltelefon) ha en Java virtuell maskin (JVM) som kjører selve applikasjonen, og en lokal implementering av standardklasser for tjenester som ellers kunne hentes direkte fra maskinens operativsystem, for eksempel grafikk, filsystem, nettverk med mer. JVM og disse klassene utgjør et Java-kjøremiljø (eng. Java Runtime Environment) for en gitt maskinplattform med operativsystem. Strukturen kan virke komplisert, men fordi et Java-program kompileres til en virtuell maskin, som fungerer likt uavhengig av den fysiske maskinen den kjører på, kan det deretter kjøres på alle mulige maskiner og operativsystemer. Tidlige Java-applikasjoner fikk ry på seg for å være tungrodde, men de senere årene har JVM-ene blitt langt mer effektive, blant annet på grunn av teknologier som “kompilering i siste liten” (just in time compilation).

Javas nettorientering, og evnen til å kjøre ekstern kode uten fare for sikkerheten, gjør programmeringsspråket særdeles velegnet for å kjøre lagdelte applikasjoner i distribuerte miljøer. Mange spill og tjenester til mobiltelefoner kjøres svært effektivt på Java, på samme måte som tunge nettapplikasjoner spredt på databasetjenere, applikasjonstjenere og hundrevis eller tusenvis av klienter. Java-applikasjoner spres gjerne på komponenter kalt applet hvis den er beregnet på en klient, servlet hvis den skal til en server, og portlet hvis den representerer en bestemt tjeneste på en sammensatt portal. Java sikrer at ekstern kode kjører i en lukket “sandkasse” uten kontakt med øvrige potensielt sårbare deler av maskinen eller annen programvare.

Fra 1999 ble Java gjenstand for en omfattende juridisk strid mellom Microsoft og Sun med gjensidige påstander om mislighold av kontrakter og lisensbetingelser. Sun fikk til slutt medhold i retten, og 2004 inngikk de to et omfattende forlik. Etter forliket har Sun og Microsoft innledet et fruktbart samarbeid for å sikre interoperabilitet mellom Java og .Net, og for å bidra til flere vidtrekkende og åpne standarder. Sun leverer en egen JVM til Windows som sikrer at Java-implementeringen til Windows-PC-er holder tritt med språkets teknologiske utvikling.

Anbefalt lenke