gpt4 book ai didi

php - 开发相同 PHP 代码的命名空间和非命名空间版本的策略

转载 作者:IT王子 更新时间:2023-10-29 00:42:43 24 4
gpt4 key购买 nike

我正在维护为 PHP 5.2 编写的库,我想创建它的 PHP 5.3 命名空间版本。但是,我也会保持非命名空间版本为最新,直到 PHP 5.3 变得太旧,甚至 Debian 稳定版也发布了它;)

我有相当干净的代码,大约有 80 个类遵循 Project_Directory_Filename 命名方案(我当然会将它们更改为 \Project\Directory\Filename)并且仅几个函数和常量(也以项目名称为前缀)。

问题是:并行开发命名空间和非命名空间版本的最佳方式是什么?

  • 我是否应该只在存储库中创建分支并继续合并分支之间的更改?是否存在散布反斜杠的代码变得难以合并的情况?

  • 我应该编写将 5.2 版本转换为 5.3 的脚本,还是相反?我应该使用 PHP 分词器吗? SED? C 预处理器?

  • 是否有更好的方法来使用可用的命名空间并保持与旧版 PHP 的向后兼容性?


更新:Decided against use of namespaces after all .

最佳答案

我不认为预处理 5.3 代码是个好主意。如果您的代码在 PHP 5.2 和 5.3 中除了使用命名空间而不是下划线分隔的前缀之外在功能上是相同的,那么为什么还要使用命名空间呢?在那种情况下,我觉得您想使用 namespace ,只是为了使用 namespace ..

我确实认为您会发现,当您迁移到命名空间时,您会开始对组织代码“有一点不同的想法”。

出于这个原因,我非常同意您的第一个解决方案。创建一个分支并向后移植功能和错误修复。

祝你好运!

关于php - 开发相同 PHP 代码的命名空间和非命名空间版本的策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1836387/

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