习惯于静态语言的程序员如何应对缺少Javascript工具的问题
在我的大部分职业生涯中,我几乎都是使用编译语言(尤其是Java)进行编程的。关于Java,我最喜欢的事情之一是当使用Eclipse之类的工具时,您的生产率如何,实际编写的代码很少。 您可以: 轻松自动地重构您的方法和类 立即查看调用方法或使用常量的所有位置(Open Call层次结构/显示引用) 静态类型意味着您可以使用代码完成来显示对象上可用的所有参数/功能 按住Control键单击函数/成员/类名,直接进入其定义 所有这些功能使我觉得IDE是我最好的朋友。编写Java代码,尤其是了解其他人的程序变得容易得多。 但是,越来越多的人要求我使用Javascript,到目前为止,我的经验一直很消极。 特别是: 没有立即找到函数入口点的方法(纯文本搜索除外,纯文本搜索可能会导致随后在调用层次结构之后进一步搜索方法,而其中两到三个您忘记了从哪里开始) 将参数传递给函数,无法知道该参数上有哪些属性和函数(除了实际运行程序之外,导航至调用该函数的位置,并使用console.logs输出所有属性可用) 匿名函数通常用作回调,这经常导致混乱的代码路径,从而使您无法快速浏览。 可以肯定的是,JSLint在运行时会捕获一些错误,但即使那样,也不如直接在浏览器中的代码下具有红色波浪线那样方便。 结果是您几乎始终需要把整个程序放在脑子里。这极大地增加了编写复杂程序的认知负担。所有这些需要担心的额外东西,在我的大脑中为实际创造力和解决问题的空间减少了。 当然,将对象放在一起而不是编写整个正式的类定义会更快。但是,尽管程序可能会更容易些,编写起来更快,但以我的经验来看,它们却很难阅读和调试。 我的问题是,其他程序员如何应对这些问题?显然Javascript越来越流行,我读的博客都是关于人们如何使用Java的,而不是拼命尝试寻找解决这些问题的方法。 GWT允许您改为使用Java编写Javascript环境的代码,但它似乎没有我所期望的被广泛使用。实际上,人们似乎更喜欢Javascript用于复杂程序。 我想念什么?