您如何保持复杂的JavaScript项目?

Jam*_* H. 7 javascript jquery firebug

我正在使用Firebug帮助弄清楚我的JavaScript(+ JQuery)代码中发生了什么.我主要用它来打印出大量的console.log陈述.这可能不是保持项目最佳的最有效方式.由于它已经从几个功能发展到超过一百个,我开始对所有东西如何组合起来感到困惑.我的意思是,它以某种方式工作但是当我现在看代码时,我几乎觉得别人写了它,因为它太混乱了.

现在,console.log每当我在Firebug中运行我的应用程序时,我都会在控制台中出现大量的语句,并且我一直将它留在那里,因为当我拿出一些时,我总是会重新创建它.我认为,这使得事情变得更加令人困惑,而不是我根本没有记录.我从来没有真正探索过真正的调试 - 断点,监视变量等 - 这是重新获得对该项目的控制权的好方法,还是有其他可能有用的工具?

我曾想过尝试绘制我所有CSS的图表,并尝试将类和ID映射到我的JavaScript中的相应函数.该项目基于一组复杂的应用程序状态组合使用了大量丰富的交互和显示/隐藏功能,可能更接近您在Flash/Flex应用程序中找到的内容.

任何有助于重新获得对该项目的控制的工具或方法的建议都将受到赞赏.当我开始这个项目时,我感觉非常好,因为它看起来很好,人们会赞美它有多酷,但现在感觉就像失败一样,因为我认为我甚至无法解释它是如何工作的如果我不得不面试.

Che*_*try 11

保持您的代码有条理.使用命名空间将其分解为逻辑模块.寻找常见的交互模式并开发通用的可重用代码也是明智之举.

我尝试将每个新功能都编写为jQuery插件.这迫使我编写可重用的代码,这种代码与样式和标记不相关.


raf*_*ira 8

我在一个带有许多javaScript等的Web2.0中工作过.我会给出一些帮助我的提示:

尝试aptana,帮助完成代码,验证等等(有ext-je,Jquery插件)

尝试使用JSLint,帮助我在处理Internet Explorer时特别解决问题.

尝试YSlow查看您的网站成绩.

尝试 WATIR,你可以创建许多测试用例的工具:点击任何地方等待某些文本出现在某处,将某些字符串写入某个字段,生成日志.

记得把Id放在你能做的任何地方.

定义代码约定可能有所帮助.(link1 - link2)

[更新]我正在查看我的书签,发现了一个非常棒的视频:可维护的JavaScript看一看.

希望这些简单的提示可以帮助!

干杯!


Fak*_*hid 1

如果它变得太复杂,那么你就做得太多了,所以保持简单(即:将其分成可管理和可重复使用的块,这样你就不会拥有一艘泰坦尼克号,而是拥有许多紧凑的救生艇)。这可能是任何人都能给你的最好的非技术建议——而且它是有效的。