久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

 啟云_9137 2020-05-11

【CSDN 編者按】“如果我們把人類文明想象成汽車的話,,那么軟件開發(fā)行業(yè)就相當于汽車的引擎,,編程語言就像引擎的燃料?!弊鳛橐幻_發(fā)者,,需跟隨技術潮流的發(fā)展來學習新技術。2020年,,你有計劃新學一門編程語言嗎,?

本文作者從一名架構師的角度,詳細分析了7種現(xiàn)代編程語言的優(yōu)點與功能,,你對哪門語言最感興趣呢,?

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

 

以下為譯文:

如果我們把人類文明想象成汽車的話,,那么軟件開發(fā)行業(yè)就相當于汽車的引擎,,而編程語言就像引擎的燃料。作為一名開發(fā)者,,今年你應該學習哪種編程語言呢,?

學習一種新的編程語言無疑是時間、精力和智力上的巨大投資, 但是學習一種新的編程語言可以提升你的軟件開發(fā)技術力,,促進你的職業(yè)發(fā)展,。

在這里,我將獻上一份現(xiàn)代編程語言的列表,,這些語言不僅有助于提高你的生產(chǎn)力,,而且還可以促進你的職業(yè)發(fā)展,并讓你成長為更優(yōu)秀的開發(fā)人員,。這份列表還涵蓋了非常廣泛的領域:系統(tǒng)編程,、應用程序開發(fā)、Web開發(fā),、科學計算等,。

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

什么是現(xiàn)代編程語言,?

“現(xiàn)代編程語言”這個說法本身就很含糊,。許多人認為Python和JavaScript等語言是現(xiàn)代編程語言,還認為Java是一種古老的編程語言,。實際上,,這幾種語言大約在同一時間出現(xiàn):1995年。

大多數(shù)主流編程語言是上個世紀開發(fā)的:七十年代(如C),、八十年代(如C ++),、九十年代(如Java、Python,、JavaScript),。這些語言在設計上并沒有考慮現(xiàn)代軟件開發(fā)生態(tài)系統(tǒng):多核CPU、GPU,、快速的互聯(lián)網(wǎng),、移動設備、容器和云等,。盡管許多語言中的許多功能都已進行一些改進,,如并發(fā)等,而且在不斷調(diào)整自己以適應時代,,但它們依然保留了向后兼容性,無法拋棄那些過時的舊功能,。

在這方面,,Python就做得很好(某種意義上也未必是好事),Python 2和Python 3兩者之間有明確的分界線,。很多語言常常會為解決同一個問題提供十余種的方法,,同時又沒有顧及到開發(fā)人員的感受。根據(jù)StackOverflow的開發(fā)人員調(diào)查,大多數(shù)舊時的主流編程語言在“最可怕的語言”排名都名列前茅:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

如果非要在新舊編程語言之間劃個界限的話,,那么應該是2007年6月29日,也就是第一臺iPhone發(fā)行的時候,。在這之后,,編程語言界發(fā)生了很大變化。因此,,在本文的列表中,,我只考慮2007年以后的編程語言。

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

為什么要學習新語言,?

首先,現(xiàn)代編程語言充分利用現(xiàn)代計算機硬件(多核CPU,、GPU,、TPU)、移動設備,、大量數(shù)據(jù),、高速互聯(lián)網(wǎng)、容器和云的優(yōu)勢,。大多數(shù)現(xiàn)代編程語言會關注開發(fā)人員的體驗,,比如:

  • 簡潔明了的代碼(減少樣板代碼)

  • 內(nèi)置的并發(fā)支持

  • 空指針安全

  • 類型推斷

  • 簡潔的功能集

  • 降低學習難度

  • 融合所有編程范例的最佳功能

本文列表的許多編程語言都帶有革命性地變化,并將永久地改變軟件行業(yè),。一些已成為主流編程語言,,還有一些則有望取得突破。因此選擇這些語言作為第二種編程語言是明智的做法,。

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

Rust

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

