Java (zimanê bernamesaziyê)

**Java** zimanekî bernamekirinê ye ku di 25ê gulana sala 1995an de hate çêkirin. Bernameyên ku bi Java hatine nivîsandin karin li gelek deveran bê guhartin bişuxilin. Gelek tiştên di Java de ji C hatine deqene însan karibin hêsanîtir wê bi'elimin. Java di dinyayê de zimanê bernamekirinê yê herî naskirî ye.

## Tarîx
thumb|upright=0.5|Duke
thumb|James Gosling, ê ku Java çêkiriye (sala 2008)
James Gosling, Mike Sheridan û Patrick Naughton di hezîrana 1991 de projeya zimanê Java dest pê kirin. Di pêşiyê de Java ji bo televizyonên înteraktîv hatibû çêkirin, lê ji bo televizyonên wî wextî gelekî pêşketî bû. Navê *Java* ji qehwa Javayê tê, qehwa ji Îndonezya. Gosling Java bi sentaksek şêweya C/C ++ dîzayn kir deqena bernamekerên sîstem û programan kodê nas bikin.

Sun Microsystems di sala 1996an de versiyona pêşî ya gelemperî wekî Java 1.0 derxist. Java bi sûnda "carekê binivîse, li her derî bişuxilîne" (WORA) hat, û bi programên belaş ji bonî platformên popûler hat. Di gerokên webê yên mezin di wextekî nêzîk de xebitandina appletên Javayê di rûpelên webê de mimkun bû û Java zûka bi nav û deng bû. Kompîlera Java 1.0 ji bo ku li gorî taybetmendiya zimanê Java 1.0 bi cih bîne ji aliyê Arthur van Hoff ve bi Java dîsa hate nivîsandin. Bi hatina Java 2yê (di kanûna pêşîn a 1998-1999an de wek J2SE 1.2 hat weşandin), di versionyên nû de ji bo platformên cuda gelek konfîgurasyon hebûn. J2EE, ji bo sepanên saziyan teknolojî û APIyên ku axlebe di derdorên serveran (server environments) de dixebitin jî di nav xwe de dihewîne, J2ME jî ji bo sepanên telefonan hatibû optîmîzekirin. Navê versiyona sermasê guhertin J2SEyê. Di sala 2006an de, ji bo armancên bazirganiyê, Sunê guhertoyên J2yê yên nû wek Java EE, Java ME û Java SE bi nav kir.

Di sala 1997an de, Sun Microsystems ji bo resmîkirina Javayê, beşdarî standartên ISO/IEC JTC 1ê û paşê jî Egma Înternatîonal bû, lê di demeke kin de ji van beşdarî yan vekişî. Java wek standardeke *de facto* ma û bi Prosesa Civata Javayê (Java Community Process) dihate kontrolkirin. Carekê, tevî rewşa nermalavê ya xwediyê wê, Sun bêhtirê împlementasyonên Javayê belaş da ber destan. Sun bi firotina lîsansên ji bo berhemên taybet ên wekî Java Enterprise System, ji Javayê dahata xwe bidest dixist.

Sun, di 13ê çiriya dawî ya 2006an de, di çarçoveya lîsansa GPL-2.0ê de, gelek ji Java Virtual Machinê (JVM) wek nermalava bêpere û çavkaniya vekirî (FOSS) derxist. Di 8ê gulana 2007an de ev proses xilas bû, ji xeynî qismekî piçûk ê kodê ku Sun ne xwediyê heqê telîfê bû, hemû kodên bingehîn ên JVMyê di bin şertên belavkirina nermalava serbest û çavkaniya vekirî de hatin derxistin.

### Versiyon
Ji Java 9 pêve, her sal 2 versiyon têne derxistin, yek di adarê de û yek di îlonê de. Piştevaniya versiyonê li gora şîrketa ku wê derdixê tê guhertin. Li xwar me ên OpenJDKê lîste kirine. Piştî ku piştevanî xilas dibê (6 heyv ji xeynî ên bi piştevaniya dirêj), nûkirin hew ji wê versiyonê re tên û problem hew têne edilandin. Lê ferqên di neqeba versiyonan de hingî kêm in, gelekî hêsanî ye yek Javaya xwe nû bike. Ên ku li ser Javayê dişuxilin nûkirinê gelekî pêşniyar dikin û ji xeynî şîrketên mezin gelek kes ne hewce ne eleqê xwe ji piştevaniya dirêj bînin.

## Weşan

* Java Card - Ji bonî qertên jêhatî. Ev di milyaran qertên SIM, qertên benqê û tiştên bi wî şiklî de heye.
* Java ME - Ji bonî telefonên berê. Hew tê bikaranîn, lê di wextê xwe de di hema bêje hemû telefonan de hebû.
* Java SE - Javaya normal ku di hema bêje hemû programên Javayê de tê şuxilandin.
* Jakarta EE - Kitêbxanên "ji bonî şîrketan" ji bonî Javayê. Berê navê wê Java EE bû û weşaneke bixwe bû. Lê vêce tenê komeke kitêbxanan e û derveyî Java bixwe tê weşandin.

Di Blu-rayê de jî Java tê bikaranîn, jê re "BD-J" (Blu-ray Disc Java) tê gotin û ew şiklekî Java MEyê ye. Ji bernameyên BD-Jyê re "Xlet" tê gotin, di wana de gelek tiştên weke menûyên neqandinê, pişkok û nivîs karin hebin.

## Şiklê şuxilandinê

### Java Virtual Machine (JVM) û bytecode
Yek ji hedefên Javayê ew e ko bihêle bername di hemû sîsteman de bişuxilin, yanî divê bernameke Javayê di her sîstemî de bi eynî şiklî û xurt bişuxilê. Şiklê ku ev pê çêdibe ew e bê pêşî koda bernameyê tê xistin *bytecode*, ev şiklekî weke bernamekê ku tenê programa Java dikare bixwêne ye. Dûvre jî programa Javayê ji bonî her sîstemî tê çêkirin, û program *bytecodê* dixwêne û dixe koda ji bonî wê kompûterê û dişuxilîne.

## Rêziman

Gelek tiştên rêzimana Java ji C++ û C tên, ji vê malbata zimanên programkirinê re "C-family" tê gotin.

### Nimûna "Merheba, dinya!"

```java
public class Main {
	public static void main(String[] args) {
		System.out.println("Merheba, dinya!");
	}
}
```


Divê navê hemû dosyayên çavkaniyê (source code) eynî weke navê sinifê xuyakirî (public class) be û nav bi ".java" re xilas bibe. Wextê ku programek tê xistin *bytecode*, navê wê bi ".class" xilas dibê. Di her dosyaya Javayê de tenê yek sinifê xuyakirî çêdibe hebê, lê tê de gelek sinifên veşartî yan jî sinifên di bin ya xuyakirî (bin-sinif) de çêdibin hebin.

## Çavkanî

Kategorî:Îcadên amerîkî

Kategorî:Platforma Javayê
Kategorî:Zimanên programkirinê
Kategorî:Zimanê bernamekirinê