jdk11會(huì)向下兼容jdk8 為什么很多Java程序員都不愿意升級(jí)到最新的jdk?
為什么很多Java程序員都不愿意升級(jí)到最新的jdk?目前,JDK已經(jīng)達(dá)到j(luò)dk14,而國(guó)內(nèi)大部分企業(yè)仍然使用JDK7到j(luò)dk9。隨著版本更新,該功能將得到增強(qiáng)。那么為什么許多程序員不想升級(jí)到最新版本呢
為什么很多Java程序員都不愿意升級(jí)到最新的jdk?
目前,JDK已經(jīng)達(dá)到j(luò)dk14,而國(guó)內(nèi)大部分企業(yè)仍然使用JDK7到j(luò)dk9。隨著版本更新,該功能將得到增強(qiáng)。那么為什么許多程序員不想升級(jí)到最新版本呢?下面讓我談?wù)勎业膫€(gè)人想法:
1。有些舊系統(tǒng)需要持續(xù)維護(hù)。它的可擴(kuò)展性和性能問(wèn)題不大,只需要一些小的修改。在這種情況下,主要是追求穩(wěn)定,升級(jí)不僅是JDK升級(jí),更是配套升級(jí),這需要人力物力成本。不過(guò),升級(jí)帶來(lái)的好處并不多。在這種情況下,考慮到升級(jí)的成本和好處,大多數(shù)用戶(hù)不會(huì)選擇升級(jí)JDK。
2. JDK7到j(luò)dk9在中國(guó)被廣泛使用。它們非常成熟,幾乎可以滿足開(kāi)發(fā)要求。它們相對(duì)穩(wěn)定,程序員也非常熟練地使用它們。有些程序員追求穩(wěn)定性,對(duì)新技術(shù)有一定的抵觸情緒。他們認(rèn)為舊的JDK在很多項(xiàng)目中都使用過(guò),他們有實(shí)踐和經(jīng)驗(yàn)。對(duì)于新版本的JDK升級(jí),你需要了解成本,而且你害怕升級(jí)后不兼容的風(fēng)險(xiǎn),所以你會(huì)選擇你比較熟悉的版本應(yīng)用。
從成本和收益、學(xué)習(xí)成本和穩(wěn)定性的角度討論了不升級(jí)JDK版本的原因。
讓我們談?wù)勎业膫€(gè)人經(jīng)歷。軟件開(kāi)發(fā)不能由個(gè)人完成,團(tuán)隊(duì)合作的前提是環(huán)境和工具的一致性。團(tuán)隊(duì)中的JDK版本必須一致。當(dāng)個(gè)人想要升級(jí)到最新版本時(shí),團(tuán)隊(duì)的其他成員也需要升級(jí)。雖然新版JDK的一些特性非常吸引人,但實(shí)際項(xiàng)目中應(yīng)用的新特性并不多,需要所有團(tuán)隊(duì)成員的學(xué)習(xí)成本。對(duì)于有新項(xiàng)目的充滿活力的團(tuán)隊(duì),我認(rèn)為領(lǐng)導(dǎo)者可以帶頭嘗試更多的新技術(shù)應(yīng)用。如果我們想把工作做好,我們必須首先磨礪我們的工具。掌握一些新特性可以提高我們的開(kāi)發(fā)效率。但同時(shí),我們不能追趕新的,我們還需要考慮制度、環(huán)境、成本等。
以上是我個(gè)人的一些看法,希望能對(duì)您有所幫助。
java14早就有了,為什么還有人用java8?
更別說(shuō)java8了,現(xiàn)在有些企業(yè)還在用java5,你敢相信嗎?
首先,我需要說(shuō)明的是,任何企業(yè)使用的技術(shù)可能都不是那么新。新技術(shù)只是意味著這種技術(shù)比現(xiàn)有技術(shù)出現(xiàn)得晚,沒(méi)有人能保證它是否容易使用。未經(jīng)核實(shí)很容易出錯(cuò)。
在Java方面,實(shí)際上java7之后的語(yǔ)法沒(méi)有太大的變化,也就是說(shuō),即使只使用java7之前的版本,也完全可以滿足開(kāi)發(fā)需求。
我們使用java8的原因無(wú)非是java8的新特性:lambda表達(dá)式和stream可以大大簡(jiǎn)化代碼。至于效率的提高,我也沒(méi)有感覺(jué)到。而且,java8之后的版本是半年,現(xiàn)在只推出java13。Java14應(yīng)該還在醞釀中。
此外,有些項(xiàng)目已經(jīng)運(yùn)行了好幾年,并草率地提出了最新版本。所有工具和插件的兼容性也需要驗(yàn)證。有鑒于此,大多數(shù)企業(yè)使用java8也就不足為奇了。
為什么我們都是用“十進(jìn)制”,而不是其它,如“六或八進(jìn)制”?是因?yàn)槿祟?lèi)有十指嗎?
自古以來(lái),我們的計(jì)算中并不總是使用十進(jìn)制!《周易六卦》的六卦是第六制,歷法是第十二制。過(guò)去,舊秤十六兩為一斤,用十六進(jìn)制,過(guò)去學(xué)算盤(pán)(abacus)用五進(jìn)制。圓圈和時(shí)間是以60為基礎(chǔ)的?,F(xiàn)在,大部分的宴會(huì)是八個(gè)人的,這是八進(jìn)制的。電子計(jì)算機(jī)采用二進(jìn)制(1 1=IO,10 1=11,11 1=100),與這些基相比,十進(jìn)制更方便、更通用。在小學(xué)算術(shù)中,學(xué)生首先學(xué)習(xí)的是十進(jìn)制。我認(rèn)為沒(méi)有任何科學(xué)依據(jù)可以說(shuō)使用十進(jìn)制是因?yàn)槿藗冇惺畟€(gè)手指。雖然幼兒教師用十個(gè)手指教學(xué)生十個(gè)以?xún)?nèi)的加減法很常見(jiàn),但不能證明十進(jìn)位制和人的十個(gè)手指之間有必然的聯(lián)系
java為什么這么熱門(mén)?
Java不是火。Java被廣泛使用,但它不會(huì)在一兩年內(nèi)問(wèn)世。Java是通過(guò)各種開(kāi)發(fā)人員的智慧積累起來(lái)的一種語(yǔ)言。
從它的開(kāi)放源碼中,我們可以看到它是廣泛和包容的。開(kāi)源最有利于語(yǔ)言發(fā)展的地方是它可以匯集世界各地偉大的神的智慧。
同樣,作為一個(gè)面向?qū)ο蟮奶摂M機(jī),與C的指針和內(nèi)存泄漏相比,令人震驚的Java虛擬機(jī)著實(shí)讓人眼前一亮。更不用說(shuō)回收機(jī)制對(duì)程序員有多友好了。讓我們看看,正是因?yàn)檫@個(gè)Java虛擬機(jī),Java可以跨平臺(tái),可以出現(xiàn)在windows、Linux等操作系統(tǒng)中。不會(huì)有兼容性問(wèn)題,也沒(méi)有必要考慮這個(gè)問(wèn)題。這也是C?比C?發(fā)展更快的原因之一。
作為一名java程序員,我記得當(dāng)我第一次接觸到這種語(yǔ)言時(shí),我有一種感覺(jué),那就是我將來(lái)應(yīng)該依靠它來(lái)吃飯。我告訴我旁邊的室友,感覺(jué)Java有點(diǎn)有趣。你知道,我以前學(xué)過(guò)C,以前也學(xué)過(guò)C,所以寫(xiě)代碼很難。
當(dāng)然,這是個(gè)人的一點(diǎn)體會(huì),不能說(shuō)或C不能,各有所長(zhǎng),一種語(yǔ)言的存在有其意義。歡迎對(duì)Java感興趣的朋友關(guān)注我。
Java 12 / JDK 12正式發(fā)布,你們公司還在用哪個(gè)版本?
盡管java12已經(jīng)發(fā)布,但大多數(shù)公司仍然使用java8甚至java7.6。Java9發(fā)布后,我去了解了它。模塊化編程可能更有吸引力。
現(xiàn)在我們公司的大多數(shù)人仍在使用java 7,有些人厭倦了使用java 8的lameda、stream、localdate和其他與其他接口兼容的轉(zhuǎn)換。所以現(xiàn)在Java8是主流,而6.7更常用。