国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python即將出局?Julia和Swift能取而代之嗎?

Python即將出局?Julia和Swift能取而代之嗎?

2020-10-19 22:47今日頭條聞數起舞 Python

Rust仍在努力適配機器學習,所以我認為Swift和Julia是取代Python并最終統治數據科學的語言。一起來看看Python面臨的困境吧。

上世紀90年代,Python作為一種通用編程語言誕生了。盡管語句簡潔,Python在最初十年的使用情況卻并不樂觀,它也沒能真正成為開發者使用的編程語言。當時,Perl是編程首選,Java已在面向對象編程領域站穩腳跟。

Python即將出局?Julia和Swift能取而代之嗎?

當然,一切編程語言都需要一定的成熟時間,只有它比現有工具更適合編程,才會被廣泛使用。Python在21世紀初期的第一個機遇就是,人們意識到Python的學習曲線比Perl簡單,還能與其他語言互相操作。這種特性讓大量開發者使用Python編程。Django的出現終結了Perl, Python勢頭更猛了,但仍然無法與其“后輩”Java和JavaScript相提并論。

快進到現在,2019年StackOverflow開發者年度調查報告顯示,Python已超越Java成為第二受歡迎的語言。

Python還是10年來發展速度最快的編程語言。Python的普及很大程度上得益于2010年大數據的出現及機器學習、人工智能的發展。企業迫切需要發展迅速、門檻低的編程語言以管理大規模數據和科學計算任務,而Python能完美解決這些問題。

除了以上優勢,Python還是一種動態類型的解釋型語言。更重要的是,它得到了Google的支持,后者為Tensorflow購買了Python,這使其成為數據分析、可視化和機器學習的首選語言。

然而,盡管對機器學習和人工智能的需求在新十年也將不斷增加,但Python的好景卻不長了。如同其它編程語言一般,Python本身也有缺陷。這些缺陷讓它能輕易被其它更適合完成企業常規任務的語言所取代。哪怕有R語言坐鎮,SwiftJulia和Rust等新編程語言的出現也對數據科學的現任王者構成了極大威脅。

Rust仍在努力適配機器學習,所以我認為Swift和Julia是取代Python并最終統治數據科學的語言。一起來看看Python面臨的困境吧。

Python缺乏類型安全性,運行速度非常慢

Python即將出局?Julia和Swift能取而代之嗎?

圖源:unsplash

所有的好事都要付出代價,Python的動態類型化也不例外。動態類型可以輕松快速地編寫代碼而無需定義類型。然而,尤其是當代碼庫變大時,代碼運行更容易出問題,開發人員在生產環境中運行代碼時會更艱難。編譯器很容易發現的 BUG,在Python中反而無法識別,這樣就會產生開發障礙,最終降低大規模應用程序的開發速度。

更糟糕的是,不同于編譯代碼,Python的解釋程序每次執行時都要分析每行代碼。相比于其它語言,Python開銷更大,程序性能低得多。

而Julia能避免上述問題。Julia雖是動態類型語言,但是它有實時編譯器。其JIF編譯器要么就是在執行前生成正確的機器代碼,要么就是使用先前已儲存、緩存的編譯,這讓它擁有與靜態類型語言一樣的性能。

更重要的是,Julia有一個稱為多分派的關鍵特性,類似于OOPs的函數重載(雖然僅能用于運行程序)。多分派的強大之處在于它能夠處理不同的參數類型,而無需創建單獨的函數名或嵌套的if語句。這有助于編寫更加緊湊的代碼,也是數值計算的一大勝利,它可以輕松地通過擴展解決方案來處理所有類型的參數。

Swift甚至更勝一籌。Swift是靜態類型語言,LLVM編譯器(低級虛擬機器)對其進行了高度優化。它能快速編譯成匯編代碼,這讓Swift超高效運行,速度可比擬C語言。

此外,Swift擁有更好的內存安全和管理工具,即自動引用計數(Automatic Reference Counting)。與garbage收集器不同,只要引用計數歸零,ARC就會回收內存,因此更為準確。

作為提供類型注釋的編譯語言,Swift和Julia比Python速度更快,功能更強大。僅僅這一點,可能就足以讓開發人員推薦它們。

Python在并行性方面有局限性

