面向JavaScript的重构技巧资源

时间:2010-03-05 19:19:14

标签: javascript refactoring

我想开始讨论有关重构技巧的最佳资源,并着眼于前端JavaScript重构。

我尊重的朋友建议使用book,尽管它使用Java中的示例。我知道OO重构的原则应该翻译成另一种语言。

让我们来谈谈一般的重构和JS重构。

2 个答案:

答案 0 :(得分:1)

不是专门的重构工具,而是一种检测代码中头号气味的工具:我们的CloneDR会自动找到重复的代码(复制/粘贴/ 编辑),并向您显示精确的位置和每个克隆的合理抽象。你必须手工解决这些克隆,但是知道它们在哪里并且已经提供了第一次抽象,这是一个很大的帮助。

编辑:这直接是重构Java和JavaScript代码的资源。 CloneDR适用于它们,使用语言精确解析来精确分析克隆。

您可以看到sample clone detection results on Google's Javascript Closure package

答案 1 :(得分:1)

查看Martin的Clean Code获取一些灵感。这些示例都是Java,但这些想法也应该转换为JavaScript。

为了正确地重构,你需要很好地测试你的代码,因为适当的测试是它的先决条件。尝试找到能够为您提供代码覆盖率的测试工具,因为这将非常有价值。

如果您的代码尚未经过测试,您可以将测试视为一种学习方法。你编写测试来证明或反驳你对它的假设。一旦完成并充分覆盖它,您应该能够使用提供的各种模式重构代码。

正如Ira所说,有一种检测克隆的工具可能很有价值。这绝对是一种看待它的方式。

我认为经常有正确的观点是解决方案的一半。如果你能用清晰的术语陈述你的设计,你最终会得到更好的结果。尽量不要通过应用您找到的每种可能的模式来过度设计它。 :)