Python移动开发失败的教训与经验分享

发表时间: 2021-05-26 14:37

机器学习的兴起带动了Python,最新的统计人工智能方向的开发者中75%的人在使用Python。主要是因为针对机器学习Python提供了大量的开源框架以及第三方模块,内置大量的机器学习算法。

我们看到过Python开发论坛,却没有见过Python开发的应用程序。

基于这点,Python之父Guido van Rossum和部分Python开发者都希望Python可以用来写安卓或者IOS应用。于是就有人 Russell Keith-Magee发起了BeeWare项目,这个项目就是用Cpython移植到Android。

经过这个项目取得了初步的成功,但是Guido van Rossum却发现了Python在移动设备和浏览器中的问题。

一、在Andriod上运行Python应用的阻碍

BeeWare项目在去年2月的时候,实现了Python应用程序可以在Android设备上运行。他们就定了更高的目标:是开发者可以用Python写应用程序,包括在IOS、Android、Windows、macOS、Linux、浏览器和tvOS上都很好的运行。

但是Python无法像台式机系统那样应用于移动设备。Python软件基金会为此还给了BeeWare5万美元赞助。以使其对 Android 的支持水平有所提高,而 CPython Android 端口必须支持运行 4.4 或更高版本的大多数现代 Android 设备。

二、Python在浏览器和移动设备上不成功的原因

Guido van Rossum在最近给出了回应:很多人都觉得,如果移动应用程序可以用Python编写那就太好了,实际上也有一些人在为此努力,但是CPython已经有30年的历史,它最初是为工作站、台式机和服务器环境而诞生的。”

后来又补充道:哪些设法实现运行在移动设备的人们发现,Python消耗了太多资源。

Guido van Rossum指出,Python大又慢,运行Python编写的应用会快速消耗电池电量和内存。

不光是这样Python可能在浏览器中也没有前途,Guido van Rossum还说虽然Python在后端开发中很流行,确实JavaScript在前端Web开发中占主导地位。

三、属于Python的领域

尽管如此,Python之父也没有觉得沮丧,而是说Python更应该专注在有利的应用领域。

(1)Web开发

现在各大企业基本离不开web开发,大家可以利用Python的框架做网站,而且界面还非常精美。

(2)爬虫

很多人学习Python都是以爬虫入门,实际上选择爬虫为目标是很好的。因为不需要过多地研究其原理什么的,而且学起来很快,直接上手到爬资讯。

(3)数据分析

Python完整的生态,就很适合用于数据分析、分布式计算等;

(4)人工智能

机器学习、深度学习、自然语言处理基本都是Python来实现的。尽管Julia可能会在科学计算以及机器学习领域和Python竞争,但是在其编译器优化代码方面Python还是赢了。未来不敢说,但是目前Julia还是小众语言。

另外Python在运维和自动化测试方面还是有很大优势的,很多企业自动化的测试脚本都是Python完成的。