Python最大的缺點不是速度慢,而是并行計算的局限性。簡單地說,Python使用GIL(全局解釋器鎖)——它會通過阻止多個線程同時執行,來提高單個線程的性能。該過程有一個很大的障礙:開發人員不能使用多個 CPU核心來進行密集的計算。

我們在利用Python與Tensorflow、PyTorch 等C/C++庫的互操作性方面做得不錯。這一點眾所周知,我也十分贊同。但是Python包裝器并不能解決所有調試問題,最后還是得靠C和C++檢查底層代碼。從根本上說,Python的優勢在低層無效,這點足以讓Python出局。

這一因素很快將決定Python的衰落、Julia和Swift的崛起。Julia專門用來解決Python的缺陷,主要有三個特性:協同程序(異步任務)、多線程和分布式計算,這些特性都展示出并發和并行編程的無限可能,這種結構使Julia能夠以比Python更快的速度執行科學計算并解決大數據問題。

另一方面,Swift有一切開發移動應用所需的工具,能夠進行并行計算。

Python即將出局?Julia和Swift能取而代之嗎?

圖源:unsplash

Swift和Julia都擁有Python的互操作性和強大的支持

雖然在速度、多線程和類型安全方面有不足之處,但Python有包含大量庫和程序包的巨型生態系統。在Python面前,Swift和Julia在機器學習領域仍然是個“弟弟”,擁有的庫數量非常有限。然而,Julia和Swift比Python更強的互操作性大大彌補了二者庫支持的不足的缺點。

Julia不僅允許程序員使用Python代碼(反之亦然),還能與C語言、R語言、Java以及幾乎所有主要編程語言的進行互操作。這種多功能性能有力推動這種語言的發展,增加它被數據科學家迅速采用的機會。

另一方面,Swift通過PythonKi 庫提供了與Python的互操作性。Swift(起源于蘋果)最大的賣點是它得到了谷歌的大力支持,十幾年前收益于全力支持而崛起的正是Python,可真是風水輪流轉。

另外,Swift的創建者Chris Lattner正在谷歌的AI brain團隊工作,這表明Swift正在被重點培養,以在機器學習領域的取代Python。

Tensorflow團隊通過S4TF項目投資了Swift,這進一步證明了該語言不僅僅是Python的修飾版。相反,Swift 憑借其差異化的編程支持和像C語言一樣的低層級工作能力,將有可能被用來取代支撐深度學習的工具。

Python即將出局?Julia和Swift能取而代之嗎?

圖源:unsplash

隨著數據量的不斷增加,Python的致命弱點很快就會浮現。注重易用性和快速編碼能力的日子一去不復返,速度和并行計算才是游戲的主角。Python 作為一種通用語言,將不再解決這些問題。Python終會退場,而Julia和Swift似乎就是候選接任者。

不過,我并不是說作為編程語言的Python會立刻消失,它會一點一點淡出人們的視線。Python在數據科學中的地位將逐漸降低,專門為深度學習而設計的語言才是未來主流。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: h视频免费观看 | 久久久久久中文字幕 | 亚洲精品视频在线 | 久久久精品国产 | 99久久婷婷国产精品综合 | 精品国产乱码久久久久久影片 | 好吊色欧美一区二区三区四区 | 日本成人高清视频 | 日韩福利电影 | 成人午夜| 日韩在线不卡一区 | 成人在线免费小视频 | 依人在线| 日韩精品一区二区三区在线观看 | 久草久 | 成人影院在线观看 | 亚洲男人av| 国产婷婷色一区二区三区 | 国产一区二区精品久久岳 | 久久久久亚洲 | 在线国产一区二区 | 成人精品一区二区 | 成人免费一区二区三区视频网站 | 99精品视频在线 | 国产精品女同一区二区久久夜 | 91一区二区在线 | 国产综合一区二区 | 成人深夜在线 | 免费电影一区 | 欧美日韩在线一区二区三区 | 亚洲免费精品 | 高清av一区 | 在线99热| 久久久久久成人 | 黄色a一级电影 | 亚洲欧美日韩电影 | 黄a一级| 亚洲人人 | 日韩在线精品视频 | 在线观看特色大片免费网站 | 日本国产欧美 |