移動(dòng)設(shè)備上Python應(yīng)用不成功的原因

這篇文章主要介紹“移動(dòng)設(shè)備上 Python 應(yīng)用不成功的原因”,在日常操作中,相信很多人在移動(dòng)設(shè)備上 Python 應(yīng)用不成功的原因問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”移動(dòng)設(shè)備上 Python 應(yīng)用不成功的原因”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

成都網(wǎng)站建設(shè)公司更懂你!創(chuàng)新互聯(lián)只做搜索引擎喜歡的網(wǎng)站!成都網(wǎng)站制作前臺(tái)采用搜索引擎認(rèn)可的DIV+CSS架構(gòu),全站HTML靜態(tài),HTML5+CSS3網(wǎng)站,提供:網(wǎng)站建設(shè),微信開(kāi)發(fā),成都小程序開(kāi)發(fā),商城網(wǎng)站建設(shè)app軟件開(kāi)發(fā),域名注冊(cè),服務(wù)器租售,網(wǎng)站代托管運(yùn)營(yíng),微信公眾號(hào)代托管運(yùn)營(yíng)。

近年來(lái),隨著機(jī)器學(xué)習(xí)的興起,有一門(mén)編程語(yǔ)言逐漸變得火熱——Python。得益于其針對(duì)機(jī)器學(xué)習(xí)提供了大量開(kāi)源框架和第三方模塊,內(nèi)置大量機(jī)器學(xué)習(xí)算法,Python 在開(kāi)發(fā)者中逐漸流行起來(lái)。

盡管如此,我們卻很難在移動(dòng)設(shè)備中看見(jiàn)用 Python 開(kāi)發(fā)的應(yīng)用程序。

基于此,Python 之父 Guido van Rossum 和部分 Python 開(kāi)發(fā)者都希望未來(lái)有天能看見(jiàn)用 Python 編寫(xiě)的應(yīng)用能在 iOS 和 Android 設(shè)備上運(yùn)行。其中 Russell Keith-Magee 發(fā)起了BeeWare 項(xiàng)目,該項(xiàng)目旨在將 CPython 移植到 Android,即用 Python 編寫(xiě)的應(yīng)用可以在 Android 上本地運(yùn)行。

按理說(shuō),在 BeeWare 項(xiàng)目取得了初步成功后應(yīng)值得慶賀,但 Guido van Rossum 卻清晰地認(rèn)識(shí)到:Python 在移動(dòng)設(shè)備和瀏覽器領(lǐng)域中都存在“痛點(diǎn)”。

1、在 Android 上運(yùn)行純 Python 應(yīng)用障礙重重

BeeWare 項(xiàng)目成立的目標(biāo)是讓開(kāi)發(fā)者能用 Python 編寫(xiě)應(yīng)用程序,而在去年 2 月,這一目標(biāo)初步實(shí)現(xiàn)了第一個(gè)里程碑:一個(gè)純 Python 應(yīng)用程序在可以在 Android 設(shè)備上運(yùn)行!

彼時(shí),Russell Keith-Magee 就指出:“這不是項(xiàng)目的結(jié)束——而是開(kāi)始?!比缢f(shuō),BeeWare 項(xiàng)目的追求,絕對(duì)不僅僅是 Python 應(yīng)用可以運(yùn)行在 Android 上就滿(mǎn)足了。

BeeWare 的目標(biāo)是讓開(kāi)發(fā)者能用 Python 編寫(xiě)的應(yīng)用程序,在包括 iOS、Android、Windows、macOS、Linux、瀏覽器和 tvOS 上都能很好地運(yùn)行。但問(wèn)題在于,Python 無(wú)法像臺(tái)式機(jī)系統(tǒng)那樣應(yīng)用于移動(dòng)設(shè)備。

為了解決這個(gè)缺點(diǎn),Python 軟件基金會(huì)去年向 BeeWare 項(xiàng)目給予了 50000 美元的資助,以使其對(duì) Android 的支持水平有所提高,而 CPython Android 端口必須支持運(yùn)行 4.4 或更高版本的大多數(shù)現(xiàn)代 Android 設(shè)備。 

對(duì)此,MongoDB 工程師兼 Python 貢獻(xiàn)者 A Jesse Jiryu Davis 表示:“BeeWare 的策略是將 Python 編譯為 Java 字節(jié)碼,但如今 Android 設(shè)備足夠快,并且 Android 內(nèi)核足以運(yùn)行 CPython 本身。”

