为什么图书馆要单独运送而不是与每个程序捆绑在一起?
我知道总体上为什么如此好:更快的安全修复,更轻松的包装,更多功能。但是,我试图说服一些同事我们不需要将库与程序捆绑在一起。没有该库,它将无法正常工作,但是该库已经稳定了一段时间,并且在可预见的将来仍将保持稳定。我认为没有任何理由不将其拆开。 我可以用什么论据来说服他们? 我的具体情况是:我正在研究SymPy,这是一个用于符号数学的开源Python库。它的核心部分是mpmath,它是用于多预置浮点运算的库。如果没有mpmath,SymPy将无法运行,没有其他选择。因此,它从一开始就与SymPy捆绑在一起(有人告诉我,每次导入新版本时通常都存在一些小的不兼容问题来修复)。还应注意,mpmath的开发人员曾经参与过SymPy开发。现在有一个关于捆绑mpmath的问题,您可以在这里阅读全部内容。 总结那里的讨论: 解除捆绑: 移植到Python 3稍微容易一些(次要参数IMHO) 包装更容易分发 向用户更快(安全)功能更新 “打包和处理依赖关系是棘手的问题,但可以解决。绝对不是我们应该做自己的事情的领域。” 继续捆绑: 安装。在Linux上很容易,在Mac上更难,在Windows上非常难。缺少su访问权限和其他问题。 它是SymPy不可或缺的一部分,即没有它,sympy根本无法工作(根本) 有没有其它的包,可以做mpmath的工作 “当我作为用户下载sympy时,我希望它能正常工作。” 那是我的具体情况,但我会接受一个提供一般性好的答案的答案。