一直以來,,系統(tǒng)編程語言環(huán)境主要由靠近硬件的語言(如C,、C ++等)主導。盡管它們可以完全控制程序和硬件,,但是它們?nèi)狈?nèi)存安全性,。即使它們支持并發(fā),使用C/C ++編寫并發(fā)程序也很困難,,因為沒有并發(fā)安全性,。還有一些流行的編程語言是解釋性語言,例如Java,、Python,、Haskell,。這些語言具備安全性,但需要龐大的運行時或虛擬機,。由于它們的運行時間長,,因此Java等語言不適合于系統(tǒng)編程。

許多人曾嘗試將C/C ++的功能與Java,、Haskell的安全性相結合,。然而,Rust才是第一個成功實現(xiàn)了這一點的編程語言,。

Graydon Hoare在業(yè)余項目中開發(fā)出了Rust,,他的靈感來自研究編程語言Cyclone。Rust是開源的,,由Mozilla與許多其他公司和社區(qū)一起領導這門語言的開發(fā),。Rust于2015年首次發(fā)布,并很快引起了社區(qū)的關注,。

主要特征:

  • 通過所有權和借用概念提供內(nèi)存安全和并發(fā)安全,。

  • 內(nèi)存安全和并發(fā)安全在編譯時確保,即如果程序代碼可以編譯,,那么內(nèi)存既安全又沒有數(shù)據(jù)競爭,。這是Rust最吸引人的功能。

  • 它還提供了Haskell中元編程的表現(xiàn)力,。憑借不可變的數(shù)據(jù)結構和功能編程功能,,Rust提供了功能并發(fā)和數(shù)據(jù)并發(fā)。

  • Rust的速度非???,純Rust的性能甚至優(yōu)于純C。

  • 在沒有運行時的情況下,,Rust可以完全控制現(xiàn)代硬件(TPU,、GPU、多核CPU),。

  • Rust具有LLVM支持,。因此,Rust提供一流的與WebAssembly的互操作性,,而且Web代碼也非??臁?/p>

流行度:

自2015年首次亮相以來,,Rust已被開發(fā)人員廣泛接受,,并在StackOverflow開發(fā)人員調(diào)查中連續(xù)四年(2016、2017,、2018,、2019)被評選為最受歡迎的語言:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

根據(jù)GitHub Octoverse的調(diào)查,,Rust是運行速度第二快的語言,,僅次于Dart:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

此外,,根據(jù)編程語言流行度排名網(wǎng)站PyPl的數(shù)據(jù),,Rust排名第18位,并呈上升趨勢:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

對比Rust提供的功能集,,我們就會明白為什么微軟、亞馬遜,、Google等科技巨頭相繼宣布投資Rust作為一種長期的系統(tǒng)編程語言,。

根據(jù)Google統(tǒng)計的趨勢,在過去的5年中,,Rust的熱度每年都在增加,。

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

主要用途:

  • 系統(tǒng)編程

  • Serverless 計算

  • 商業(yè)應用

主要競爭對手:

  • C

  • C++

  • Go

  • Swift

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

Go

在本世紀初,,Google面臨兩個擴展問題:開發(fā)擴展和應用程序擴展。開發(fā)擴展問題指的是他們不能僅通過投入開發(fā)人員的方式來添加更多功能,。應用程序擴展問題則指他們無法開發(fā)出一款能夠擴展到Google級別的計算機集群的應用程序,。

所以在2007年左右,Google創(chuàng)建了一種新的編程語言,,用于解決這兩個擴展問題,。兩位才華橫溢的Google軟件工程師Rob Pike(UTF-8)和Ken Thompson(UNIX OS)創(chuàng)建了一種新語言。

2012年,,Google正式發(fā)布了第一版的Go編程語言,。Go是一種系統(tǒng)編程語言,但與Rust不同,,它還具有Runtime和垃圾收集器(幾兆字節(jié)),。但是與Java或Python不同,這個Runtime包含了生成的代碼,。最后,,Go生成了一個本地的二進制代碼,可以在沒有附加依賴項或運行時的情況下在計算機中運行,。

