php - 重构 20K 行库的技巧

标签 php oop open-source refactoring

我已经为 mario 的答案授予了 100 分赏金,但如果我看到有新的好答案出现,我可能会开始第二次 100 分赏金。这就是我保持问题开放且不会选择的原因最终答案,尽管已将赏金授予马里奥。

这似乎是一个简单的问题(研究代码并重构),但我希望有更多经验的人能给我一些可靠的建议。

该库是一个包含 20,000 行代码的开源库,它全部位于一个文件中,并且不是我自己编写的。代码看起来写得不好,单个文件甚至是一个更大的问题,因为每次我想进行更改时,它至少会卡住 eclipse 半分钟,这也是我认为值得将这个库重构为的原因之一小类。

所以除了阅读代码并尝试理解它之外,在重构这样的库时是否有常见(或不那么常见)的提示?你有什么建议可以让我的生活更轻松一点?

感谢大家的意见。

最佳答案

适用一些通用原则:

  1. 分而治之。将文件拆分为更小的逻辑库和函数分组。您将通过这种方式了解有关该库的更多信息,并使其更易于理解和逐步测试。

  2. 删除重复。寻找重复的函数和概念,并用标准库函数或库中的集中函数替换它们。

  3. 添加一致性。平滑参数和命名。

  4. 添加单元测试。这是重构库中最重要的部分。使用 jUnit(或类似的),并添加可用于验证函数是否正确且未更改的测试。

  5. 添加文档。在编写测试时记录您对一致、改进的库的理解。

关于php - 重构 20K 行库的技巧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4557584/

相关文章:

php - 匹配字符串中的连字符以生成数组输出

php - 提交表格时的成功或失败消息

java - 多态性 vs 覆盖 vs 重载

python - 玩转对象创建

javascript - 基于文本 jquery php 更改按钮

php - PHP中简单数字的float到int改变值

java - 为什么我不断收到此错误 "error: unexpected type"

javascript - 用于创建离散和三 Angular 分布的 JS 模拟框架

java - 它的 Java 代码在此代码中显示算术异常我该如何解决?

windows-7 - 如何在 Windows 上使用 Nexus OSS 创建 YUM 代理