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

Python和Go都很火,我要怎么選?

開發 開發工具
「人生苦短,我用 Python」是當下非常流行的一句口頭禪。但你有沒有想過,Python 就那么好嗎?在某些方面,其他語言真的不香嗎?本文作者對比了 Go 和 Python 的特點及測試結果。

 「人生苦短,我用 Python」是當下非常流行的一句口頭禪。但你有沒有想過,Python 就那么好嗎?在某些方面,其他語言真的不香嗎?本文作者對比了 Go 和 Python 的特點及測試結果,認為開發者應基于項目的屬性和規模以及所需技能組合,合理地選擇編程語言,而不是一味地將 Python 用在所有任務中。

互聯網上有大量優秀的代碼,它們構成了多種基礎架構的基石。甚至本文所在網站的創建初衷也是創建優秀代碼。雖然普通用戶并沒有注意到這一點,但優秀的開發者總是致力于優化其應用(以及代碼)。

編寫優秀代碼的基礎在于開發者的技能以及他/她所選擇的編程語言。這必然導致開發者之間出現歷史性的沖突,這沖突不僅存在于技能層面,主要還在于開發者所選擇的語言。如果你把兩種編程語言(如 Golang (Go) 和 Python)放在一起對比,大概率會得到這樣的結果。

但是,我們退后一步,放下個人偏見和喜好,從優點和功能的角度來評價兩種語言。然后設置公平的競爭環境和技能水準。

現在,我們只有兩個選擇:Go vs Python。那么問題來了:哪種語言更適合你?

關于 Python 

詢問一些開發者后,你會發現 Python 是「空前絕后」的語言。Python 獲得這么多人青睞的原因在于它是一門非常優秀的編程語言。互聯網上到處都是用 Python 寫就的奇跡。

Python 是一門「古老」的語言,其概念首次出現于 1991 年。Python 的歷史積淀賦予了它一些優勢。Python 的使用者眾多,這表示這門語言穩定,且具備大量編寫完備的文檔。在大部分案例中,你能找到幾乎所有事物的庫,以及關于你所思考的所有事物的代碼示例。對于開發者和企業來說,這意味著使用 Python 伴隨而來的是大量經驗和代碼,只需要評估即可。

Python和Go都很火,我要怎么选?

還有大量以 Python 為基礎創建的開源項目,因此在大多數情況下,你不需要從頭開始。Python 可以很好地集成到企業級應用中,可用于機器語言和 AI 應用。但它也有缺點,比如,不適合內存密集型任務,執行速度略慢,不適合移動應用開發。

關于 Go 語言

Go 于 2009 年由谷歌開發完成。它解決了一個問題,創建出一種沒有 C++等語言的過重包袱和過分設計的語言。這使得 Go 在性能和速度上都有極大提升,使用 Go 工作成為一件樂事。此外,大部分第一次使用 Go 語言的開發者不會感覺到不便,因為 Go 中的熟悉元素及其易用性構成了一項驚喜。

Python和Go都很火,我要怎么选?

這并不是說 Go 語言在所有情況下都是完美的。雖然它將速度和優雅度提升到新的層次,但也舍棄了一些用戶期望的功能。比如,它不具備大量庫,也不支持繼承。此外,它沒有 GUI 庫,也不支持對象導向的編程。Go 語言的特點表明它具備輕量級線程實現(Goroutine)、智能標準庫、強大的內置安全性,且可使用最簡語法進行編程。

性能測試

關于 Go 和 Python 的優缺點能說上三天三夜,但最關鍵的一點還是它們的性能。因此接下來本文在基于 Intel® Core™ i7–9700K CPU @ 3.60GHz × 8 cores 運行的試驗配置中執行一些測試。

代碼地址:https://github.com/sekarasiewicz/go-python-benchmark

二分搜索

創建整型列表(從 1 到 100000),使用二分搜索找出數字 729。測試結果如下:

 

 

Python和Go都很火,我要怎么選?

 

 

 

冒泡排序

 

 

 

首先生成整型列表(包含 10000 個隨機數字元素),然后使用冒泡排序算法對這些元素進行排序。測試結果如下:

 

 

 

Python和Go都很火,我要怎么選?

 

 

 

從文件中讀取

 

 

 

該測試是關于讀取「lorem ipsum」文本文件,測試結果如下:

 

 

 

Python和Go都很火,我要怎么選?

 

 

 

HTTP 請求處理

 

 

 

創建 HTTP 服務器很簡單,但是用 Python 搭建一個類似的服務器則需要花費一番功夫。我們來看二者對簡單的「hello world!」消息的響應時間:

 

 

 

Python和Go都很火,我要怎么選?

 

如何選擇?