主要特征:

  • Go具有一流的并發(fā)支持,。Go不通過線程和鎖提供“共享內(nèi)存”并發(fā)性,因為編程難度太大,。相反,,它提供了基于CSP的消息傳遞并發(fā)性(基于Tony Hoare的論文),。Go使用“ Goroutine”(輕量級綠色線程)和“ Channel”進行消息傳遞。

  • Go最大的殺手級功能是:簡單,,它是最簡單的系統(tǒng)編程語言,。新手軟件開發(fā)人員只需幾天就可以編寫高效的代碼,就像Python一樣,。有些大規(guī)模的云原生項目(如Kubernetes,、Docker)都是用Go編寫的。

  • Go還內(nèi)置了垃圾收集器,,這意味著開發(fā)人員無需擔心C/C++中的內(nèi)存管理問題,。

  • Google投入了大量資金打造Go。因此Go擁有大量的工具支持,。新手Go開發(fā)人員擁有大量的工具生態(tài)系統(tǒng),。

  • 一般,開發(fā)人員80%的時間都花在了維護現(xiàn)有代碼上,,用于編寫新代碼的時間只占20%,。由于其簡單性,Go在語言維護方面表現(xiàn)出色,。如今,,Go在業(yè)務應用程序中大量使用。

流行度:

Go一問世就受到了軟件開發(fā)社區(qū)熱烈的歡迎,。2009年-2018年,,Go一直在TIOBE編程語言排行榜上徘徊。Go的成功為Rust等新一代編程語言鋪平了道路,。

如今,,Go已是主流編程語言。最近,,Go團隊宣布了有關“Go 2”的消息,,這門編程語言的發(fā)展會更加穩(wěn)固。

幾乎在所有的流行編程語言排行榜中,,Go的排名都很高,,已超過許多現(xiàn)有的語言。自2019年12月以來,,在TIOBE指數(shù)排名中,,Go名列第15位:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

根據(jù)StackOverFlow的調(diào)查,,十大最受喜愛的編程語言中,,Go也位列其中:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

此外,,根據(jù)GitHub的數(shù)據(jù),,Go也是十大發(fā)展最迅速的語言之一:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

Google趨勢顯示,在過去的5年中,,Go的熱度每年都在增加,。

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

主要用途:

  • 系統(tǒng)編程

  • Serverless 計算

  • 商業(yè)應用

  • 云原生開發(fā)

主要競爭對手:

  • C

  • C++

  • Rust

  • Python

  • Java

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

Kotlin

Java 是企業(yè)軟件開發(fā)領域無可爭議的王者。近年來,,Java受到了一些負面評論:過于冗長,,大量樣板代碼,容易出現(xiàn)意外的復雜性,。但是,,關于Java虛擬機(JVM)的爭論卻很少。JVM是軟件工程的杰作,,經(jīng)過了時間的考驗,,提供了硬核的runtime。

多年來,,Scala等JVM語言一直在努力克服Java的缺點,,想成為更好的Java,但他們都失敗了,。最終,,這場提升Java的探索以Kotlin的誕生結束。Jet Brains(流行的IDE IntelliJ背后的公司)開發(fā)了Kotlin,,它可以在JVM上運行,,克服了Java的很多缺點,提供許多現(xiàn)代功能,。

與Scala不同的是,,Kotlin比Java更簡單,還可在JVM中提供與Go或Python開發(fā)人員同等的生產(chǎn)力,。

Google宣布Kotlin是一流的Android應用開發(fā)語言,,因此Kotlin在社區(qū)中的接受度得到了大幅提高。自2017年以來,,同樣受歡迎的Java Enterprise框架Spring也開始支持Kotlin,。我曾嘗試結合Kotlin與Reactive Spring使用,體驗非常棒,。

