成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

20年后的Java,跟得上節(jié)奏嗎?

譯文 精選
開發(fā) 前端
Java是明星編程語(yǔ)言,我們不能忽視它是如何幫助改變今天的編程語(yǔ)言的。Java的建立是為了解決一些問(wèn)題,但作為副作用,它也產(chǎn)生了新的問(wèn)題。在我看來(lái),10年后,人們會(huì)開始抱怨今天的語(yǔ)言,一種新的語(yǔ)言將被創(chuàng)造出來(lái)解決這些問(wèn)題。

作者 | Nishant Aanjaney Jalan

策劃 | 云昭

51CTO讀者成長(zhǎng)計(jì)劃社群招募,咨詢小助手(微信號(hào):CTOjishuzhan)

Java已經(jīng)存在了將近30年。從1997年開始,有30億臺(tái)設(shè)備運(yùn)行Java。現(xiàn)在Kotlin、Scala等更新的JVM語(yǔ)言流行了,Java是不是已經(jīng)過(guò)時(shí)了?人們開始厭棄Java了嗎?

我相信有很多人喜歡Java。很自豪本人也其中的一員。當(dāng)像Kotlin和Scala這樣的語(yǔ)言出現(xiàn)時(shí),我發(fā)現(xiàn)這些語(yǔ)言更好。當(dāng)然,這絕不意味我討厭Java。

一、Java過(guò)去到底有多受歡迎?

Java的受歡迎程度如此之高,以至于ECMAScript被昵稱為JavaScript,因?yàn)樗谖覀冃闹腥〈鶺eb Assembly的速度和Java一樣快。

可以列舉幾個(gè)例子來(lái)說(shuō)明Java是一種受歡迎的語(yǔ)言。

圖片

二、Java為什么受歡迎?

1.平臺(tái)無(wú)關(guān)

因?yàn)镴ava運(yùn)行在Java虛擬機(jī)(JVM),相同的代碼可以毫無(wú)困難地在多個(gè)平臺(tái)上運(yùn)行。另一方面,c有多個(gè)編譯器為不同的isa編寫匯編代碼。如果一個(gè)C程序可以在機(jī)器A上運(yùn)行,它不能保證在機(jī)器b上運(yùn)行。

類似于C和C++的語(yǔ)法Java與C和C++共享一個(gè)相似的語(yǔ)法,這使得程序員不用重新學(xué)習(xí)所有的東西就可以切換到Java。

2.沒(méi)有更多的指針

Java消除了指針的外部處理。這意味著你不再有那些煩人的缺點(diǎn)了。Java使用了指針(當(dāng)然),但是代碼是以各種方式抽象的。

3.自動(dòng)垃圾收集器

在C和C++中,當(dāng)對(duì)象不再被使用時(shí),程序員必須手動(dòng)釋放內(nèi)存(這需要大量的內(nèi)存泄漏)。在Java中,基于程序員應(yīng)該知道的某些規(guī)則,垃圾收集器會(huì)自動(dòng)為您釋放未使用的分配內(nèi)存。

4.面向?qū)ο蟮木幊?/h4>

Haskell是一種純粹的函數(shù)式語(yǔ)言。它嚴(yán)重依賴于數(shù)學(xué)技能,需要練習(xí)才能掌握。Java是一種純粹面向?qū)ο蟮恼Z(yǔ)言,與現(xiàn)實(shí)生活聯(lián)系緊密。這種轉(zhuǎn)變平滑了學(xué)習(xí)曲線(當(dāng)然這在以后會(huì)變得非常困難)。

5.清晰的結(jié)構(gòu)

Java的語(yǔ)法非常結(jié)構(gòu)化。類中的一切都有助于理解相關(guān)的信息和功能。從第一句“你好,世界!”,您需要對(duì)類語(yǔ)法有一個(gè)基本的了解。在Java的幫助下,重要的原則、設(shè)計(jì)模式和編程范例可以很容易地得到解釋。

回顧以上原因,沒(méi)有理由討厭Java。Java曾經(jīng)是語(yǔ)言在2000年代。許多政府軟件和銀行都使用Java,其中一些現(xiàn)在仍在使用。

三、現(xiàn)在發(fā)生了什么?

不管人們?cè)趺凑f(shuō),現(xiàn)在Java正在衰落。雖然Java仍然被維護(hù)著,全球仍然有許多Java開發(fā)者,但是作為編程語(yǔ)言,過(guò)去的輝煌現(xiàn)在已經(jīng)一去不復(fù)返了。

1.無(wú)效

作為“空引用”的創(chuàng)造者,東尼·霍爾在一次采訪中說(shuō),“這是一個(gè)十億美元的錯(cuò)誤”,因?yàn)樗鼤?huì)導(dǎo)致意想不到的行為和程序崩潰。Java在核心庫(kù)中采用了null,這使得它類似于在c中處理segfault錯(cuò)誤。

2.剛性

在用Java編程一段時(shí)間后,您會(huì)注意到您多次編寫了相同的代碼。隨著技術(shù)的進(jìn)步,Java中的樣板代碼激增,從而使其變得龐大。

3.沒(méi)有函數(shù)式語(yǔ)言支持

正如我前面所說(shuō),Java是純面向?qū)ο蟮摹H欢绦騿T需要命令式和聲明式語(yǔ)言都包含的特性。

4.繼承抽象中的一個(gè)缺陷

Java中有四種訪問(wèn)說(shuō)明符:公共的、受保護(hù)的、私有的和受包保護(hù)的/默認(rèn)的/友好的。沒(méi)有辦法允許對(duì)子類的訪問(wèn)并限制對(duì)包中其他類的訪問(wèn)。

