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

Python 3 正在毀滅 Python

開發 后端 前端
對于 Python 社區來說,Python 3 是最糟糕的的一個東西了。我依舊記得,當我第一次使用Python的時候,我已經在C++的領域摸爬滾打了很長時間,Python對我來說就像是一本圣經。

對于 Python 社區來說,Python 3 是最糟糕的的一個東西了。我依舊記得,當我***次使用Python的時候,我已經在C++的領域摸爬滾打了很長時間,Python對我來說就像是一本圣經。我可以隨便打開一個文本編輯器,幾秒鐘或幾分鐘之后,一個可以正常工作的程序就誕生了,而不用去花費幾小時或幾天的時間。我仍記得,Python 2.5問世的時候添加了許多好用的新特性。我愛Python,但同時我也承認她有缺點,但是還都說得過去,所有的語言都有缺點。她的優勢在于她很有趣。盡管Python 3相比Python 2來說有了一些小的提升,但是她丟掉了很多Python 2的優勢。

Python 2最重要的一個優勢在于擁有眾多的第三方庫,可以用來做任何事情,但是Python 3沒有這個優勢。誠然,有很多的庫已經移植到Python 3了,但是有更多的庫沒有移植,也不容易移植。例如,你需要解析 X,但是X不像YAML和JSON那樣容易解析。很可能有一個第三方的解析器可供選擇,但是只可以用Python 2,而沒有針對Python 3的移植版本。此外,加之Python 2中的字節字符串(str)和Python 3 中的字節字符串(bytes)之間有著功能上的差異,使得這更難移植。而事實上,移植它非常困難,并且需要很多的小技巧(trick)來兼容Python 2和Python 3。所以,你有兩種選擇,要么使用Python 2 (已經不建議使用的語言)快速的開發你的程序,但這會花費你十倍以上的時間去移植相關的庫(以及所有的依賴)。要么,使用另一門同樣擁有很多庫的編程語言,但是不用再困擾于Python 2 / 3之間的問題。第二種選擇顯然不受歡迎,因為如果我們這樣做了,在我們的生產環境中已經有很多Python 3的程序了并且大部分Python 2的庫需要被移植。不管這些情況是否存在,人們要么繼續使用Python 2開發程序,要么選擇另一門不會打自己臉的語言。

Python 2的另外一個優點是,用它寫的程序幾乎不用更改就可以運行在下一版本上。如果你的軟件是基于Python 2的,那么就可能花費一大筆錢才能將其遷移至Python 3,因為你需要的工程可能相當地大,并且塞滿了各種類庫手冊,而他們不能被遷移。這在商業策略上非常不明智,因為你不得不為此花費 大量的金錢和工程師的時間才能把工程遷移到Python 3。你不妨問問其他人將整個代碼遷移到Ruby,或者,那還更劃算。至此,要是你不得不重寫你的軟件,你還會選擇Python 3嗎?不。

大多數比較受歡迎并且支持兼容Python 2和Python3的庫是通過運行在各自平臺上的語言子集(subset)來寫的。我最喜歡的Python庫之一的SQLAlchemy做的很好,Django也是這樣做的,但是稍有遜色。語言子集,我稱之為Python X,并不那么好用,需要很怪異的hack,并且通常性能不如Python2 或 Python 3。將現有的Python 2的庫移植到Python X有趣嗎?沒有什么趣味可言,反而很悲哀,因為正是由于有趣才造就了今天的Python。

不幸的是,Python 2 已經不推薦使用了,Python 3用的也不多。Python 3 的改變比較小,沒有得到多少,反倒失去了不少。在過去的幾個月里,我使用Python 3編寫程序和服務。我個人感覺(沒有吹噓的意思),和用Python 2 寫程序沒有太多差別,除了第三方的庫少一些。真沒有其他的令人眼前一亮的了。Python的社區原本要在過去的幾年中轉移到Python 3,但是,他們逐漸發現,人們正在轉向新的語言(或重新改進過的舊語言)。這些語言大都擁有非常棒的功能,像強大的類型系統,模式匹配,更好的性能,更好的支持線程和高并發,更簡單的FFI,更好的lambda表達式等等。

