前言
NPM为NodeJS提供了很多包和模块,让我们减少工作量。目前共有73561个packages,如此多的包和模块让我们眼花缭乱,本篇文章会对Node Packaged Modules进行介绍及推荐,持续更新,欢迎投稿!
简介
NPM的全称是,是一个NodeJS包管理和分发工具,已经成为非官方的发布Node模块(包)的标准。
如果你熟悉ruby的gem,Python的pypi、setuptools,PHP的pear,那么你就知道NPM的作用。
Nodejs自身提供了基本的模块,但是开发实际应用过程中仅仅依靠这些基本模块则还需要较多的工作。幸运的是,Nodejs库和框架为我们提供了帮助,让我们减少工作量。但是成百上千的库或者框架管理起来很麻烦,有了NPM,可以很快的找到特定服务要使用的包,进行下载、安装以及管理已经安装的包。
NPM官网:https://www.npmjs.org/
包安装:https://www.npmjs.org/doc/cli/npm-install.html
包发布:https://www.npmjs.org/doc/cli/npm-publish.html
包和模块推荐
Express
简介
Express 是一个简洁而灵活的 node.js Web应用框架, 提供一系列强大特性帮助你创建各种Web应用。它拥有丰富的HTTP工具以及来自Connect框架的中间件随取随用,创建强健、友好的API变得快速又简单。Express 不对 node.js 已有的特性进行二次抽象,我们只是在它之上扩展了Web应用所需的功能。
推荐指数:★★★★★ ★★★★★
参考资料
NPM:https://www.npmjs.org/package/express
中文教程:http://expressjs.jser.us/
Repository:https://github.com/visionmedia/express
主要功能
- HTTP模块
- 模板解析支持
- 动态视图
- 用户会话
- CSRF 保护
- 静态文件服务
- 错误控制器
- 访问日志
- 缓存
- 插件支持
评论
作为NPM上目前Star数最多的package,当之无愧。Express是目前最稳定、使用最广泛,而且Node.js 官方推荐的唯一一个Web 开发框架。但它并不是一个无所不包的全能框架,只是一个轻量级的Web 框架,多数功能只是对HTTP 协议中常用操作的封装,更多的功能需要插件或者整合其他模块来完成。
Async
简介
Async 是一个工具模块,提供了直接而强大的 JavaScript 异步功能。虽然是为 Node.js 设计的,但是它也可以直接在浏览器中使用。Async 提供了大约20个函数,包括 map, reduce, filter, forEach 等等,也有常用的异步流程控制模式,并行,瀑布等等。
推荐指数:★★★★★ ★★★★
参考资料
NPM:https://www.npmjs.org/package/async
Repository:https://github.com/caolan/async
用 Async.js 简化异步编程:http://www.csser.com/board/4f4e935aeb0defac57000134
Async异步流程控制:http://blog.fens.me/nodejs-async/
评论
Async让 Node.js 中的并发代码更容易编写,并使写法接近同步的写法。虽然 Async.js 使写法更接近同步的写法,但仍然无法使异步函数的返回值通过赋值来返回,而仍然需要通过回调的方式来思考程序。
还有很多啦,后续持续更新,敬请期待,准备讲座及答辩去~
暂无评论