四、Java歷史上的重要改進(jìn)       

1.Java 8的改進(jìn)

Java維護(hù)者沒(méi)有忽視開發(fā)者的請(qǐng)求。

(1)功能支持—他們引入了流API的功能接口。然而,由于向后兼容,實(shí)現(xiàn)它仍然很笨拙。

(2)Optionalclass— Optional是無(wú)效問(wèn)題的一種解決方法。盡管如此,包括Optional并沒(méi)有消除null的可能性,因?yàn)樗贘ava的核心庫(kù)中根深蒂固。

2.Java 12改進(jìn)

表達(dá)式中引入Switch語(yǔ)句,減少了條件控制流中的一些樣板。       

3.Java 16改進(jìn)

Java中引入了record,它在編寫POJOs(普通的舊Java對(duì)象)時(shí),刪除了大部分樣板文件。

五、Kotlin和Scala的到來(lái)

就像Java是對(duì)C++的改進(jìn)一樣,Kotlin是對(duì)Java的改進(jìn)。 Kotlin的優(yōu)勢(shì)如下:

1.大大減少了樣板文件。

2.根深蒂固的Null安全。

3.引入了字符串模板(受Python/PHP的啟發(fā))。

4.介紹sealed class(受Rust/Haskell啟發(fā))。

5.多范例語(yǔ)言(改進(jìn)的OOP和融合性的功能)。

6.運(yùn)算符重載(如C和Python)。

7.引入了data class(Java中的record)。

8.其他雜項(xiàng)功能,如擴(kuò)展和內(nèi)聯(lián)函數(shù),以及協(xié)程。

因?yàn)槲覐奈词褂肧cala編程,所以我不在文中討論它的好處。當(dāng)然,Java也在進(jìn)化。

六、結(jié)論

僅僅因?yàn)楦玫臇|西出現(xiàn)了,并不意味著我們厭棄了Java。

Java是明星編程語(yǔ)言,我們不能忽視它是如何幫助改變今天的編程語(yǔ)言的。Java的建立是為了解決一些問(wèn)題,但作為副作用,它也產(chǎn)生了新的問(wèn)題。在我看來(lái),10年后,人們會(huì)開始抱怨今天的語(yǔ)言,一種新的語(yǔ)言將被創(chuàng)造出來(lái)解決這些問(wèn)題。

如果沒(méi)有Java,現(xiàn)代語(yǔ)言不會(huì)像今天這樣強(qiáng)大。正如C++之父所言,世界上只有兩種語(yǔ)言:人們抱怨的語(yǔ)言和沒(méi)人使用的語(yǔ)言。

責(zé)任編輯:武曉燕 來(lái)源: 51CTO技術(shù)棧
相關(guān)推薦

2015-12-17 16:22:15

數(shù)據(jù)中心企業(yè)數(shù)據(jù)中心

2017-11-14 19:18:49

比特幣預(yù)測(cè)趨勢(shì)

2009-12-28 09:51:41

微軟前員工

2016-04-13 10:52:12

2019-08-02 11:53:50

Android開發(fā)學(xué)習(xí)

2020-09-22 15:03:39

編程語(yǔ)言RubyCOBOL

2020-10-14 12:12:48

機(jī)器人

2012-04-12 14:43:46

激光打印機(jī)評(píng)測(cè)

2019-10-30 10:42:42

CIO數(shù)字化轉(zhuǎn)型開發(fā)

2012-07-16 13:43:03

前端開發(fā)

2010-01-12 17:47:31

C++語(yǔ)言

2009-10-22 20:48:28

IT管理統(tǒng)一通信

2021-03-03 23:15:53

數(shù)據(jù)分析就業(yè)辭職

2023-10-16 10:16:14

芯片英偉達(dá)

2016-03-15 10:57:42

數(shù)據(jù)中心

2010-06-12 10:47:24

2019-05-31 09:10:09

程序員技能開發(fā)者

2016-03-04 16:22:23

WP微軟移動(dòng)

2009-03-04 09:59:04

職場(chǎng)心情痛苦

2020-06-23 16:11:35

云計(jì)算云計(jì)算廠商中國(guó)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 日韩欧美字幕 | 99热.com| 国产免费一区 | 狠狠操狠狠操 | 久草精品在线 | 国产日韩在线观看一区 | 亚洲激情综合网 | 国产乱码久久久久久 | 夜夜爽99久久国产综合精品女不卡 | 在线久草| 日韩欧美精品 | 狠狠干狠狠操 | 亚洲国产精品一区二区三区 | 欧美日韩视频 | 国产小视频在线观看 | 成人区精品一区二区婷婷 | 亚洲精品一级 | 米奇狠狠鲁 | 天天射天天干 | 午夜精品久久久久久久久久久久久 | 亚洲欧美日韩精品久久亚洲区 | 欧美日韩在线一区 | 91精品久久久久久久久久入口 | 黄色在线免费观看视频 | 日本精品视频 | 国产精品久久久久无码av | 成人在线一级片 | 操皮视频 | 久久久久久免费毛片精品 | 欧美一区二区三区四区视频 | 成人在线不卡 | 国产精品亚洲一区二区三区在线观看 | 中文字幕国产日韩 | 久久av一区 | 亚洲国产成人精品久久久国产成人一区 | 欧美视频三区 | 91视频在线观看免费 | 91色在线| 日日摸夜夜添夜夜添精品视频 | 国产精选一区 | 超碰免费在 |