自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Python的四個挑戰(zhàn)者:Swift、Go、Julia、R

開發(fā) 開發(fā)工具
Python時下正在“最熱門的編程語言榜”上春風(fēng)得意,看起來將會成為一門不朽的語言。但是現(xiàn)在,很多其他語言也逐漸顯現(xiàn)出Python的一些優(yōu)點:編程方便,對數(shù)學(xué)和科學(xué)計算擁有強大的處理能力,龐大的第三方庫。

[[170067]]

沒什么是永恒的——包括編程語言。很多看起來可能是將來的佼佼者,到頭來可能被人們遺忘。無論是因為不可抗拒的原因,還是因為自身發(fā)展的原因。

Python時下正在“最熱門的編程語言榜”上春風(fēng)得意,看起來將會成為一門不朽的語言。但是現(xiàn)在,很多其他語言也逐漸顯現(xiàn)出Python的一些優(yōu)點:編程方便,對數(shù)學(xué)和科學(xué)計算擁有強大的處理能力,龐大的第三方庫。

下面是Python的一些潛在的挑戰(zhàn)者,并討論了Python是如何保住它***的席位的。

Swift

它是什么:蘋果公司的一種編程語言,主要用于原生的iOS開發(fā),但是現(xiàn)在已經(jīng)開源,并有向服務(wù)器端發(fā)展的傾向。

它的優(yōu)點:使用Swift編程是一種毫無障礙的體驗!用起來相比于編譯型語言(比如,它間接的前任Objective-C)更像是一種腳本語言(比如Python)。Swift的決定性的優(yōu)點是它的速度——它是由LLVM編譯框架編譯成機器碼的,所以它具備真正的多線程。Python還在這方面掙扎。

如果說開發(fā)速度要比執(zhí)行速度重要的話,Python在方面更有優(yōu)勢。但是Swift有XCode IDE的“Playground”模式。

Python的優(yōu)點:一方面,相比于Python來說,Swift是一門新型的編程語言,Python有所有成熟的語言所具備的優(yōu)點——大量的用戶基礎(chǔ),大量的庫,成熟的多平臺支持。Swift現(xiàn)在甚至還不能支持Windows(如果不算上第三方庫的話),雖然這是將來必定會實現(xiàn)的特性。Swift還會產(chǎn)生對蘋果工具鏈的依賴(比如Xcode),而Python的依賴就少的很。

Go

它是什么:**Google的“表現(xiàn)力強、簡潔、干凈、高效”的語言,從Docker及其相關(guān)項目到InfluxDB數(shù)據(jù)庫,Ethereum壞鏈系統(tǒng)和Canonical的Snappy包管理工具都是用Go寫成的。

它的優(yōu)勢:和Swift一樣,Go語言也會編譯成平臺相關(guān)的機器碼,所以它不僅可以在多任務(wù)方面比Python快很多,還還可以在運行時不像Python那樣生成額外的目標。Go代碼編譯速度非??欤_發(fā)速度也很快,所以它更像一門解釋性的語言。

Python的優(yōu)勢:雖然Go不像Swift那么新——它在2009年發(fā)布——Python在用戶和庫的數(shù)量方面還是占有優(yōu)勢。此外,Go的語法和錯誤處理方式和Python相去甚遠。所以,現(xiàn)在Python用戶很難轉(zhuǎn)移到Go,但是不會阻止新用戶選擇這樣一門語言?,F(xiàn)階段,Python的安裝器讓使用和構(gòu)建Python應(yīng)用非常簡單——更不必說像Linux這樣的系統(tǒng),Python已經(jīng)成為了標準。

Julia

它是什么:在2012年發(fā)布,是面向技術(shù)應(yīng)用的一門編程語言,例如數(shù)據(jù)分析和線性代數(shù)。

它的優(yōu)點: Python一個很大的用處是數(shù)學(xué)和科學(xué)應(yīng)用——多虧了Numpy這樣的庫和交互式的IPython編輯程序。Julia的目標用戶也是同樣的群體,和Go、Swift一樣,它也比Python快。它還有一個正在不斷擴展的包,不僅僅包括科學(xué)和數(shù)學(xué)計算的應(yīng)用,還有很多Python的功能,比如從云端提供商那里取得數(shù)據(jù)。

Python的優(yōu)點: Julia有和Python類似的庫,但是Python并不滿足現(xiàn)狀,還在馬不停蹄地優(yōu)化語言的核心和開發(fā)環(huán)境。Python的速度并非一定不及Julia(或者其他Python的競爭者),只要針對不同的工作選擇恰當(dāng)?shù)膸焱瓿?,速度還是客觀的。

Julia語言本身還存在一些爭議。比如,Julia的數(shù)組下標是從1開始的,而不是0——這不僅和Python比是一個缺點,很其他語言比起來也是。(很多第三方的包索引也是從1開始,但是仍讓人很不習(xí)慣。)

R

它是什么:無論是就開發(fā)環(huán)境還是語言本身來說,這都是一個很老的語言了。它專為統(tǒng)計學(xué)設(shè)計。

它的優(yōu)點: R有很多Python的優(yōu)點,比如有豐富的第三方庫等。但是R是專門為統(tǒng)計學(xué)而生的,并且在后面的發(fā)展中依然專注于此。Python也可以做數(shù)學(xué)和統(tǒng)計學(xué)方面的計算,但是在這方面被R語言完全碾壓。

R語言還引起了很多大公司的注意,微軟收購了一個R語言標準實現(xiàn)的開發(fā)商開服務(wù)它的云端數(shù)據(jù)。Hewlett-Packard開發(fā)了一種分布式的R語言計算產(chǎn)品,可以同時跨多個節(jié)點運行。這個產(chǎn)品在將來可以把Python完全擠出這個領(lǐng)域。

Python的優(yōu)點:有時候,作為一個多用途的語言也有它的好處。R語言的功能局限在統(tǒng)計學(xué)計算方面。由于開發(fā)環(huán)境的限制,構(gòu)建R語言應(yīng)用也很麻煩,使用Python創(chuàng)建應(yīng)用就很簡單。而且通過像RPy2這樣的包可以輕松地將R語言和Python聯(lián)合起來。

微軟對R語言的投入很多,但是同時微軟也對Python提供了很多支持,所以這兩種語言都能在Azure上工作的很好。

責(zé)任編輯:趙寧寧 來源: 36大數(shù)據(jù)
相關(guān)推薦

2021-11-02 10:08:25

安全左移網(wǎng)絡(luò)安全漏洞

2011-02-23 09:35:58

Mozilla火狐瀏覽器

2015-04-27 15:05:28

2013-03-25 12:37:56

2013Android競爭對手

2023-07-17 10:17:52

2014-12-05 10:04:06

華為存儲

2020-05-13 15:52:18

編碼競賽網(wǎng)站代碼

2015-10-26 22:14:25

存儲Gartner華為

2016-05-26 17:46:26

華為,Gartner

2016-04-21 16:02:16

SwiftAndroid編程

2020-02-12 10:37:41

數(shù)據(jù)安全信息安全網(wǎng)絡(luò)安全

2015-02-02 11:31:33

聯(lián)想摩托羅拉

2011-11-07 09:02:52

諾基亞Windows Pho

2012-04-16 13:21:00

2018-07-23 13:48:47

京東云

2013-08-30 09:06:17

公有云AWSIBM

2018-10-31 09:43:22

2012-03-29 09:13:52

Windows Pho挑戰(zhàn)賽

2016-03-10 11:31:51

華為/合作伙伴大會

2023-03-20 11:12:19

點贊
收藏

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