用于前端javascript开发/测试和生产的工作流/工具

Workflow/tools for frontend javascript development/test and production?

本文关键字:工作流 工具 测试 前端 javascript 开发 用于      更新时间:2023-09-26

在生产环境中,Web前端javascript应用程序几乎没有"暴露",也就是说,声明为全局变量或附加到window

  • 将所有代码最小化并附加到一个(或几个)js文件中;
  • 几乎没有"暴露",即声明为全局变量或附加到window

在开发过程中,如果代码是可读的,分割成几个文件,并且如果原型和相关实例可以从控制台访问,那么事情会更容易。

为了更清楚(不考虑最小化,这很容易通过许多不同的工具获得),在生产中,我将使用如下内容:

(function() {
  var Greeter = function() {
  };
  Greeter.prototype.msg = function() {
    return 'Hello, world!';
  };
  Greeter.prototype.greet = function() {
    console.log(this.msg());
  };
  new Greeter().greet();
}());

这样,我的代码将在不暴露任何东西的情况下完成它的工作:其他代码都无法访问Greeter对象及其实例。

(当然,这只是实现此目的的许多方法之一,但这不是问题的重点)。

调试这段代码很困难,单元测试是不可能的。

为了允许调试和测试,我通常会将Greeter和它的实例附加到window对象上,或者附加到其他对象上。

因此,在开发过程中,我将使用如下内容:
(function() {
  var Greeter = function() {
  };
  Greeter.prototype.msg = function() {
    return 'Hello, world!';
  };
  Greeter.prototype.greet = function() {
    console.log(this.msg());
  };
  window.Greeter = Greeter;
  window.greeter = new Greeter();
  window.greeter.greet();
}());

这样我就可以对Greeter进行单元测试,也可以从浏览器的控制台中询问它以检查它的状态。

是否有一个工具,或一组工具,或一些不同的方式来组织我的代码,以便有可能从开发版本传递到生产版本(这也将被最小化)?

没有一个单独的软件包或可执行文件可以让你100%地实现这个目标。您需要结合编辑器、命令行工具和浏览器来创建一个有效的web应用程序/javascript开发环境。

3.18.13:为Sublime Web Inspector添加了一个链接。在Sublime Text中调试Javascript !http://sokolovstas.github.com/SublimeWebInspector/

编辑

要查找的东西:插件系统,系统高亮,检查,自动完成。如果你现在使用的编辑器支持插件,你最好的选择是坚持使用它,并设置检查和语法高亮。如果你正在寻找一些建议,下面所有的都是可靠的选择。

  • Sublime Text 2(免费试用版)
  • 短信伴侣(商业版,试用30天)
  • VIM(免费)
  • Webstorm(商业版,试用30天)

工作流工具:

我建议从一个高级的工具集开始,比如自耕工或线工。他们有些固执己见,但提供了一个完整的工作流程,可以让你快速完成工作。一旦你习惯了使用它,你就可以偷偷摸摸地挑选和定制它来满足你的需要。

  • Yeoman:提供脚手架,包管理,开发服务器,连接&

  • Lineman: Dev server, concatate &

  • 咕噜声:更低的水平(自耕农和前锋都使用)。类似ruby的rake

  • VCS:不可忽视的是,一个好的基于命令行的VCS是必不可少的。我推荐使用Git,还是用你觉得舒服的东西开始。

浏览器:

浏览器中的开发工具将为您提供控制台和调试工具。花些时间研究并真正了解如何使用浏览器中提供的开发工具。他们非常强大。

  • Webkit浏览器(Chrome或Safari):内置开发人员工具(命令选项J)。

  • Firefox + firebug

  • 浏览器测试:强烈推荐使用browserstack进行跨浏览器测试