在C#和java世界中,我们习惯于将名称空间准确映射到文件夹结构,并且通常以com.myCompany作为前缀。 现在我开始使用PHP项目重构任务:重构期间PHP命名空间的最佳实践?
- 该项目没有使用名称空间。
- 它没有通过使用带有前缀/后缀的长类名来命名冲突。
- 我们使用spl_autoload_register,它只是在预先定义的文件夹下搜索文件。
- 除了某些模块,我们不打算将完整的源代码共享给公众以供重用。
- 最重要的是:我们有限的资源来重构。
这里是我的问题:
- 我应该使用命名空间为所有的项目文件,或者只使用 那些我们想公开,或完全不使用?
- 如果使用命名空间,它是否应严格地映射文件夹结构(所以可以使用自动加载更简单的方式),还是休闲风格是好的?
- 我应该使用com/myCompany作为前缀还是不是?
- 如果有什么好的工具来做这种安全的重构? (我使用PHPStorm但它无法找到所有的用法一些代码是 动态)
我想平衡的最佳方法和重构所需要的时间。感谢您的高级帮助。
P.S.我已阅读https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md。如果我做了一个新的PHP项目,我肯定会遵循指导原则。但是,我正在使用现有的项目,所以我想知道从命名空间严格使用中获得的好处是否会大于我花费的成本;如果我可以做出任何折衷的话,可以尽量减少我需要做的改变。
我知道这是一篇旧文章,但我强烈推荐PHPStorm,如果您正在进行重构 - 它将允许您命名空间类,它将移动类到正确的文件夹并更新对该类的任何引用与命名空间。 – rgvcorley