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

Python正在慢慢失去魅力

開發(fā) 后端
自從1990年代初發(fā)布Python之后,它就引起了很多炒作。 當(dāng)然,編程社區(qū)至少花了20年的時(shí)間才意識(shí)到它的存在,但是自那時(shí)以來,它的普及程度已經(jīng)遠(yuǎn)遠(yuǎn)超過了C,C#,Java甚至Javascript。

 自從1990年代初發(fā)布Python之后,它就引起了很多炒作。 當(dāng)然,編程社區(qū)至少花了20年的時(shí)間才意識(shí)到它的存在,但是自那時(shí)以來,它的普及程度已經(jīng)遠(yuǎn)遠(yuǎn)超過了C,C#,Java甚至Javascript。

[[346893]]

盡管Python在數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)領(lǐng)域以及某些程度上在科學(xué)和數(shù)學(xué)計(jì)算領(lǐng)域占據(jù)著主導(dǎo)地位,但與Julia,Swift和Java等較新的語言相比,它確實(shí)有其缺點(diǎn)。

是什么使Python如此流行?

Python迅猛發(fā)展的主要推動(dòng)力之一是它的易學(xué)性和強(qiáng)大的實(shí)用性,這使其對(duì)初學(xué)者以及因諸如C之類的語言的語法難以理解而回避編程的人非常有吸引力。 / C ++。

該語言從根本上廣泛強(qiáng)調(diào)代碼的可讀性。 憑借其簡(jiǎn)潔明了的語法,它使開發(fā)人員無需編寫大量的行代碼即可表達(dá)想法和概念(在C或Java等低級(jí)語言中就是這種情況)。 Python非常簡(jiǎn)單,可以與其他編程語言無縫集成(例如將CPU密集型任務(wù)卸載到C / C ++),這對(duì)多語言開發(fā)人員來說是一個(gè)額外的好處。

Python多功能性的另一個(gè)原因是企業(yè)(包括FAANG)以及無數(shù)小型企業(yè)對(duì)其的大量使用。 如今,您將找到一個(gè)Python軟件包,幾乎可以想到的所有內(nèi)容-對(duì)于科學(xué)計(jì)算,您已經(jīng)擁有Numpy,Sklearn(用于機(jī)器學(xué)習(xí))和Caer(用于計(jì)算機(jī)視覺)。

Python的弱點(diǎn)

很慢,很慢

這可能很容易。 速度通常被認(rèn)為是開發(fā)人員關(guān)注的重點(diǎn)之一,并且可能會(huì)持續(xù)不可預(yù)見的時(shí)間。

Python變慢的主要原因之一,實(shí)際上可以歸結(jié)為2 – Python被解釋為與編譯相反,最終導(dǎo)致執(zhí)行時(shí)間變慢; 以及它是動(dòng)態(tài)類型的(在執(zhí)行過程中,Python會(huì)自動(dòng)推斷變量的數(shù)據(jù)類型)。

實(shí)際上,這種" Python慢"的觀點(diǎn)在初學(xué)者中往往起很大作用。 對(duì),是真的。 但只是部分。

以TensorFlow為例,這是Python提供的機(jī)器學(xué)習(xí)庫。 這些庫實(shí)際上是用C ++編寫的,并且可以在Python中使用,有點(diǎn)像是圍繞C ++實(shí)現(xiàn)的Python"包裝器"。 Numpy甚至在一定程度上也是如此。

它有一個(gè)GIL(l)

Python速度緩慢的主要原因之一是存在GIL(全局解釋器鎖定),該功能一次只能執(zhí)行一個(gè)線程。 雖然這可以提高單線程的性能,但是它限制了并行性,在這種并行性中,開發(fā)人員必須實(shí)現(xiàn)多處理程序而不是多線程程序,以提高速度。

對(duì)于內(nèi)存密集型任務(wù)不是很好的

