各种JavaScript开发工具比较

来源:it168 时间:2007-10-23 13:29:00 

  1 引子 

Java,C#等各种高级语句的开发工具琳琅满目,争放异彩。但作为AJAX的主角的JavaScript语言,配套的开发开具方面总保持着不相称的沉寂。缺乏良好开发工具的支持,编写 JavaScript程序,特别是超过500行以上的JavaScript程序变得深富挑战——没有代码诱导功能,没有实时错误检查,没有断点跟踪调试…,开发JavaScript代码有时就象在黑暗的隧道里靠触觉摸索着前行。

在代码中不小心增加了一个多余的“(”或“{”,整段代码可能马上象一堵猝然倒塌的城墙,在IE中报出的错误往往似是而非,甚至和真实原因往往相差十万八千里,让人如堕五里雾中。有事者引用柳传志的句概括编写 JavaScript程序的感受:战战兢兢,如履薄冰。

笔者曾经使用低级的文本编辑工具开发JavaScript程序,无数次地掉入调试的地狱中,深味其中苦涩和艰辛。幸好现在终于找到了许多好的开发工具,走出了黑暗,迎来了光明。

本文将介绍笔者不同阶段使用过的JavaScript开发工具,聊聊使用的感受,谈谈积累的经验,以图对JavaScript开发工具有一个系统的讲述。如果您正在为寻找一款好的JavaScript开发工具、或已经陷入调试的怪圈中,那么通读本文,你足可开怀一笑。

2 刀耕火种

早期曾有一段时间使用Notepad开发JavaScript程序:写一段程序需要不停地在JavaScript开发手册和编码窗口之间来回切换;编写和调试需要时刻同步进行:编写了几行代码后,就开始测试了,用alert()打出结果,直到保证当前的成果正确后,才能继续往下写几行,然后又重新使用 alert()检查之,周而返复,亦步亦趋,摸索前进。
    在Notepad中编写JavaScript代码, new,if,else等这些大名鼎鼎的“关键人物”已经“泯然众人矣”——和变量名、常量、函数没有任何区别。所以,当代码量逐渐膨胀后(大约超过 200行),代码结构组织,上下文关联查看,前后逻辑阅读以及代码重构都变得困难起来,渐渐让人体力不支。
    这种简单原始的刀耕火种式的编程让我叹谓于“公欲善其事,必先利其器”教诲之深刻,同时也对先人仅使用粗陋工具就创造出无数伟大奇迹的壮举充满敬意。

3 破牛车

比起Notepad,使用Editplus,UltraEdit,Editeur等的编辑工具就舒服多了。因为这些编辑工具可高亮显示语言关键字,并用不同的颜色显示对象,常量等不同语义元素,同时这些工具对程序代码结构也有一定的感知,比如当光标在一个代码块中换行时,光标会自动缩进,图 1是EditPlus编辑JavaScript程序的效果图:

图 1 EditPlus编辑JavaScript程序
    此外,这些工具一般都具强大的查寻、替换,块操作等编辑功能,非Notepad能同日而语。所以诸如EditPlus这些虽不完美的破牛车已经把我们从完全人力劳作的噩梦中解救出来。直到现在,大部分的开发者应该还都是使用诸如此类编辑工具,笔者大部分业已完成的JavaScript程序也大多都在 Editplus中完成。

标签:JavaScript,工具,开发
0
投稿

猜你喜欢

  • Python+Selenium使用Page Object实现页面自动化测试

    2022-09-30 06:09:57
  • window.open被浏览器拦截后的自定义提示

    2007-11-23 12:31:00
  • ASP.NET与数据库相关技巧

    2024-01-26 19:45:23
  • win10安装tesserocr配置 Python使用tesserocr识别字母数字验证码

    2022-12-19 11:56:28
  • MySQL Slave 触发 oom-killer解决方法

    2024-01-20 14:44:35
  • python网络爬虫基于selenium爬取斗鱼直播信息

    2023-03-05 09:33:19
  • Python机器学习工具scikit-learn的使用笔记

    2021-08-30 10:28:50
  • Python抓取Discuz!用户名脚本代码

    2023-06-20 00:34:40
  • 使用ERWin进行基于MySQL数据库的物理设计

    2009-01-04 12:54:00
  • pycharm通过ssh连接远程服务器教程

    2022-10-09 19:44:31
  • PyTorch详解经典网络ResNet实现流程

    2022-08-06 09:40:32
  • Python实现的ini文件操作类分享

    2022-01-01 12:46:24
  • Vue3 ref构建响应式变量失效问题及解决

    2023-07-02 16:33:49
  • 设计原则-控件Balloons(气球状提示)

    2009-08-15 12:34:00
  • Python学习之yaml文件的读取详解

    2023-04-20 14:06:42
  • GoFrame错误处理常用方法及错误码使用示例

    2024-04-25 15:30:35
  • JS代码的格式化和压缩

    2007-10-17 21:17:00
  • Vue watch监听使用的几种方法

    2024-05-09 15:08:40
  • Python编程快速上手——Excel到CSV的转换程序案例分析

    2023-03-20 08:14:01
  • JSP 开发之 releaseSession的实例详解

    2023-06-14 11:49:03
  • asp之家 网络编程 m.aspxhome.com