您現在的位置是:首頁 > 垂釣

屬於新十年的開發語言:Go語言可能很快會取代Python

  • 由 讀芯術 發表于 垂釣
  • 2022-06-28
簡介尤其是在過去五年裡,Python使用者激增,成為機器學習和資料科學開發者的首選語言

go語言能開發什麼程式

全文共1738字,預計學習時長5分鐘

屬於新十年的開發語言:Go語言可能很快會取代Python

圖源:unsplash

30年前,Python首次亮相,它花了20年才得到開發者的讚賞。如今,它已經成為開發者第二喜愛的語言。尤其是在過去五年裡,Python使用者激增,成為機器學習和資料科學開發者的首選語言。

在未來幾年裡,Python在這些領域的主導地位必然是很難被動搖的。但與較新的語言相比,它依然存在嚴重的缺陷。這也是20年代開發者們所面臨的障礙。現在正是反思Python的問題並選擇更好的語言取代它的最好時機。對於人工智慧開發和資料科學來說,下一個首選語言可能是Go語言。

屬於新十年的開發語言:Go語言可能很快會取代Python

Python廣受歡迎的原因

Python廣受歡迎的主要原因是它很容易學習。與其他語言相比,它的語法很簡單,任何人都能在幾小時或幾天內學會Python基礎知識。就算學習了C++或Java等其他語言,開發者還是更傾向於使用Python。這是因為Python的庫幾乎可以滿足使用者的所有需求。

屬於新十年的開發語言:Go語言可能很快會取代Python

Python 的問題

速度

Python是解釋語言,這導致了其最大問題——執行速度慢。與C++和Go等其他編譯語言相比,Python的執行速度非常慢。Python還是動態語言。變數的資料型別在執行時自動分配,這導致其執行速度變得更慢。

C/C++的使用

為了克服Python執行緩慢的問題,Tensorflow、Numpy和Pandas等庫部分是用C或C++編寫的。這能大幅提高執行速度。基本上Python需要藉助其他語言來克服自身問題。

全域性直譯器鎖

Python的全域性直譯器鎖(GIL)一次只允許執行一個執行緒,同時提高了單執行緒效能。Python的多執行緒並不是真正的多執行緒同時執行。事實上,Python做不到真正的多執行緒。

注意,Python非CPython實現的部分,比如Jython和IronPython沒有GIL。

屬於新十年的開發語言:Go語言可能很快會取代Python

為什麼選擇Go語言?

Go是開源程式語言,它使得構建簡單、可靠且高效的軟體變得容易。10年前,Go首次亮相,它在谷歌作為通用語言開發。與Python和其他程式語言相比,它有一些顯著的優勢。

快速

Go是靜態編譯語言。這意味著其執行速度要比Python快好幾倍。與Python不同,Go不需要其他語言的幫助;另外,Go編譯程式碼的速度比C++和Java還快得多。

易於學習

Go的語法和C相似,比較簡單,是一門易於學習的程式語言,特別是對於那些已經瞭解C或Java基礎知識的人。想要學習Go的基礎知識,可以在A Tour of Go網站進行互動式學習,或者閱讀官方文件。

日益流行

Hackearth調查了來自76個國家的16000多名開發者,顯示Go是2020年最受歡迎的程式語言。無需驚訝,有32%富有經驗的開發者和29%的學生表示想學Go。

屬於新十年的開發語言:Go語言可能很快會取代Python

屬於新十年的開發語言:Go語言可能很快會取代Python

併發性

併發性是Go的優勢之一。它擁有Goroutines來實現併發,Goroutines是一些可以同時獨立執行的函式。Goroutines體積很小,只佔用2kB記憶體,你可以同時執行成千上萬個Goroutines函式。

Go為什麼適合人工智慧研究

實際上,對於人工智慧研究和資料科學來說,Go沒有任何特殊之處。那麼究竟為什麼開發者會選擇它呢?

30年前,開發Python不是為了構建機器學習或深度學習演算法,也不是為了實現資料視覺化。它之所以成為今天這個樣子,是因為開發者和學生喜歡用Python,而且它能夠支援開發者開發他們想要的東西。

Go旨在提高程式設計師的工作效率。相比Python,它的幾大優勢讓它很容易在未來幾年取代Python成為最受歡迎的語言。最後一言以蔽之:相比其他任何語言,Go可以更好地支援“20年代開發者”開拓創新。

屬於新十年的開發語言:Go語言可能很快會取代Python

留言點贊關注

我們一起分享AI學習與發展的乾貨

如轉載,請後臺留言,遵守轉載規範

Top