gpt4 book ai didi

php - 如何在 1 个版本的库中处理 2 个版本的依赖项

转载 作者:搜寻专家 更新时间:2023-10-31 22:03:23 27 4
gpt4 key购买 nike

我制作了一个 Symfony2 包,它与 SensioFrameworkExtraBundle 2.x 配合得很好

但是自 Symfony 2.4 以来,使用的 SensioFrameworkExtraBundle 是 3.x,并且 apply()supports() 方法签名已更改。

这迫使我维护我的包的 2 个版本......仅因为如此。

有没有办法轻松处理这种情况?

是否有一些我没有想到的不错的解决方法?

因为管理 2 个“相同”版本的更新和修复非常繁琐,并行(修改主分支、提交、切换到其他分支、挑选主提交、推送两个版本、每次创建 2 个版本...)

最佳答案

好吧,如果您的依赖 API 发生变化,通常您会制作一个新版本——也就是它的新主要版本。

无论如何,如果这两种方法是唯一困扰您的事情,您应该编写一个适配器,一方面将固定的标准 API 暴露给您的类,而另一方面它将知道如何使用不同/特定的 API依赖API 不同的版本。这样您就不必维护两个几乎相同的代码版本,而只需维护一个版本的适配器。这样,您的代码将依赖于该适配器而不是依赖项本身,因此您可以调整适配器以适应新版本的依赖项,而无需更改其余代码。

关于php - 如何在 1 个版本的库中处理 2 个版本的依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23456685/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com