Python 是社區最受歡迎的語言,在 2019 年第一季度「GitHub 發展最快的編程語言」中名列第二位(pull requests 數量增長 17%),但 Golang 也沒落后多少,在該排名中名列第四(pull requests 數量增長 8%)。在 Golang 和 Python 中做出選擇變得更加艱難。然而,在選擇適合自己的語言時,你需要考慮以下事項:

可擴展性:Golang 在創建之初就考慮到了可擴展性。其內置并發性允許同時處理多項任務。Python 也使用并發性,但并非內置,它通過線程實現并行化。這意味著如果你打算處理大型數據集,Golang 似乎是更適合的選擇。

性能:眾所周知,Python 并非內存/CPU 友好的語言,但它具備大量庫,可以高效執行基礎的開發任務。Golang 具備內置功能,更適合微服務軟件架構。

應用:Python 適合人工智能、數據分析、深度學習和 web 開發任務,而 Golang 適用于系統編程,執行云計算和集群計算應用的開發者喜歡使用 Golang。

社區與庫:如前所述,Python 的歷史賦予它一定優勢。其中之一就是它具備大量庫,擁有大型支持社區。而 Golang 語言仍在增長期,沒有那么多庫和社區支持。但是我們不應因此判定 Go 語言出局。其增長率和采用率非常驚人,每天都在擴張。

執行:如果速度是王道,那么 Golang 遙遙領先。

考慮以上事項后,具體使用案例將成為采用哪種語言的決定性因素。假如你的開發團隊要創建微服務,那么 Golang 是更合理的選擇,因為它速度快、易于編程、可擴展性優異。而 Python 更適合 AI、ML 和數據分析任務。

從直接測試結果來看,Go 在大部分案例中領先,被認為是 Python 的有效替代方案。開發者在選擇編程語言時,應考慮開發項目的性質和規模,以及所需的技能組合。

好消息是,不管選擇了哪種語言,Go 和 Python 都在持續演進。盡管在大多數情況下 Golang 可能是更好的選擇,但 Python 社區不會坐以待斃。這兩種語言都在擴張和增長。這意味著,未來我們將看到更多功能和改進。 

【本文是51CTO專欄機構“機器之心”的原創譯文,微信公眾號“機器之心( id: almosthuman2014)”】 

戳這里,看該作者更多好文

 

責任編輯:張燕妮 來源: 機器之心
相關推薦

2020-11-03 11:18:35

Go語言GoLang編程語言

2011-04-28 10:08:08

噴墨打印機

2020-09-15 12:59:48

KotlinFlutter移動

2012-06-18 14:51:09

Python

2020-11-24 09:50:22

大數據語言go

2018-04-05 22:42:43

2020-01-23 15:49:42

區塊鏈技術智能

2019-06-11 09:17:03

Android學習設計

2019-10-22 20:12:22

戴爾

2020-12-15 15:21:41

C++JavaPython

2022-12-12 09:42:04

PHPGo框架

2023-05-16 07:39:15

ArrayList磁盤IO

2025-02-14 09:17:16

2022-06-16 09:22:28

圖數據庫圖數據數據庫

2012-01-05 16:41:11

蘋果筆記本

2010-03-11 08:57:59

OSGi

2011-05-07 15:25:53

投影機技術

2023-02-07 09:01:22

CSS

2021-07-12 07:31:22

重構軟件行業

2021-04-20 08:02:08

業務數據用戶
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品久久香蕉国产线看观看亚洲 | 欧美性大战久久久久久久蜜臀 | 在线观看午夜视频 | 在线日韩 | 91精品国产色综合久久 | 日韩成人久久 | 午夜激情一区 | 久久精品国产99国产 | 欧美日韩在线视频一区 | 伊人精品视频 | 国产精品3区| www.久久.com| 欧美中文字幕一区二区三区亚洲 | 免费簧片视频 | 国产欧美精品区一区二区三区 | 久久精品国产99国产 | 成人不卡一区二区 | 自拍视频在线观看 | 我要看免费一级毛片 | 午夜ww| 亚洲视频中文字幕 | 午夜影院在线观看 | 麻豆久久久久久久久久 | 国产在线中文字幕 | 韩国av网站在线观看 | 一级片视频免费观看 | 在线看片国产精品 | 91在线看片 | 秋霞性生活 | 中文字幕在线视频一区二区三区 | 国产亚洲一区二区三区在线观看 | 啪啪免费网 | 成人免费观看男女羞羞视频 | 国产精品一区二区视频 | 在线中文字幕国产 | 精品一区二区免费视频 | 波多野结衣一区二区三区在线观看 | 美女黄网 | 久久av网站 | 久久精品欧美一区二区三区不卡 | 色婷婷综合网 |