Java (zimanê bernamesaziyê): Cudahiya di navbera guhartoyan de

Ji Wîkîpediya, ensîklopediya azad.
Content deleted Content added
Guherto (gotûbêj | beşdarî)
Kurteya guhartinê tine
Guherto (gotûbêj | beşdarî)
Rêz 28: Rêz 28:


=== Versiyon ===
=== Versiyon ===
Ji Java 9 pêve, her sal 2 versiyon têne çêkirin. Yek di adarê de û yek di îlonê de. Piştevaniya versiyonê li gora şîrketa ku derdixê tê guhertin. Li xwar me ên OpenJDK lîste kiriye. Piştî ku piştevanî xilas dibê, 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û bikê.
Ji Java 9 pêve, her sal 2 versiyon têne çêkirin. Yek di adarê de û yek di îlonê de. Piştevaniya versiyonê li gora şîrketa ku derdixê tê guhertin. Li xwar me ên OpenJDK lîste kiriye. 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û bikê. Ên ku li ser Javayê dişuxilin nûkirinê gelekî pêşniyar dikin û ji xeynî şîrketan gelek kes ne hewce ne eleqê xwe ji piştevaniya dirêj bênin.


{| class="wikitable"
{| class="wikitable"

Guhartoya 15:11, 18 kanûna pêşîn 2021

Java
ParadîgmaMulti-paradigm: generic, object-oriented (class-based), imperative, reflective
Designed byJames Gosling
DeveloperOracle Corporation et al.
Herî pêşî derket23 gulanê 1995 (berî 28 salan) (1995-05-23)[1]
Versiyona herî nû
Java SE 16.0.1 / 20 nîsanê 2021 (berî 2 salan) (2021-04-20)
Sîstema cûreyanDi cihê xwe de, biqewet, safe, nominative, manifest
Xilasiyên fayl.java, .class, .jar
Malperoracle.com/java/
Fikir stand ji
CLU,[2] Simula67,[2] LISP,[2] SmallTalk,[2] Ada 83, C++,[3] C#,[4] Eiffel,[5] Mesa,[6] Modula-3,[7] Oberon,[8] Objective-C,[9] UCSD Pascal,[10][11] Object Pascal[12]
Fikir da
Ada 2005, BeanShell, C#, Chapel,[13] Clojure, ECMAScript, Fantom, Gambas,[14] Groovy, Hack,[15] Haxe, J#, Kotlin, PHP, Python, Scala, Seed7, Vala, JavaScript
biguhêreBelge

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.

Dîrok

Duke
James Gosling, ê ku Java çêkiriye (sala 2008)

James Gosling, Mike Sheridan û Patrick Naughton di hezîrana 1991 de projeya zimanê Java dest pê kirin.[16] Di pêşiyê de Java ji bo televizyonên înteraktîv hatibû çêkirin, lê ji bo televizyonên wî wextî gelekî pêşketî bû.[17] Navê Java ji qehwa Javayê tê, qehwa ji Îndonezya.[18] Gosling Java bi sentaksek şêweya C/C ++ dîzayn kir ku pergal û bernamekerên serlêdanê wê nas dikin. Sun Microsystems di sala 1996an de yekem pêkanîna gelemperî wekî Java 1.0 derxist. Wî soz da ku bi nivîsa carekê, fonksiyoneliya li her deverê (WORA) bimeşîne, li ser platformên populer demên bê-lêçûn peyda dike. Bi ewlehiyeka pir ewle û bi mîhengkirina ewlehiyê, destûr da sînorkirinên tor û dosyeyan. Di gerokên webê yên mezin di demeka nêz da xebitandina appletên Javayê di rûpelên webê de mimkin bû û Java bi awayekî bilez populer bû. Komplogera 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 da wek J2SE 1.2 hat weşandin), guhertoyên nû ji bo platformên cuda gelek konfîgurasyon hatin avakirin. J2EE, ji bo sepanên saziyan teknolojî û APIyên ku bi gelemperî di hawirên rajekar de dixebitin jî di nav xwe de dihewîne, J2ME jî ji bo sepanên mobîlê hatibû optîmîze kirin. Guhertoya sermaseyê navê J2SEyê guherand. Di sala 2006an da, ji bo armancên bazarkariyê, Sunê guhertoyên J2yê yên nû wek Java EE, Java ME û Java SE hate bi nav kirin. Di sala 1997an da, Sun Microsystems ji bo fermîkirina Javayê, beşdarî standartên ISO/IEC JTC 1ê û paşê jî Egma Înternatîonal bû, lê di demeke kurt de ji van beşdarî yan vekişî. Java wek standardeke de facto ma û bi pêvajoya Civata Javayê hate kontrolkirin. Di carekê da, Tevî rewşa nivîsbariyê ya xwediyê wê, Sunê piraniya sepanên Javayê bê pere peyda kir. Rojê, bi firotina lîsansên ji bo berhemên taybet ên wekî Sîstema Java Enterpriseê, ji Javayê dahata xwe bidest dixist. Sun, di 13ê mijdara 2006an da, di çarçoveya lîsansa gPL-2.0ê de, gelek makîneya xwe ya ferazî ya Javayê (JVM) wek nermalava bêpere û vekirî ya çavkaniyê (FOSS) derxist. Sun, di 8ê gulana 2007an de ev pêvajo qedand, ji xeynî pareke biçûk a kodê ya ku Sunê mafê wê negirt, hemû kodên bingehîn ên JVMyê di bin şertên belavkirina nivîsbariya serbest/çavkaniya vekirî de hatin bikaranîn.[19]

Versiyon

Ji Java 9 pêve, her sal 2 versiyon têne çêkirin. Yek di adarê de û yek di îlonê de. Piştevaniya versiyonê li gora şîrketa ku derdixê tê guhertin. Li xwar me ên OpenJDK lîste kiriye. 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û bikê. Ên ku li ser Javayê dişuxilin nûkirinê gelekî pêşniyar dikin û ji xeynî şîrketan gelek kes ne hewce ne eleqê xwe ji piştevaniya dirêj bênin.

Versiyon Dîrok Rewşa rojane
JDK Beta 1995  Versiyona bê piştevanî
JDK 1.0 23ê kanûna paşîna 1996  Versiyona bê piştevanî
JDK 1.1 19ê sibata 1997  Versiyona bê piştevanî
J2SE 1.2 8ê kanûna pêşîna 1998  Versiyona bê piştevanî
J2SE 1.3 8ê gulana 2000  Versiyona bê piştevanî
J2SE 1.4 6ê sibata 2002  Versiyona bê piştevanî
J2SE 5.0 30ê îlona 2004  Versiyona bê piştevanî
Java SE 6 11ê kanûna pêşîna 2006  Versiyona bê piştevanî
Java SE 7 28ê temûza 2011  Versiyona bê piştevanî
Java SE 8 18ê adara 2014  Versiyona bi piştevaniya dirêj
Java SE 9 21ê îlona 2017  Versiyona bê piştevanî
Java SE 10 20ê adara 2018  Versiyona bê piştevanî
Java SE 11 25ê îlona 2018  Versiyona bi piştevaniya dirêj
Java SE 12 19ê adara 2019  Versiyona bê piştevanî
Java SE 13 17ê îlona 2019  Versiyona bê piştevanî
Java SE 14 17ê adara 2020  Versiyona bê piştevanî
Java SE 15 15ê îlona 2020  Versiyona bê piştevanî
Java SE 16 16ê adara 2021  Versiyona bê piştevanî
Java SE 17 14ê êlûna 2021  Versiyona bi piştevaniya dirêj

Weşan

  • Java Card - Ji bonî qertên jêhatî. Ev tişt di milyaran qertên SIM, qertên pere û tiştên bi wî şiklî de heye.[20]
  • Java ME - Ji bonî telefonên berê. Hew tê bikaranîn, lê di wextê xwe de di hema bêje hemû telefona de hebû.[21]
  • Java SE - Javaya normal ku di hema bêje hemû programan de tê şuxilandin.[22]
  • 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.[23]

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

Hedefeke Java hiştina şuxilandina bernameya di hemû sîsteman de ye, 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.

Nimûna "Merheba, dinya!"

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

Navê hemû faylên çavkaniyê divê navê klasa xuyakirî ku di wan de heye bê, û bi ".java" di xilasiyê de. Wextê ku programek tê xistin bytecode, navê wê bi ".class" xilas dibê. Di her fayla Javayê de tenê yek klasa xuyakirî çêdibe hebê, lê tê de gelek klasên veşartî yan jî klasên di bin ya xuyakirî de çêdibin hebin.

Çavkanî

  1. ^ Binstock, Andrew (gulan 20, 2015). "Java's 20 Years of Innovation". Forbes. Ji orîjînalê di adar 14, 2016 de hat arşîvkirin. Roja gihiştinê adar 18, 2016.
  2. ^ a b c d Barbara Liskov with John Guttag (2000). Program Development in Java - Abstraction, Specification, and Object-Oriented Design. USA, Addison Wesley. ISBN 9780201657685.
  3. ^ Chaudhary, Harry H. (28 tîrmeh 2014). "Cracking The Java Programming Interview :: 2000+ Java Interview Que/Ans". Roja gihiştinê 29 gulan 2016.
  4. ^ Java 5.0 added several new language features (the enhanced for loop, autoboxing, varargs and annotations), after they were introduced in the similar (and competing) C# language. [1] Girêdana arşîvê adar 19, 2011, li ser Wayback Machine [2] Girêdana arşîvê kanûna paşîn 7, 2006, li ser Wayback Machine
  5. ^ Gosling, James; McGilton, Henry (gulan 1996). "The Java Language Environment". Ji orîjînalê di gulan 6, 2014 de hat arşîvkirin. Roja gihiştinê gulan 6, 2014.
  6. ^ Gosling, James; Joy, Bill; Steele, Guy; Bracha, Gilad. "The Java Language Specification, 2nd Edition". Ji orîjînalê di tebax 5, 2011 de hat arşîvkirin. Roja gihiştinê sibat 8, 2008.
  7. ^ "The A-Z of Programming Languages: Modula-3". Computerworld.com.au. Ji orîjînalê di kanûna paşîn 5, 2009 de hat arşîvkirin. Roja gihiştinê hezîran 9, 2010.
  8. ^ Niklaus Wirth stated on a number of public occasions, e.g. in a lecture at the Polytechnic Museum, Moscow in September 2005 (several independent first-hand accounts in Russian exist, e.g. one with an audio recording: Filippova, Elena (22 îlon 2005). "Niklaus Wirth's lecture at the Polytechnic Museum in Moscow".), that the Sun Java design team licensed the Oberon compiler sources a number of years prior to the release of Java and examined it: a (relative) compactness, type safety, garbage collection, no multiple inheritance for classes – all these key overall design features are shared by Java and Oberon.
  9. ^ Patrick Naughton cites Objective-C as a strong influence on the design of the Java programming language, stating that notable direct derivatives include Java interfaces (derived from Objective-C's protocol) and primitive wrapper classes. [3] Girêdana arşîvê tîrmeh 13, 2011, li ser Wayback Machine
  10. ^ TechMetrix Research (1999). "History of Java" (PDF). Java Application Servers Report. Ji orîjînalê (PDF) di kanûna pêşîn 29, 2010 de hat arşîvkirin. The project went ahead under the name green and the language was based on an old model of UCSD Pascal, which makes it possible to generate interpretive code.
  11. ^ "A Conversation with James Gosling – ACM Queue". Queue.acm.org. tebax 31, 2004. Ji orîjînalê di tîrmeh 16, 2015 de hat arşîvkirin. Roja gihiştinê hezîran 9, 2010.
  12. ^ In the summer of 1996, Sun was designing the precursor to what is now the event model of the AWT and the JavaBeans component architecture. Borland contributed greatly to this process. We looked very carefully at Delphi Object Pascal and built a working prototype of bound method references in order to understand their interaction with the Java programming language and its APIs.White Paper About Microsoft's Delegates
  13. ^ "Chapel spec (Acknowledgements)" (PDF). Cray Inc. çiriya pêşîn 1, 2015. Ji orîjînalê di sibat 5, 2016 de hat arşîvkirin (PDF). Roja gihiştinê kanûna paşîn 14, 2016.
  14. ^ "Gambas Documentation Introduction". Gambas Website. Ji orîjînalê di çiriya pêşîn 9, 2017 de hat arşîvkirin. Roja gihiştinê çiriya pêşîn 9, 2017.
  15. ^ "Facebook Q&A: Hack brings static typing to PHP world". InfoWorld. adar 26, 2014. Ji orîjînalê di sibat 13, 2015 de hat arşîvkirin. Roja gihiştinê kanûna paşîn 11, 2015.
  16. ^ Byous, Jon (c. 1998). "Java technology: The early years". Sun Developer Network. Sun Microsystems. Ji orîjînalê di 20 nîsan 2005 de hat arşîvkirin. Roja gihiştinê 22 nîsan 2005.
  17. ^ Object-oriented programming "The History of Java Technology". Sun Developer Network. c. 1995. Ji orîjînalê di sibat 10, 2010 de hat arşîvkirin. Roja gihiştinê nîsan 30, 2010.
  18. ^ Murphy, Kieron (4 çiriya pêşîn 1996). "So why did they decide to call it Java?". JavaWorld. Roja gihiştinê 13 tîrmeh 2020.
  19. ^ "GrnLight.net - JAVAONE : Sun: The bulk of Java is open sourced". web.archive.org. 27 gulan 2014. Roja gihiştinê 20 çiriya pêşîn 2021.
  20. ^ "Java Card Overview". Oracle Technology Network. Oracle. Ji orîjînalê di 7 kanûna paşîn 2015 de hat arşîvkirin. Roja gihiştinê 18 kanûna pêşîn 2014.
  21. ^ "Java Platform, Micro Edition (Java ME)". Oracle Technology Network. Oracle. Ji orîjînalê di 4 kanûna paşîn 2015 de hat arşîvkirin. Roja gihiştinê 18 kanûna pêşîn 2014.
  22. ^ "Java SE". Oracle Technology Network. Oracle. Ji orîjînalê di 24 kanûna pêşîn 2014 de hat arşîvkirin. Roja gihiştinê 18 kanûna pêşîn 2014.
  23. ^ "Java Platform, Enterprise Edition (Java EE)". Oracle Technology Network. Oracle. Ji orîjînalê di 17 kanûna pêşîn 2014 de hat arşîvkirin. Roja gihiştinê 18 kanûna pêşîn 2014.