重构巨大的javascript项目

Refactoring monsterous JavaScript-project

本文关键字:项目 javascript 巨大 重构      更新时间:2023-09-26

我发现自己已经脱离了可怕的javascript项目。我没有看到任何参考已知的设计模式和代码文件由5000多行混乱的代码组成。函数的通常长度约为100行。此外,名称空间也很混乱。对这个项目有什么想法吗?

我一直在尝试阅读源代码,但是没有任何注释。也没有测试,所以做更改只是运气问题。

放弃这个项目不是一个选择。

有什么好的帮助工具吗?现在我用的是sublime &;Chrome .

如果你有规范,你可以编写测试,然后安全地重构。你的测试会告诉你是否弄坏了什么东西。

另一方面,如果您没有规范,您可以通过生成一堆随机值并记录相关结果来编写测试。对于当前的代码,您知道(根据定义)它们是正确的。

我在一个关于重构丑陋的遗留代码的会议上看到了后一种方法。演讲者生成了大量随机的值/结果对,将它们转化为单元测试,并以极快的速度开始重构。结果是相当惊人的,你肯定知道在这个过程中没有任何损坏。

当然,如果你的应用程序比"给我一个输入,我会告诉你输出"的样式更复杂,这就更棘手了。但也许它会让你开始!