最全的JavaScript开发工具列表 总有一款适合你


Posted in Javascript onJune 29, 2017

简介

2017年1月,Stack Overflow年度开发者调研一共访问了64000个程序员,发现Java已经连续5年成为最流行的编程语言。

最全的JavaScript开发工具列表 总有一款适合你

构建 & 自动化

Webpack对Java应用依赖的所有模块进行静态分析,生成依赖图,然后将它们打包成数个静态文件。

Grunt以将重复耗时的任务自动化。Grunt的生态系统非常大,有超过6010个插件。

Gulp发布于Grunt之后,采用了完全不同的方式,使用Java函数定义任务。它有超过2770个插件,并且提供了更好的控制。

Browserify使得开发者可以在浏览器使用CommonJS模块。开发者像在node环境一样,通过require(‘modules')来组织模块之间的引用和依赖,Browserify将这些依赖打包成浏览器可以直接引用的JS文件。

Brunch非常简单,速度很快。Brunch的配置文件非常简单,入门文档非常详细。Brunch会自动生成Source Map,方便了开发者Debug。

Yeoman可以用于任何编程语言(Java, Python, C#, Java, etc.)。它是前端开发的脚手架,有6213个插件。

IDE & 编辑器

WebStorm是一款强大的Java IDE。它支持多种框架和CSS语言,包括前端,后端,移动端以及桌面应用。WebStorm可以无缝整合第三方工具,例如构建构建、语法检查构建linter等等。它提供了代码补全,实时错误监测,导航,内置控制台,各种插件等一系统功能。

Atom是GitHub团队开发的。开发者可以很容易地对Atom进行自定义。Atom自带了一个包管理工具,代码补全,文件系统浏览器,支持多个平台以及其他有用的功能。

Visual Studio Code是微软开发的IDE,支持Type。它提供了代码补全,语法高亮,支持Git命令等等。另外,它还有非常多的插件。

Brackets是一个轻量级的开源编辑器。它专注于可视化工具,可以帮助开发者开发Web应用。Brackets支持实时预览以及行内编辑。

文档

Swagger提供了一系列规则用于描述API。使用Swagger,可以创建清晰的文档,并且自动化API相关的操作(例如功能测试)。

JSDoc可以根据java文件中注释信息,生成Java应用程序或库、模块的API文档。JSDoc可以用于管理大型项目。

jGrouseDoc 是一个开源工具,可根据Java注释生成类似Jaavdoc 的源码文档。它不仅可以为变量和函数生成文档,还可以为模块等其他元素生成文档。

YUIDoc基于Nodejs,可以将文档中的注释生成API文档。它使用类似于Javadoc与Doxygen的语法,并且支持实时预览,支持各种语言,并且支持标记语言。

Docco 是免费的文档工具,由Literate Coffee编写。它将代码中的注释生成HTML文档。Docco并不限于Java,同时支持Python, Ruby, Clojure等语言。

测试

Jasmine 是一个行为驱动开发(BDD)框架,用于测试Java代码。它不依赖任何第三方模块,也不需要DOM。它的语法非常简单易懂,使得编写测试变得很简单。另外,它也可以用于测试Node.js,Python以及Ruby。

Mocha是一个功能测试框架,用于测试Node.js以及浏览器端Java。作为开发者首选的测试框架,它可以自由的编写测试组,提供详细的测试报告,同时让异步测试非常简单。Mocha通常与断言库Chai来验证测试结果。

PhantomJS用于前端单元测试。由于PhantomJS是一个无界面的Webkit浏览器引擎,与直接使用浏览器测试相比,使用PhantomJS脚本可以运行得更快。它支持各种网页标准,例如JSON, Canvas, DOM操作, SVG以及CSS选择器。

Protractor是一个端到端测试框架,用于测试Angular应用。它是基于WebDriverJS构建的,它可以通过浏览器事件或者原生事件,从而模拟真实用户,来测试应用。

调试

Java Debugger由Mozilla Developer Network (MDN)开发,可以独立用于调试Node.js代码,或者用于其他浏览器。Firefox提供了本地和远程调试功能,并且,Firefox安卓端也用于调试运行在安卓应用。

Chrome Dev Tools提供了一系列工具,可以用于调试Java代码,编辑CSS,以及测试应用性能。

ng-inspector是Firefox,Chrome和Safari浏览器插件,可以帮助开发者开发、理解以及调试AngularJS应用。它提供了实时更新,DOM高亮等功能。

Augury是一个Chrome插件,可以用于调试Angular 2应用。它让开发者可以直接查看应用结构,操作特征以及状态变化。

安全

Snyk是一个付费服务,用于发现、修复和预防Java,Node.js和Ruby应用的已知漏洞。Snyk拥有自己的漏洞库,以及NSP和NIST NVD的漏洞数据。它允许开发者使用它们的补丁和更新来修复这些安全漏洞。

Node Security Project提供了工具用于扫描依赖来监测漏洞。NSP使用自己的漏洞数据,以及来自NIST NVD的漏洞数据。NSP支持集成GitHub和CI软件,实时监测和报警,并且可以提供如何修复Node.js应用漏洞的建议。

RetireJS是一个开源的依赖监测工具。它包含了多个组件,包括命令行工具,Grunt插件,Firefox和Chrome插件,Burp和OWASP ZAP插件。Retirejs从NIST NVD,漏洞追踪系统,博客和邮件列表等手机漏洞数据。

Gemnasium是一个付费工具,不过有免费方案。它支持各种技术,比如Ruby, PHP, Bower, Python和npm。Gemnasium提供很多非常有用的特性,比如自动更新,实时报警以及Slack集成等。

OSSIndex支持多个生态系统(Java, Java和.NET/C#),以及多个平台,例如NuGet, npm, Bower, Chocolatey, Maven, Composer, Drupal和MSI。它从NVD以及其他来源收集漏洞数据。

代码优化 & 分析

JSLint是一个Web服务,用于验证Java的代码质量。当它诊断到一个问题时,它会返回问题的大致位置和出错信息。JSLint可以分析一些编码规范以及语法错误。

JSHint可以发现Java中的错误以及一些潜在的问题。JSHint是一个静态代码分析工具,旨在帮助开发者编写大型的程序。它可以诊断语法错误、隐形类型转换等问题,但是它并不能确定你的应用是否正确、性能是否足够好、以及是否会发生内存泄漏。 JSHint是JSLint的一个fork。

ESLint是一个开源诊断工具,用于JSX和Java应用。它可以帮助开发者发现可疑的或者不符合特定编程规范的代码。它帮助开发者在没有执行代码之前发现JS代码中问题,节省了不少时间。ESLint由Node.js编写,可以使用NPM安装。

Flow是Java代码静态类型检测器,由Facebook开发。Flow可以在编码时检查到类型错误并做出提示。

包管理

Bower是一个用于管理前端依赖的包管理器,Twitter创建。它提供了大量可供使用的依赖包,帮助Java开发者更方便地管理前端依赖的JS库。

NPM是node package manager的缩写,事实上NPM包可以用于前后端。它是Java包管理系统,也是世界上最大的依赖库,有超过475,000个模块。

Yarn是Facebook, Google, Exponent 和 Tilde 开发的一款新的 Java 包管理工具。与NPM相比,它解决了安全、性能以及一致性问题。

Duo吸取了Component, Browserify和Go的经验,致力于简化大型Web应用的构建过程。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 特性检测并非浏览器检测
Jan 15 Javascript
asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)
Mar 14 Javascript
解析jquery获取父窗口的元素
Jun 26 Javascript
Js制作简单弹出层DIV在页面居中 中间显示遮罩的具体方法
Aug 08 Javascript
fmt:formatDate的输出格式详解
Jan 09 Javascript
jquery append()方法与html()方法的区别及使用介绍
Aug 01 Javascript
javascript简单比较日期大小的方法
Jan 05 Javascript
JS事件添加和移出的兼容写法示例
Jun 20 Javascript
react-redux中connect的装饰器用法@connect详解
Jan 13 Javascript
p5.js 毕达哥拉斯树的实现代码
Mar 23 Javascript
vue-i18n结合Element-ui的配置方法
May 20 Javascript
Vue 实现分页与输入框关键字筛选功能
Jan 02 Javascript
常见的浏览器Hack技巧整理
Jun 29 #Javascript
详解webpack+gulp实现自动构建部署
Jun 29 #Javascript
bootstrapvalidator之API学习教程
Jun 29 #Javascript
Webpack常见静态资源处理-模块加载器(Loaders)+ExtractTextPlugin插件
Jun 29 #Javascript
jQuery开源组件BootstrapValidator使用详解
Jun 29 #jQuery
详解webpack 多页面/入口支持&公共组件单独打包
Jun 29 #Javascript
详解webpack 如何集成第三方js库
Jun 29 #Javascript
You might like
详解PHP中websocket的使用方法
2016/09/15 PHP
javascript实现window.print()去除页眉页脚
2014/12/30 Javascript
jquery实现的树形目录实例
2015/06/26 Javascript
jQuery抛物线运动实现方法(附完整demo源码下载)
2016/01/08 Javascript
jQuery 3.0十大新特性
2016/07/06 Javascript
分享一个原生的JavaScript拖动方法
2016/09/25 Javascript
详解JavaScript跨域总结与解决办法
2016/10/31 Javascript
基于zepto.js实现登录界面
2017/10/09 Javascript
AngularJS实现的select二级联动下拉菜单功能示例
2017/10/25 Javascript
微信小程序实现点击按钮修改view标签背景颜色功能示例【附demo源码下载】
2017/12/06 Javascript
Vue 实现双向绑定的四种方法
2018/03/16 Javascript
VUE实现Studio管理后台之鼠标拖放改变窗口大小
2020/03/04 Javascript
[39:32]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS DT 第二场
2014/05/23 DOTA
[02:17]2016国际邀请赛中国区预选赛VG战队领队采访
2016/06/26 DOTA
python使用线程封装的一个简单定时器类实例
2015/05/16 Python
Python合并两个字典的常用方法与效率比较
2015/06/17 Python
Django REST framework 视图和路由详解
2019/07/19 Python
Python3.7黑帽编程之病毒篇(基础篇)
2020/02/04 Python
深入浅析python的第三方库pandas
2020/02/13 Python
python使用建议与技巧分享(一)
2020/08/17 Python
美国一家全面的在线零售鞋类公司:SHOEBACCA
2017/01/06 全球购物
eBay德国站:eBay.de
2017/09/14 全球购物
艺龙旅行网酒店预订:国内、港澳台酒店
2018/06/26 全球购物
简述使用ftp进行文件传输时的两种登录方式?它们的区别是什么?常用的ftp文件传输命令是什么?
2016/11/20 面试题
工程力学专业毕业生求职信
2013/10/06 职场文书
火箭队口号
2014/06/18 职场文书
送温暖献爱心活动总结
2014/07/08 职场文书
授权委托书
2014/09/17 职场文书
加强作风建设工作总结
2014/10/23 职场文书
幼儿园大班教师个人工作总结
2015/02/05 职场文书
趣味运动会新闻稿
2015/07/17 职场文书
运动会宣传稿50字
2015/07/23 职场文书
2016关于预防职务犯罪的心得体会
2016/01/21 职场文书
HTML页面滚动时部分内容位置固定不滚动的实现
2021/04/14 HTML / CSS
redis lua限流算法实现示例
2022/07/15 Redis
详解CSS3浏览器兼容
2022/12/24 HTML / CSS