主要特征:

  • Kotlin的主要賣點在于其語言設計,。我總是將Kotlin視為JVM上的Go/Python,因為它簡潔明了的代碼,。因此,,Kotlin的生產(chǎn)力很高,。

  • 與許多其他現(xiàn)代語言一樣,Kotlin提供了指針,、安全性,、類型推斷等功能。

  • 由于Kotlin也運行在JVM中,,因此現(xiàn)有Java庫龐大的生態(tài)系統(tǒng)都可供使用,。

  • Kotlin是一流的Android應用開發(fā)語言,并且已經(jīng)超過Java,,成為開發(fā)Android應用的首選,。

  • Kotlin得到了JetBrains和Open Source的支持,因此具有出色的工具支持,。

  • Kotlin有兩個有趣的項目:Kotlin Native(將Kotlin編譯為原生代碼)和kotlin.js(Kotlin到JavaScript),。如果成功,則可以在JVM外部使用Kotlin,。

  • Kotlin還提供了一種簡單的方式來編寫DSL(域特定語言),。

流行度:

自2015年首次發(fā)布以來,Kotlin的知名度不斷飆升,。根據(jù)Stack Overflow,,Kotlin是2019年第四大最受歡迎的編程語言:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

Kotlin還是增長最快的編程語言之一,,排名第四:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

在流行編程語言排名網(wǎng)站PyPl的排名中,Kotlin名列第十二名,,并具有較高的上升趨勢:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

自從Google宣布Kotlin是一流的Android應用開發(fā)語言以來,Kotlin的流行趨勢出現(xiàn)了大幅上漲,,如下所示:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

主要用途:

  • 企業(yè)應用程序

  • Android應用開發(fā)

主要競爭對手:

  • Java

  • Scala

  • Python

  • Go

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

TypeScript

JavaScript是一門優(yōu)秀的編程語言,,在2015年之前,,JavaScript有很多缺點。著名的軟件工程師Douglas Crockford寫了一本書名為《JavaScript: The Good Parts》,,暗示了JavaScript有很糟的部分,。無模塊化,還有“回調(diào)地獄”,,因此開發(fā)人員都不喜歡維護特別大的JavaScript項目,。

Google甚至還開發(fā)了一個平臺,可將Java代碼反編譯為JavaScript代碼(GWT)。許多公司和個人都曾嘗試開發(fā)更好的JavaScript,,例如CoffeeScript,、Flow、ClojureScript,。最終,,微軟的TypeScript取得了成功。

微軟的一隊工程師在著名的Anders Hejlsberg的帶領下,,創(chuàng)建了JavaScript的靜態(tài)類型,、模塊化超集——TypeScript。

TypeScript可以編譯為JavaScript,。于2014年首次發(fā)布后,,TypeScript很快引起了社區(qū)的關注。Google當時還計劃開發(fā)JavaScript的靜態(tài)類型超集,。Google對TypeScript青睞有加,以至于他們沒有開發(fā)新的語言,,而是選擇與微軟合作改進TypeScript,。

Google選擇TypeScript作為其SPA框架Angular 2+的主要編程語言。此外,,流行的SPA框架React也提供對TypeScript的支持,。另一個流行的JavaScript框架Vue.js也宣布將使用TypeScript開發(fā)新的Vue.js 3:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

另外,,node.js的創(chuàng)建者Ryan Dahl已決定使用TypeScript來開發(fā)安全的Node.js替代品Deno,。

主要特征:

  • 與Go或Kotlin同樣,TypeScript的主要特征也是語言設計,。TypeScript憑借其簡潔明快的代碼,,成為了目前最優(yōu)雅的編程語言之一。就開發(fā)人員的生產(chǎn)力而言,,它與JVM或Go/Python上的Kotlin并駕齊驅,。TypeScript是生產(chǎn)力最高的JavaScript超集。

  • TypeScript是JavaScript的強類型超集,,特別適合大型項目,,而且可以稱為“可擴展的JavaScript”。

  • 單頁應用程序框架的“三巨頭”(Angular,、React,、Vue.js)為TypeScript提供了出色的支持。在Angular中,,TypeScript是首選的編程語言,。在React和Vue.js中,TypeScript越來越受歡迎。

  • 最大的兩家技術巨頭:微軟和Google正在合作開發(fā)由活躍的開源社區(qū)支持的TypeScript,。因此,,TypeScript擁有最好的工具支持。

  • 由于TypeScript是JavaScript的超集,,因此凡是可以運行JavaScript的任何地方都可以運行TypeScript,,包括瀏覽器、服務器,、移動設備,、物聯(lián)網(wǎng)設備和云。

