标准库的分拆
"电池已不再随附,请移步第四通道单独购买。" 本文探讨了将标准库从核心语言中分拆出来的趋势,类比为产品不再自带电池而需另购。这种"分拆"让语言核心更精简,同时允许标准库独立演进、按需加载,但也会带来兼容性和依赖管理方面的挑战。
背景速读
- 文章讨论的是编程语言标准库(standard library)的"拆包"趋势——不再把大量功能直接捆绑在语言的核心分发中,而是让开发者按需从包管理器单独安装。
- 典型例子:Python 的 `pip` 生态(`requests` 替代内置 `urllib`)、Node.js 的 npm(`left-pad` 事件)、Rust 的 Cargo(crates.io)以及 Go 的模块系统。这些语言都经历过或正在经历标准库膨胀与解耦的权衡。
- 核心争议:标准库提供"开箱即用"的便利(batteries included),但升级慢、体积大、可能过时;拆包后依赖外部生态,更新灵活,但面临碎片化、供应链安全(如恶意包、依赖劫持)和版本兼容问题。
- 文章作者 likely 是技术从业者,此文发布于 2026 年 6 月,可视为对过去十年语言生态演变的一次阶段性回顾与反思。