Java (programmeringsspråk)
Java er et objektorientert programmeringsspråk, utviklet av James Gosling og andre utviklere hos Sun Microsystems. I november 2006 kunngjorde Sun at selskapet ville frigi Javakoden som åpen kildekode og dermed bli en av de største bidragsyterne innen dette globale miljøet.
Java | |||
---|---|---|---|
Tilblivelse | 1995 | ||
Paradigme | 9 paradigmer Multi-paradigme: Strukturert programmering, objektorientert programmering, funksjonell programmering, imperativ programmering, klassebasert programmering, selvmodifiserende programmering, generisk programmering, concurrent object-oriented programming, Komponentbasert programvareutvikling | ||
Designet av | James Gosling, Sun Microsystems | ||
Utviklet av | Sun Microsystems, Oracle | ||
Siste versjon(er) | 16 versjoner Java Standard Edition 10, Java SE 14.0.2, Java SE 15, Java SE 15.0.1, Java™ SE Development Kit 15.0.2, Java SE 16.0.1, Java SE 16.0.2, Java SE 17, Java SE 18, Java SE 11, Java SE 19, Java SE 8, Java SE 16.0.1, Java SE 15, Java SE 20, Java SE 21, Java SE 23 | ||
Typetildeling | statisk, sterk, forsiktighet, nominative, manifest | ||
Filendelse(r) | .java, .class, .jar, .jad, .jmod | ||
Lisens | GNU General Public License | ||
Påvirket av | |||
C++, C, Ada, Simula 67, Smalltalk, Objective-C, Object Pascal, Oberon, Eiffel, Modula-3, Mesa, Simula, C#, UCSD Pascal, boxing, variadic function, Java-annotering, Niklaus Wirth, Patrick Naughton, for-each-løkke |
I motsetning til f.eks. C, kompileres ikke Java til maskinkode, men til plattformuavhengig bytekode som kjøres av et underliggende lag programvare kalt Java Virtual Machine (JVM). Javaprogrammer kan derfor kjøre på alle operativsystemer hvor det finnes en Java Virtual Machine.
For å kjøre vanlige Javaprogrammer trenger man en Java Runtime Environment (JRE). Denne består av JVM samt de grunnleggende bibliotekene. For utvikling av Javaprogrammer må man ha Java Development Kit (JDK), som i tillegg til en fullverdig JRE inneholder Javakompilatoren og andre sentrale verktøy for Javautvikling.
Utgaver
redigerJava blir i motsetning til tidligere programmeringsspråk, som for eksempel C++, levert med et stort bibliotek av klasser og metoder, blant annet for bygging av grafiske grensesnitt og for kommunikasjon over Internett. Man kan grovt sett dele opp Java i tre; en standardutgave (Java SE), en forretningsutgave (Java EE) og en mikroutgave (Java ME).
Java SE
redigerJava SE (Java Standard Edition) inneholder de grunnleggende og nødvendige bibliotekene for å utvikle og kjøre Javaprogrammer. Versjon 8.0 ble sluppet 18. mars 2014[1]
Java EE
redigerJava EE (Java Enterprise Edition), bygger på Java SE og er en paraplybetegnelse på en mengde rammeverk som blant annet gir muligheter for å lage komponentbaserte, distribuerte flerlagsløsninger og webapplikasjoner. Den seneste versjonen av Java EE er for tiden EE 6. Akronymet J2EE (Java2 Enterprise Edition) ble benyttet fram til versjon 5 ble lansert.
Java ME
redigerDet finnes i tillegg til Java SE og Java EE en tredje versjon, Micro Edition [2](Java ME) som er et utdrag av Java SE spesielt tilpasset utvikling på mobiltelefoner. Denne teknologien har fått en enorm popularitet, noe f.eks. støtten for mobilspill og programmer på mobiltelefoner er et bevis på.
Java som åpen kildekode
rediger13. november 2006 kunngjorde Sun at store deler av Java ble lisensiert under GPL-lisensen.[3] 8. mai 2007 var prosessen ferdig, og alt unntatt en liten del Sun ikke hadde rettigheter til å relisensere er nå fritt. Et initiativ av Red Hat ble igangsatt for å bytte ut den ufrie delen med fri programvare igjennom prosjektet IcedTea. 4 % var ufritt i mai 2007, og mindre enn 1 % i mai 2008.
Åpningsprosessen har vært varslet i lang tid. I februar 2004 skrev blant annet presidenten i Open Source Initiative, Eric S. Raymond et åpent brev til Sun der selskapet ble oppfordret til å gjøre Java om til åpen kildekode.[4]
Programutviklingsmiljøer
redigerDet finnes flere integrerte utviklingsmiljø for å utvikle i Java. Disse har gjerne støtte for refaktorering, testrammeverk som JUnit og TestNG, og byggesystemer som Ant, Maven og Gradle.
Refactoring innebærer å forbedre kildekoden et program er basert på, uten å endre programmets oppførsel. Et eksempel er at hvis du endrer navn på en metode, skjer en automatisk endring på alle steder i koden der den metoden brukes. IntelliJ IDEA, Eclipse og NetBeans er tre eksempler på integrerte utviklingsmiljøer. Alle tre finnes i frie utgaver.
Norge
redigerDet norske javamiljøet er aktivt og arrangerer jevnlig fagmøter og den årlige konferansen JavaZone.
Høyere utdanning
redigerBåde Universitetet i Oslo, Oslomet – storbyuniversitetet, Universitetet i Bergen, Universitetet i Agder, Høgskolen i Bergen, Norges teknisk-naturvitenskapelige universitet, Høgskolen i Telemark, Høgskolen i Østfold og Norges Informasjonsteknologiske Høgskole lærer bort Java i data-grunnkursene sine, og legger også stor vekt på Java i senere kurs.
Hello, World i Java
redigerUtvikling i Java krever at Java Development Kit er installert på datamaskinen. Dette er et eksempel på et enkelt program som printer tekst til en konsoll i det integrerte utviklingsmiljøet.
// Hello.java
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
Referanser
rediger- ^ «Java 7 and Java 8 Releases by Date». java.com. Besøkt 3. januar 2017.
- ^ «Java Platform, Micro Edition (Java ME)». www.oracle.com. Besøkt 3. januar 2017.
- ^ Jay Wrolstad (13. november 2006). «Sun Microsystems Lifts the Lid on Java». Sci-Tech Today. Arkivert fra originalen 25. mars 2007. Besøkt 13. november 2006.
- ^ Eric S. Raymond (17. februar 2004). «Open Source Java». eWeek. Besøkt 13. november 2006.[død lenke]
Eksterne lenker
rediger- (en) Offisielt nettsted
- (en) Java (programming language) – kategori av bilder, video eller lyd på Commons
- Java SE
- Java EE
- Java i Norge
- JavaZone
- TheServerSide.com
- Full Java Tutorial