流行度:

開發(fā)人員喜歡TypeScript的優(yōu)雅語言設計,。在StackOverFlow最受歡迎的語言類別的調(diào)查中,,TypeScript與Python并列第二名:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

根據(jù)GitHub的排名,,TypeScript是增長最快的編程語言之一,,排名第五:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

從GitHub的貢獻度來看,,TypeScript排名第七,,打進了前十:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

Google的趨勢表明,,在過去的幾年中,,TypeScript的熱度越來越高:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

主要用途:

  • Web UI開發(fā)

  • 服務器端開發(fā)

主要競爭對手:

  • JavaScript

  • Dart

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

Swift

當初喬布斯拒絕在iOS中支持Java(和JVM),,他認為Java不再是主流編程語言。如今我們發(fā)現(xiàn)喬布斯當初的估計是錯的,,雖然iOS仍然不支持Java,。蘋果選擇了Objective-C作為iOS中的首選編程語言。Objective-C是一門很難掌握的語言,,它不支持現(xiàn)代編程語言所要求的高生產(chǎn)力,。

后來,蘋果的Chris Lattner和其他人開發(fā)了一種多范例,、通用的,、編譯編程語言——Swift,來替代Objective-C,。Swift的第一個穩(wěn)定版本于2014年發(fā)布,。Swift還支持LLVM編譯器工具鏈(也由Chris Lattner開發(fā))。Swift與Objective-C代碼庫具有出色的互操作性,,并且已確立為iOS應用開發(fā)中的主要編程語言,。

主要特征:

  • Swift的殺手級功能之一是其語言設計。語言本身很簡單,語法簡潔,,比Objective-C更高效,。

  • Swift還提供了現(xiàn)代程序語言的功能:安全。此外,,它還提供了語法糖來避免“厄運金字塔”,。

  • 作為一種編譯語言,Swift和C++一樣快,。

  • Swift支持LLVM編譯器工具鏈,。因此,我們可以在服務器端編程,,甚至瀏覽器編程(使用WebAssembly)中使用Swift,。

  • Swift提供了自動引用計數(shù)(ARC)支持,可抑制內(nèi)存管理的不善,。

流行度:

開發(fā)人員對Swift的喜愛不亞于許多其他現(xiàn)代編程語言,。根據(jù)StackOverflow的調(diào)查,Swift在最受歡迎的編程語言中排名第六:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

2019年,,在TIOBE的編程語言排名中,Swift的排名上升到了第10名,。鑒于這種編程語言只有5年的歷史,,可以說是成績斐然:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

Google的趨勢表明,,在過去的幾年中,Swift的熱度出現(xiàn)了激增:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

主要用途:

  • iOS應用開發(fā)

  • 系統(tǒng)編程

  • 客戶端開發(fā)(通過WebAssembly)

主要競爭對手:

  • Objective-C

  • Rust

  • Go

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

Dart

Dart是Google出品的第二大編程語言。Google是Web和Android領域的巨頭,,因此Google在Web和應用領域開發(fā)自己的編程語言也不足為奇,。在丹麥軟件工程師Lars Bak(領導Chrome的 JavaScript V8引擎開發(fā))的帶領下,Google于2013年發(fā)布了Dart,。

Dart是一種通用編程語言,,支持“強類型”和“面向對象”編程。Dart也可以轉編譯為JavaScript,,凡是JavaScript可以運行的任何地方(例如Web,、移動、服務器)幾乎都可以運行 Dart,。

主要特征:

  • 與Go一樣,,Dart也非常注重開發(fā)人員的工作效率。由于Dart簡潔的語法,以及高效的生產(chǎn)力,,受到開發(fā)人員的喜愛,。

  • Dart還提供“強類型”和“面向對象”編程。

  • Dart是少數(shù)同時支持JIT編譯(運行時編譯)和AOT編譯(創(chuàng)建時編譯)的編程語言之一,。因此,,Dart可以針對JavaScript運行時(V8引擎),并且Dart可以編譯為快速的原生代碼(AOT編譯),。

  • 跨平臺原生應用程序開發(fā)平臺Flutter選擇了Dart作為開發(fā)iOS和Android應用的編程語言,。從那以后,Dart的流行度越來越高,。

  • 與Goog的Go編程語言一樣,,Dart也具有出色的工具支持和龐大的Flutter生態(tài)系統(tǒng)。Flutter的日益普及也會推動Dart的采用率升高,。