一種解決方案是fork Python 2.7,并繼續開發它,以向后兼容的方式添加新的功能,以便大多數不能移植的Python 2的應用程序可以繼續演化和改善,并給人們和花費了大量時間來開發它的公司帶來價值。這是正確的事(實際上,如果Guido和其他Python社區中的***以官方的名義這樣做而不是強制fork就更好了)。Python 3中的功能需要向后移植到Python 2,并且需要發布Python 2.8。對于少數已經在使用純Python 3開發程序的人來說,可以使用像3to2這樣的工具來兼容Python 2.8。之后,Python 3就可以逐漸的退居幕后,這樣以來,那些Python庫的維護者就可以使用Python 2而不用使用Python X了。

雖然還有些別的方案,但復興Python 2明顯是現在應該做的,其他的都不值一提。因為官方的負責人對Python 2的使用者十分不屑,所以別指望他們會來復興Python 2。如果社區不重振旗鼓并復興Python 2,那Python 3在幾年后就會變成Python的標準,同時很多相應的類庫會被接入(盡管大多數肯定永遠都不可能),很多的投資會失去。到那時,整個社區就會很明顯地萎縮,失去她原有的光輝??纯碢erl的下場吧,人們會離開去別的地方。

英文原文:Python 3 is killing Python

譯文鏈接:http://www.oschina.net/translate/python-3-is-killing-python

責任編輯:林師授 來源: 開源中國社區 編譯
相關推薦

2020-11-16 19:05:08

Python編程語言開發

2020-10-18 12:07:16

Python開發科學

2019-08-26 15:41:51

2018-03-27 10:25:47

3D打印模型3D打印市場

2016-09-20 09:18:29

存儲

2011-02-18 16:51:19

2011-02-16 09:21:44

ReactOSWindows

2014-12-16 11:02:06

PythonGitHub

2018-09-13 08:19:50

Python Java 編程語言

2009-02-04 17:33:24

ibmdwPython

2023-10-16 08:57:52

2023-09-07 10:47:47

2011-12-26 09:38:56

2017-05-10 11:30:28

人工智能

2021-10-08 07:50:57

軟件設計程序

2012-07-12 11:00:40

2018-09-06 15:05:12

2014-07-24 09:30:37

PythonPython 3

2013-12-04 10:00:56

PythonR語言數據科學家

2010-02-03 10:36:00

HTML 5Flash視頻
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美成人精品激情在线观看 | 逼逼视频| 精品视频在线一区 | 成人h视频在线 | 国产欧美一区二区精品忘忧草 | 久久成人免费视频 | 成人午夜电影网 | 免费国产视频 | 中文字幕一区二区三区四区五区 | 日韩中文字幕视频在线 | 国产我和子的乱视频网站 | 美女久久久久久久 | 亚洲欧美视频一区 | 国产综合视频 | 成人免费视频网站在线观看 | 日韩精品一区二区不卡 | 97国产精品视频人人做人人爱 | 日日做夜夜爽毛片麻豆 | 午夜极品| www狠狠爱com | 毛片在线免费播放 | 国产高清视频在线 | 欧美日韩在线综合 | yiren22综合网成人 | 福利视频一区二区 | 亚洲精品在线免费观看视频 | 在线观看中文字幕视频 | 亚洲成av人片在线观看 | 天天久久 | 欧美一卡二卡在线 | av中文字幕在线观看 | 日本免费视频在线观看 | 在线欧美小视频 | 在线日韩在线 | 午夜精品久久久久久久星辰影院 | 中文字幕亚洲欧美日韩在线不卡 | 国产91中文 | 亚洲男人天堂 | 欧美日韩一区二区三区四区 | 色就干 | 看羞羞视频免费 |