为什么Node.js会这么火呢?Node.js流行的原因


Posted in Javascript onDecember 01, 2014

Node.js是一项服务器技术,它用来构建和运行Web应用,这和ASP.NET,Ruby on Rails或Spring框架做的工作是类似 的。它使用JavaScript作为主要的开发语言,有一个自带的轻量级Web服务器,还有Node包管理(NPM)的大量插件,你就可以按照你自己的需 求来塑造Web应用,像添加MVC特性,加入Restful服务,OAuth或SSL安全性等等。

语言的重复使用

像ASP.NET或Spring这样的技术需要开发人员学习一门新的服务端语言,比如C#,VB.NET或者Java。而Node.js在服务端和客户端都是使用JavaScript,这意味着开发人员在各层上只需使用一门语言。

对于开发者易转型

有一个事实就是JavaScript是Web开发者们熟知的语言,大部分人都了解JavaScript或多少使用过它。所以说,一个Web开发人员从其他技术转型到Node.js是很简单的。

轻量级

Node.js使用的是事件驱动架构,这就是说在它上面做的每一件事,每一个独立的调用和操作,都是一系列的异步回调。这使得Node.js运行在 一个线程上,这一点和其它的Web技术是不同的,它们每个客户端的请求都会生成一个新的线程来处理。这也正是非阻塞I/O的本质所在。

支持对象数据库

在Node.js应用中使用像MongoDB这样的对象数据库简是十分常见的,MongoDB和传统的SQL数据库不同的是,它使用的是基于文档的模型而非关系型模型,它用的不是表,而是类似JSON这样的对象。这就很适合ORM的热爱者了。

受到IDE和代码编辑器的广泛支持

JavaScript已经存在相当长一段时间了,所以像Visual Studio,Eclipse这样的IDE都是支持JavaScript代码提示和高亮的,另外像NotePad++和Sublime Text之类的代码编辑器也同样支持这些。

可以随处托管服务

一些Web服务器和云服务提供商都支持Node.js的Web应用。我们在这里说几个,包括Google,Microsoft IIS,Heroku,Microsoft Azure,Amazon(AWS)等等。

以上就是个人总结的node.js如此深受欢迎的原因,如有遗漏,还请大家指正。

node.js还真是开发利器神器啊~

Javascript 相关文章推荐
摘自百度的图片轮换效果代码
Nov 19 Javascript
jquer之ajaxQueue简单实现代码
Sep 15 Javascript
jquery简单实现幻灯片的方法
Aug 03 Javascript
JS中的数组方法笔记整理
Jul 26 Javascript
JavaScript学习小结之被嫌弃的eval函数和with语句实例详解
Aug 01 Javascript
js使用i18n实现页面国际化的方法
May 09 Javascript
bootstrap daterangepicker双日历时间段选择控件详解
Jun 15 Javascript
JS中LocalStorage与SessionStorage五种循序渐进的使用方法
Jul 12 Javascript
基于vue组件实现猜数字游戏
May 28 Javascript
详解如何在React组件“外”使用父组件的Props
Jan 12 Javascript
vue.js中toast用法及使用toast弹框的实例代码
Aug 27 Javascript
javascript将16进制的字符串转换为10进制整数hex
Mar 05 Javascript
Javascript学习指南
Dec 01 #Javascript
Javascript模块化编程详解
Dec 01 #Javascript
浅谈Javascript中深复制
Dec 01 #Javascript
使用JS+plupload直接批量上传图片到又拍云
Dec 01 #Javascript
关于javascript模块加载技术的一些思考
Nov 28 #Javascript
jQuery实现Twitter的自动文字补齐特效
Nov 28 #Javascript
关于编写性能高效的javascript事件的技术
Nov 28 #Javascript
You might like
PHP中让curl支持sock5的代码实例
2015/01/21 PHP
php浏览历史记录的方法
2015/03/10 PHP
简单了解将WordPress中的工具栏移到底部的小技巧
2015/12/31 PHP
PHP缩略图生成和图片水印制作
2017/01/07 PHP
php session的应用详细介绍
2017/03/22 PHP
子窗口、父窗口和Silverlight之间的相互调用
2010/08/16 Javascript
基于JQuery的动态删除Table表格的行和列的代码
2011/05/12 Javascript
浅谈JavaScript函数参数的可修改性问题
2013/12/05 Javascript
Nodejs实现多人同时在线移动鼠标的小游戏分享
2014/12/06 NodeJs
jQuery中extend函数的实现原理详解
2015/02/03 Javascript
JS控制表单提交的方法
2015/07/09 Javascript
jquery地址栏链接与a标签链接匹配之特效代码总结
2015/08/24 Javascript
javascript实现tab响应式切换特效
2016/01/29 Javascript
Javascript中arguments对象的详解与使用方法
2016/10/04 Javascript
VueJS全面解析
2016/11/10 Javascript
正则 js分转元带千分符号详解
2017/03/08 Javascript
JavaScript通过mouseover()实现图片变大效果的示例
2017/12/20 Javascript
在vue中使用SockJS实现webSocket通信的过程
2018/08/29 Javascript
详解Vue 换肤方案验证
2019/08/28 Javascript
9种方法优化jQuery代码详解
2020/02/04 jQuery
[01:06:32]DOTA2上海特级锦标赛D组资格赛#1 EG VS VP第一局
2016/02/28 DOTA
[49:08]FNATIC vs Infamous 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
举例讲解Python程序与系统shell交互的方式
2015/04/09 Python
django限制匿名用户访问及重定向的方法实例
2018/02/07 Python
TensorFlow saver指定变量的存取
2018/03/10 Python
Django上线部署之IIS的配置方法
2019/08/22 Python
HTML+CSS3+JS 实现的下拉菜单
2020/11/25 HTML / CSS
英国最大的化装舞会服装网站:Fancydress.com
2017/08/15 全球购物
小米乌克兰网上商店:Xiaomi.UA
2019/10/29 全球购物
空指针到底是什么
2012/08/07 面试题
评析教师个人的自我评价
2014/02/19 职场文书
电焊工岗位工作职责
2014/07/09 职场文书
员工试用期自我鉴定范文
2014/09/15 职场文书
2014年维修电工工作总结
2014/11/20 职场文书
开除通知书范本
2015/04/25 职场文书
Java 数组的使用
2022/05/11 Java/Android