流行度:

根據(jù)GitHub Octoverse數(shù)據(jù)顯示,,Dart是2019年增長最快的編程語言,去年它的流行度增長了五倍:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

根據(jù)TIOBE指數(shù)顯示,,Dart排名第23,僅用了4年時間就超過了很多其他的現(xiàn)代編程語言:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

根據(jù)StackOverflow的調(diào)查,,Dart在最受歡迎的編程語言中排名第12:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

受Flutter的影響,,Google的趨勢表明,,在過去的兩年中,Dart的熱度急劇上升:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

主要用途:

  • 應用開發(fā)

  • UI開發(fā)

主要競爭對手:

  • JavaScript

  • TypeScript

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

Julia

本文提及的大多數(shù)編程語言都是由大型公司開發(fā)的,但Julia是個例外,??萍加嬎泐I域通常都會使用動態(tài)語言,例如Python,、Matlab,。雖然這些語言提供易于使用的語法,但不適用于大規(guī)模的科技計算,。他們需要使用C/C ++庫執(zhí)行CPU密集型任務,,因此這就產(chǎn)生了著名的“兩種語言”的問題,因為他們需要粘合代碼來綁定兩種語言,。由于編寫的代碼需要在兩種語言之間來回切換,,因此總是會損失部分性能,。

為了解決這個問題,麻省理工學院的一隊研究人員計劃從頭開始創(chuàng)建一種新的語言,,這種語言既可以利用現(xiàn)代硬件的優(yōu)勢,,而且還結合其他語言的優(yōu)勢。于是,,Julia誕生了,。

Julia是一種動態(tài)的高級編程語言,提供一流的并發(fā),、并行和分布式計算支持,。Julia的第一個穩(wěn)定版本于2018年發(fā)布,并很快受到社區(qū)和行業(yè)的關注,。Julia可用于科學計算,、人工智能和許多其他領域,而且還可以解決“兩種語言”的問題,。

主要特征:

  • 與Rust一樣,,Julia的主要特征在于語言的設計。這種語言在不犧牲性能的情況下,,將高性能和科學計算中現(xiàn)有編程語言的一些功能結合在一起,。就目前的情況來看,Julia出色地完成了這項任務,。

  • Julia是一種動態(tài)編程語言,,支持類型系統(tǒng)但類型不是必須的。因此,,Julia這種編程語言很容易學習,,生產(chǎn)力很高。

  • Julia的核心是多調(diào)度編程范例,。

  • Julia內(nèi)部支持并發(fā),、并行和分布式計算,。

  • Julia為I/O密集型任務提供異步I/O,。

  • Julia的運行速度非常快,,可用于需要數(shù)百萬個線程的科學計算,。

流行度:

Julia在許多領域主要與Python競爭。由于Python是最流行的編程語言之一,,因此Julia想晉升主流還需要幾年的時間,。

雖然Julia非常新(只有一歲),但仍在TIOBE指數(shù)中排到第43名:

現(xiàn)代編程語言大 PK,,2020 年開發(fā)者關心的七大編程語言

Google趨勢顯示,,在過去的一年中,,Julia的熱度在穩(wěn)步增長:

現(xiàn)代編程語言大 PK,2020 年開發(fā)者關心的七大編程語言

但是考慮到Julia的功能集,,以及NSF,、DARPA、NASA,、因特爾等公司的推動,,相信Julia取得突破的進展只是時間的問題。

主要用途:

  • 科學計算

  • 高性能計算

  • 數(shù)據(jù)科學

  • 可視化

主要競爭對手:

  • Python

  • Matlab

原文鏈接:https:///top-7-modern-programming-language-to-learn-now-156863bd1eec

本文為 CSDN 翻譯,,轉載請注明來源出處,。

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,,謹防詐騙,。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報,。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多