不過(guò) Davis 指出這項(xiàng)計(jì)劃的一個(gè)主要障礙就是用 Python 編寫(xiě)的 Android 應(yīng)用程序的規(guī)模。因?yàn)?Python 應(yīng)用需要自己的運(yùn)行環(huán)境副本,所以這就意味著 Python 需要縮小規(guī)模以順利運(yùn)行在移動(dòng)設(shè)備。對(duì)此,有些人建議可以通過(guò)創(chuàng)建一個(gè)簡(jiǎn)化內(nèi)核版本的 Python 以解決該問(wèn)題。

另外,構(gòu)建 Python 應(yīng)用程序?qū)ζ胀ǖ?Python 開(kāi)發(fā)者而言也是完全陌生的領(lǐng)域。Davis 解釋道:“沒(méi)有子進(jìn)程;套接字和信號(hào)行為都與常規(guī) Unix 有所不同;并且禁止許多 syscall?!?/p>

除此之外,資金和人才也是一大難題。Python 軟件基金會(huì)中的 Ned Deily 認(rèn)為,相比許多其他 Python 計(jì)劃,提供移動(dòng)支持需要更多的資金和人力。Davis 也表示,由于 Python 不支持移動(dòng)設(shè)備,因此沒(méi)有公司為移動(dòng)設(shè)備上的 Python 提供資金,也沒(méi)有人愿意依靠移動(dòng)設(shè)備來(lái)為 Python 籌集資金。

2、Python 在瀏覽器和移動(dòng)設(shè)備上不成功的原因

對(duì)于 Python 在移動(dòng)設(shè)備上艱難的發(fā)展,近日 Python 之父 Guido van Rossum 也給予了正面回應(yīng):“許多人都覺(jué)得,如果移動(dòng)應(yīng)用程序可以用 Python 編寫(xiě),那就太好了。實(shí)際上也有一些人在為此努力實(shí)現(xiàn),但 CPython 已有 30 年的歷史了,它最初是為工作站、臺(tái)式機(jī)和服務(wù)器環(huán)境而誕生的?!?/p>

他補(bǔ)充道:“但那些設(shè)法讓 CPython 能在移動(dòng)設(shè)備上運(yùn)行的人們發(fā)現(xiàn),Python 消耗了太多的資源?!?/p>

Guido van Rossum 指出,與期待中在移動(dòng)操作系統(tǒng)運(yùn)行的情況相比,Python 又大又慢:運(yùn)行 Python 編寫(xiě)的應(yīng)用會(huì)迅速消耗電池電量和內(nèi)存。

不僅如此,他還承認(rèn) Python 在瀏覽器中可能也沒(méi)有前途。

“雖然 Python 在后端 Web 開(kāi)發(fā)中很流行,但的確 JavaScript 在前端 Web 開(kāi)發(fā)中占主導(dǎo)地位?!彼硎荆絹?lái)越多的 Web 開(kāi)發(fā)人員都在使用微軟的 JavaScript 超集——TypeScript。

Guido van Rossum 總結(jié)為:“Python 是一種非常流行的后端語(yǔ)言。在谷歌,我從事的項(xiàng)目都基于 Python 構(gòu)建;在 Dropbox,整個(gè) Dropbox 服務(wù)器都是基于 Python 構(gòu)建的。但你如果看瀏覽器中運(yùn)行的是什么代碼,那必然是 JavaScript 的世界?!?/p>

不過(guò)對(duì)此 Guido van Rossum 并不氣餒,他認(rèn)為 Python 應(yīng)該專(zhuān)注于有利的應(yīng)用領(lǐng)域,包括后端網(wǎng)絡(luò)和科學(xué)數(shù)據(jù)處理。

除此之外,Python 之父也對(duì) Julia(一種可能在科學(xué)計(jì)算和機(jī)器學(xué)習(xí)領(lǐng)域跟 Python 競(jìng)爭(zhēng)的編程語(yǔ)言,但沒(méi)有如 Python 那般豐富的機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)庫(kù))發(fā)表了一些看法:Julia 是一種非常像 Python 的有趣作品。

他認(rèn)為,Julia 在很多的細(xì)節(jié)上與 Python 非常相似,并且在其編譯器優(yōu)化代碼方面更勝 Python 一籌。但總體看來(lái),Julia 還頗有不足,屬于一種“小眾語(yǔ)言”。

到此,關(guān)于“移動(dòng)設(shè)備上 Python 應(yīng)用不成功的原因”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

網(wǎng)頁(yè)名稱(chēng):移動(dòng)設(shè)備上Python應(yīng)用不成功的原因
網(wǎng)站路徑:http://muchs.cn/article46/pdhehg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、做網(wǎng)站、網(wǎng)站排名、微信小程序外貿(mào)建站、品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司