當(dāng)對(duì)象超出范圍時(shí),Python會(huì)自動(dòng)進(jìn)行垃圾回收。 它旨在消除C和C ++涉及的很多內(nèi)存管理復(fù)雜性。 由于指定數(shù)據(jù)類型的靈活性(或缺乏靈活性),Python消耗的內(nèi)存量可能會(huì)迅速爆炸。

此外,Python可能不會(huì)注意到的一些錯(cuò)誤可能會(huì)在運(yùn)行時(shí)彈出,最終使開發(fā)過程變慢了很多。

移動(dòng)計(jì)算的弱勢(shì)存在

從臺(tái)式機(jī)到智能手機(jī)的巨大轉(zhuǎn)變,很明顯,需要更強(qiáng)大的語言來構(gòu)建用于手機(jī)的軟件。 盡管Python在臺(tái)式機(jī)和服務(wù)器平臺(tái)上具有相當(dāng)大的代表性,但是由于缺乏強(qiáng)大的移動(dòng)計(jì)算處理能力,Python往往會(huì)在移動(dòng)開發(fā)方面失去優(yōu)勢(shì)。

近年來,在這一領(lǐng)域取得了許多進(jìn)步,但是這些新添加的庫甚至與強(qiáng)大的競(jìng)爭(zhēng)對(duì)手(如Kotlin,Swift和Java)并不接近。

其他語言的興起

最近,Julia,Rust和Swift等較新的語言突然出現(xiàn),它們借鑒了Python,C / C ++和Java的許多優(yōu)秀設(shè)計(jì)概念-Rust幾乎保證了運(yùn)行時(shí)的內(nèi)存安全性和并發(fā)性,并提供一流的 與WebAssembly的互操作性; Swift對(duì)LLVM編譯器工具鏈的支持幾乎與C一樣快,而Julia為I / O密集型任務(wù)提供了異步I / O,并且速度非常快。

結(jié)論

Python從未被構(gòu)建為優(yōu)秀的編程語言。 它從未被構(gòu)建為可以使用C / C ++和Java。 它被構(gòu)建為一種通用的編程語言,強(qiáng)調(diào)了人類可讀的,以英語為中心的語法,從而可以快速開發(fā)程序和應(yīng)用程序。

就像一天結(jié)束時(shí)的所有其他語言一樣,Python是一種工具。 有時(shí),它是很好的工具。 有時(shí)候不是。 通常,這"還好"。

那么,Python作為一種編程語言是否正在消亡?

我?guī)缀醪贿@么認(rèn)為。

它失去魅力了嗎?

啊,也許只是一點(diǎn)點(diǎn)。 一點(diǎn)點(diǎn)。

責(zé)任編輯:華軒 來源: 今日頭條
相關(guān)推薦

2020-10-18 21:38:47

Python碼農(nóng)開發(fā)

2020-11-16 19:05:08

Python編程語言開發(fā)

2022-03-30 11:16:36

加密貨幣政治基金

2024-09-13 08:35:43

2024-06-24 12:41:40

2013-06-05 11:31:37

微軟

2016-10-12 09:10:56

大數(shù)據(jù)Airbnb

2013-08-12 09:14:32

2014-05-29 10:46:42

Python 3Python

2021-04-27 14:49:14

IPFS分布式協(xié)議

2024-04-01 11:46:34

BpythonPython開發(fā)

2022-01-26 08:00:55

軟件系統(tǒng)軟件開發(fā)

2019-08-26 15:41:51

2013-08-07 10:51:44

BYOD虛擬化

2025-03-12 00:47:28

MAUIBlazor跨平臺(tái)

2021-04-28 11:40:13

正則表達(dá)式Regex前端

2014-07-15 18:39:59

桌面虛擬化

2012-05-31 13:22:00

虛擬化

2013-09-09 16:34:09

視覺設(shè)計(jì)設(shè)計(jì)定格

2012-08-31 11:39:57

SaaS云計(jì)算軟件運(yùn)營(yíng)服務(wù)
點(diǎn)贊
收藏

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