下個10年,Go能取代Python成為開發(fā)者的首選語言嗎?
選自towardsdatascience
作者:Dasaradh S K
機器之心編譯? ? ?機器之心編輯部
Go為什么是2020年最受歡迎的語言?這篇文章也許能夠給你答案。

30年前,Python首次出現(xiàn),但它花了20年的時間才獲得開發(fā)者們的賞識。直到2019年,Python才成為最受開發(fā)者喜愛的第二大語言。Python在過去,尤其是在過去5年中的增長是非常巨大的。如今它已成為機器學(xué)習(xí)和數(shù)據(jù)科學(xué)開發(fā)者的首選語言。
在接下來的幾年中,Python無疑還將繼續(xù)在這些領(lǐng)域占據(jù)主導(dǎo)地位。但是,與一些新興語言相比,它存在一些明顯的缺點。對于未來十年的開發(fā)者來說,這可能是一個嚴重的障礙。
所以,有沒有一種更好的編程語言來替代Python呢?就人工智能發(fā)展和數(shù)據(jù)科學(xué)而言,Go語言或許會成為越來越多開發(fā)者的下一個首選語言。
Python為何大受歡迎

所以,庫和簡單的語法讓使用Python進行開發(fā)既簡單又高效,也讓其成為適合初學(xué)者的語言。
Python并不是完美的
速度
Python是一種解釋型語言,這也導(dǎo)致了它最大的問題——運行緩慢。與其他語言(例如C++、Java)相比,Python的運行速度非常慢。此外,Python還是一種動態(tài)型語言。變量的數(shù)據(jù)類型在運行期間自動分配,這也使得運行速度大大降低。
為了改善Python運行速度緩慢的問題,Tensorflow、Numpy和Pandas這些庫都是部分用C/C++編寫的。這對Python速度的提升起到了非常大的作用?;旧?,Python需要借助其他語言來改善速度慢的問題。
Python的全局解釋器鎖(GIL)一次只能運行一個線程,但這提升了單線程的性能。Python的多線程實際上并沒有同時運行多個線程。實際上,Python無法執(zhí)行真正的多線程。
為什么說Go語言將成為新興語言呢?
Go語言是一種開源編程語言,可輕松構(gòu)建簡單、可靠且高效的軟件。
速度快
Go是靜態(tài)型化和編譯的語言,這意味著它的運行速度是Python的數(shù)倍。而與Python不同的是,Go不需要借助其他語言就可以達到一個較快的速度。Go幾乎和C++、Java一樣快,而且Go語言的代碼編譯速度比C++和Java快得多。
Go的語法很簡單,類似于C語言。所以,Go語言同樣很容易學(xué)習(xí),如果學(xué)習(xí)者已經(jīng)掌握C或者Java語言的基礎(chǔ)知識,學(xué)起來就更簡單了。
Hackearth對來自76個國家和地區(qū)的16000余名開發(fā)者進行調(diào)查的結(jié)果顯示,Go語言是2020年最受歡迎的編程語言。32%的有經(jīng)驗開發(fā)者表示他們想學(xué)習(xí)Go語言。
并發(fā)
并發(fā)是Go語言的主要優(yōu)勢之一。Go使用Goroutine實現(xiàn)并發(fā),Goroutine是可以同時獨立運行的函數(shù)。Goroutine只占2KB內(nèi)存,得益于這種輕量級,成千上萬個Goroutine可以同時運行。
下面這篇文章深入介紹了Go語言的更多優(yōu)勢。
文章鏈接:https://medium.com/@kevalpatel2106/why-should-you-learn-go-f607681fad65為什么說Go適用于AI研究?
30年前,尚且沒有將Python用于構(gòu)建機器學(xué)習(xí)和深度學(xué)習(xí)算法以進行數(shù)據(jù)可視化。Python能夠有現(xiàn)在的輝煌,是因為開發(fā)者和學(xué)生喜歡用這種語言編程,并且能夠?qū)崿F(xiàn)開發(fā)者的開發(fā)目的。
而Go語言旨在提升程序開發(fā)的生產(chǎn)力。和Python相比,它具備多個優(yōu)點。Go語言很有可能在未來幾年中取代Python,成為最受歡迎的語言。
因此,一言以蔽之:
未來十年,Go語言比其他任何一種語言都更能支持開發(fā)者們的想法。
戀習(xí)Python 關(guān)注戀習(xí)Python,Python都好練
好文章,我在看??
評論
圖片
表情
