微软发布了一个JavaScript远程调试工具—— Vorlon.js 。
它的创造者 David Catuhe 在 MSDN博客文章 中说:“它是一个小型web服务器,你可以在本地机器上运行,也可以架设到服务器上供团队访问,它提供了一套Vorlon.js的控制面板,可以显示所有正在连接的设备”。
Vorlon.js取名自电视节目Babylon 5中的一个古老外星种族,它由Node.js和Socket.IO驱动开发,具有平台无关性。
Catuhe阐述了微软这款调试工具背后的动机:Vorlon.js可以帮助开发者“在任何设备的web浏览器中远程加载,检查,测试,调试JavaScript代码。”他说:
无论是游戏控制台,还是移动设备,甚或是一个接入物联网的冰箱,你都可以远程连接至多50台设备并在这些设备中执行JavaScript代码。开发团队可以一起调试——每个人都可以编写代码,结果对所有人可见。
在 Hacker News 和 Reddit 上,大家将Vorlon.js与Apache的 Weinre 进行了对比。
Catuhe说Weinre是一个“伟大的工具”,但是他们团队“想提供一个与之类似,但无须限定于特定浏览器(Weinre基于Chrome)的体验。我们想提供一个浏览器无关的可在所有地方运行的体验”。
Vorlon.js有三个核心插件: 控制台 、 DOM检查器 、 Modernizr 。控制台将控制台信息从客户端传递到控制面板,可在上面进行调试。所有使用 console.log() 、console.warn()或者console.error()记录的信息都将在控制面板上呈现。
DOM浏览插件为用户呈现远程web页面的dom结构,帮助他们检查DOM,当在宿主web页面点击时,可以高亮节点,而且允许用户查看并修改CSS属性。Modernizr插件通过Modernizr JavaScript库向用户展示当前设备支持的浏览器特性,来决定哪个特性可以使用,Catuhe说,这个功能对于“不寻常的移动设备,或一些类似游戏控制台的东西”特别有效!
Vorlon.js允许用户编写并安装额外的插件,这样设计使开发者可以扩展控制面板和客户端应用。社区开始为这个工具创造一些插件,首先是 对象浏览器 ,允许用户浏览设备中所有的JavaScript变量。Catuhe说团队现在也在编写webaudio插件。
Catuhe说Vorlon.js借鉴了Babylon 5人物的命名,是因为在这一系列节目中,“Vorlons是宇宙中一个最聪明的古老种族,他们像是外交官一样帮助年轻的种族相互交流。他们如此乐于助人启发了我们。”把Vorlon比喻为外交官的观点遭到了网上其他追剧人的挑战,但Catuhe说他认为这个种族帮助年轻种族成长并掌控整个宇宙——就像他认为调试工具可以帮助web开发快速成长一样。
Vorlon.JS以MIT协议发布。想为其贡献代码的InfoQ读者可以参考 CONTRIBUTING.md 来获取更多信息。
感谢邵思华对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群 )。