在我们的bootcamp训练营中,学员们介绍了一些工具和库来扩展他们代码的能力。Kalina,目前我们JavaScript学员中的一员,列举了这些工具,想和其它爱好代码的小伙伴一起分享。
点击看大图
Ivan Storck,我们JavaScript训练营的指导员,把Kalina列举的工具绘制成下面这个思维导图:
一般的工具
脚手架工具(帮助启动项目)
- Yeoman-Yeoman是一个强健且固执的客户端堆栈,其包含一些能帮助开发人员快速构建漂亮web应用程序的工具和框架。
构建工具(自动化的)
- Grunt.js—Grunt生态系统非常庞大,并且一直在增长。由于拥有数量庞大的插件可供选择,因此,你可以利用Grunt自动完成任何事,并且花费最少的代价。
- Pint.js(Grunt的助手 )-Pint是一个小型,异步的GruntJS运行器,试图解决大规模构建流程中的一些问题。
- Gulp.js-Gulp使用流式构建项目,且主张代码优先于配置。因此使创建过程更简单,直观。
- Browserify.js (浏览器的)—Browserify 是一个允许我们写node.js-风格的模块,编译后给浏览器使用。就像node.js一样,我们在不同的文件中编写模块,用module.exports 导出外部方法和属性,用exports导出变量。
- Uglify.js -Uglify.js 是NodeJS的一个JavaScript解析/压缩/美化库。
包管理工具
- Homebrew(Mac OS)-Homebrew能安装你需要而苹果没有的东西。
- Apt(Ubuntu)-apt-get命令是一个很强大的命令行工具,与Ubuntu的APT机制一起工作,能安装新的软件包,更新现有的软件包,能更新包列表索引,且甚至能能更新整个Ubuntu系统。
- NPM-npm是Node.js的官方包管理器。
- Bower-Bower是web的包管理器。
前端工具
MVC框架
- Backbone.js-Backbone.js通过提供带有键值绑定的模型和定制的事件,带有枚举功能的丰富的集合API,带有声明式事件处理的视图,而且将它所有这些东西通过一个RESTful JSON接口连接到你现有的API上面,来向Web应用程序提供架构。
- Ember.js-当底层模型变化时能保持你的HTML最新,那么Ember.js能让Handlebars模板更胜一筹。
- Angular.js-AngularJS能让你为你的应用扩展HTML词汇。它能让程序更富表现力,更具可读性,更快的构建程序。
模板
- Handlebars.js-Handlebars提供了必要的能力,让你能有效的构建语义模板。Mustache模板兼容Handlebars,因此你可以把Mustache模板导入到Handlebars中,来利用Handlebars额外的特性。
- Mustache.js(比Handlebars少外置元素)-Mustache是一个支持ActionScript, C++, Clojure, CoffeeScript, ColdFusion, D, Erlang, Fantom, Go, Java, JavaScript, Lua, .NET, Objective-C, Pharo, Perl, PHP, Python, Ruby, Scala and XQuery.的简单的web模板系统。
- Jade-Jade是一个主要为node.js服务器端模板设计的节点模板引擎。
- Eco-Eco能在你的标记中嵌入CoffeeScript逻辑。
测试
- Zombie.js-Zombie.js是一个通过模拟环境来测试客户端JavaScript代码的轻量框架。不需要浏览器。
后端工具
服务器
- Express-Express是一个Node的web应用框架。
- Node-Node.js是一个基于Chrome JavaScript 运行时建立的一个平台,用来方便地搭建快速的, 易于扩展的网络应用。
数据库
- MongoDB-MongoDB是一款开源的文档型数据库,是NoSQL数据库中最热的一款。
- Postgresql-Postgresql是一个强大的,开源,对象关系的数据库系统。
- SQL-SQL被用来与数据库进行通信。美国国家标准协会规定,它是关系型数据库管理系统的标准语言。
架构风格
- RESTful-REST是一个架构风格,由一套协调的体系结构约束组成,在分布式超媒体系统中应用组件,连接器和数据元素。
测试
- Cucumber.js-Cucumber.js是一个能让你在JavaScript堆栈中使用目前流行的行为驱动模式的工具。
- Jasmine-Jasmine是一个JavaScript的行为驱动开发测试框架。它不依赖于浏览器,DOM或任何JavaScript框架。因此它适合于web站点,Node.js工程或任何JavaScript能运行的地方。
- Mocha-Mocha是一个在noce.js和浏览器上运行的富功能JavaScript测试框架,它让异步测试变得简单有趣。
- Q-Unit-Q-Unit是一个功能强大,易于使用的JavaScript单元测试框架。它被应用于jQuery,jQuery UI和jQuery移动开发的工程中,它能测试任何通用的JavaScript代码。
Assertion(断言) 库
- Chai-Chai是一个 node和浏览器的BDD/TDD Assertion(断言) 库,它能与任何JavaScript测试框架进行很好的配合。
函数化编程工具
- Underscore.js - Underscore是一个在没有扩展任何内置对象情况下提供许多函数式编程帮助的JavaScript库。
- Lo-Dash-Lo-Dash是一个提供一致性,定制性和表现性的实用库。
更新:
还有其它你认为应该在这列举的工具吗?看看这篇文章和Github上有关MindNode的思维导图(OPML)。把你的建议发送给我们,让我们在此增加一些新鲜流行的工具!