Python 标准库或将面临大规模清洗

Python一直被称为“内置电池”(batteries included)的编程语言,这一直被作为Python的一个优势在宣传。但是经过多年的发展,Python内置的很多“电池”已经不好用了,或者因为外部工具或平台的变化导致已经无用武之地了。这也引来了很多 Python 开发者的批评之声。

在 2019 年的美国 PyCon 大会上,来自知名项目 Twisted 的一位开发者在她的演讲中,就对 Python 的标准库进行了激烈的批评,甚至气得 Python 之父夺门而出。她说:

Python “内置的电池”已经开始漏电了。

摘录几个核心观点与大家分享:

  1. 标准库无法满足应用开发的需要,很多库甚至依赖 PyPI 上的库
  2. 代码质量差,功能滞后,甚至有很多模块几乎不再被使用,如 tkinter
  3. 标准库阻碍了创新,如 asyncio 的出现导致对 Twisted 的质疑

在批评者看来,这些“废旧电池”的存在,不仅增加了Python每次升级版本时维护标准库的工作量,而且会误导新手使用一些不那么优秀的方法。不管怎么看,“废旧电池”都是丢弃掉更加划算。

核心开发者中也曾对标准库中部分模块的废弃进行过讨论。上个月20日,一位名为 Christian Heimes 的开发者甚至了专门的 PEP 594 提议,建议将标准库中那些已经无人使用的模块移除。他给出的理由与 Twisted 开发者类似:

时代已经变了。PyPI、pip 等工具的广泛使用,让包的安装变得异常简单,而且逐渐成为标准操作。另一方面,标准库中堆积了太多不必要、重复、可废弃的功能。

不过 PEP 594 中建议的移除过程还是比较温和的。最开始只是在 3.8 版本的文档中建议不要使用,然后在 3.9 版本中给一些警告提示,最后大家都知道模块准备移除了之后才会真的移除。

图1:PEP 594 中建议移除的模块列表

Python 标准库或将面临大规模清洗

大部分的移除工作会在Python 3.10完成。而目前稳定版本是 Python 3.7,Python3.8 还在开发中,3.10发布差不多还要3年时间

未经允许不得转载:PHP100中文网 - 中国第一档PHP资源分享门户 » Python 标准库或将面临大规模清洗

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