NodeJS 工程师必备的 8 个工具

HaleyPrimro 8年前
   <p style="text-align: center;"><img src="https://simg.open-open.com/show/48caf9e02b39b7cdc66d766f57fcab48.jpg"></p>    <p>NodeJS 自诞生以来,社区的发展速度超出了所有人的想象,现在甚至可以被用来做诸如智能硬件、人脸识别的很多事情。在各种软件工程工作流中实现自动化,比如 APP 打包、 WEB 开发方面自然也少不了它。根据我个人的经验, NodeJS 是用来快速构建精巧的、模块化的、能让开发者更轻松的各种工具的最佳选择。</p>    <p>下面是我长期开发积累的,全局安装在开发机上,频繁使用并且能在开发工作流中带来事半功倍效果的 8 个命令行工具,推荐给大家,希望对大家有用。</p>    <h2>1. create-react-app:快速搭建 React 应用的原型</h2>    <p>安装方法: npm install -g create-react-app , create-react-app 由 非死book 出品,能够帮你快速的生成 React 应用的骨架,里面包括典型 React 应用的基础依赖,最佳实践,包括:开发环境的各种工具,能直接修改运行的测试文件、工具,帮你构建源代码以便发布到生产环境的脚本。</p>    <h2>2. standard:傻瓜式的 Javascript 语法检查工具</h2>    <p>安装方法: npm install -g standard , standard 是代码检查工具领域的新秀,代码检查存在的必要性这里不再赘述。在代码风格检查领域有几款优秀的工具,按出现的先后顺序为: jslint 、 jshint 、 eslint ,而跟 standard 同时出现的还要很多其他的,他的特点是傻瓜式,零配置即可上手,目前在已经有不少开源项目使用了这种风格,无需任何配置,只需要用过命令行就可以确保所有的代码贡献者提交的代码是风格一致的。</p>    <h2>3. nodemon:自动重启 NodeJS 应用</h2>    <p>安装方法, npm install -g nodemon , nodemon 是一款监听服务运行时所在的目录源代码变化并自动重启服务的工具,是项目快速迭代时的完美伴侣,因为 nodemon 能帮你把重复工作降到最低。理论上 nodemon 支持各种语言的服务重启,并且支持监听目录和文件的自定义配置。</p>    <h2>4. pm2:便捷管理 node 服务进程</h2>    <p>安装方法, npm install -g pm2 , pm2 是一款非常强大的服务进程管理工具,尤其适合用在生产环境,人人车所有的线上 node 服务都是用他来管理,开箱即用的特性包括:进程监控、负载均衡、内存监控、日志管理、服务管理。并且有需要的同学可以开启他官方的 node 应用监控后台支持: keymetrics.io</p>    <h2>5. localtunnel:把本机服务暴露到外网</h2>    <p>安装方法: npm install -g localtunnel , localtunnel 能够让你快速的把本机的服务暴露到公网上,提供给其他人使用、测试,不需要任何域名、虚拟主机。典型的使用场景比如做前端开发的同学可以利用这个工具把开发环境的服务提供给 PM 或者 QA 验收使用。提供类似服务的还有 ngrok 及其国内克隆版 natapp ,但是都是收费的。</p>    <h2>6. david:帮你找到已经过期的依赖包</h2>    <p>安装方法: npm install -g david , david 不仅仅能够让你知道你的项目中哪些依赖包需要升级,还提供了快速升级包的机制。 npm 内置的工具有 npm outdated ,但是 david 较之更优。</p>    <h2>7. nvm:Node 版本管理器</h2>    <p>安装方法参见 nvm ,该工具不是 NodeJS 编写。顾名思义,他能够帮你安装、管理、切换不同版本的 NodeJS 引擎,对于开源项目维护者来说尤其实用。比如:你的项目需要支持 NodeJS 的 Current Release (7.X),也要支持 LTS Release (6.X),在跑测试的时候,辅以简单的脚本就可以在多个不同版本上做自动化回归。</p>    <h2>8. yarn:比 npm 更好的包管理器</h2>    <p>安装方法: npm install -g yarn , yarn 是 非死book 出品的改良版 NodeJS 包管理器,在性能上有非常大的改进,依赖管理方面也修复了 npm 被人诟病了很久的无法锁定依赖的问题,但是国内的同学使用可能偶尔会遇到服务不稳定的情况。</p>    <p>结语:学习编程就像是在修炼武功,武学中倡导内外兼修,上述这些工具可以说是外家功夫,只要上手去用,遇到问题多搜索,假以时日你的开发效率自然会精进。</p>    <p> </p>    <p>来自:http://codebay.cn/post/1235.html?1489584205433</p>    <p> </p>