初识Node

来源:互联网 发布:sql express 安装失败 编辑:程序博客网 时间:2024/06/07 02:57

1.Node是个什么东西

在了解之前新看一下作者(Ryan Dahl)长什么样子吧,就只是看看,“废话,我还能干嘛!”
这里写图片描述


其实他长什么样我觉得还是不重要,反正我又不拜他

官方对Node的解释是这样的
这里写图片描述
这是对Node一个大的解释,对于Node到底是个什么东西肯定是不知道的!


这里有个问题“在开发人员能力相同的情况下编程语言的能力取决于什么?

答1:“取决于语言本身的能力!”
解释1:“其实我们会发现不管什么语言,其实语言本身就只提供了定义变量、定义函数、定义类、流程控制,循环结构等一系列东西!”

而我则认为“语言的能力取决于这个语言所运行的平台”
1. Java运行在Java虚拟机(跨操作系统)
2. PHP既是语言也是平台(跨操作系统)
3. C#语言平台:.NET Framework(Windows)

如果说这些语言脱离了所在的平台,也干不了对什么系统文件的操作之类的事了。
那再浏览器中执行的javascript的平台也就是浏览器了,所以才有了一系列的DOM和BOM的操作


Node出现之前,javascript也只能在浏览器端运行,不能操作系统文件,因为当时没有一个平台供javascript操作系统文件,所以说Node不是javascript的产物,而是Node平台选择了javascript

这里写图片描述

这里的运行环境其实有两层意思

  1. 首先,JavaScript 语言通过 Node 在服务器运行,在这个意义上,Node 有点像 JavaScript 虚拟机
  2. Node 提供大量工具库,使得 JavaScript 语言与操作系统互动(比如读写文件、新建子进程),在这个意义上, Node 又是 JavaScript 的工具库。

2. 为什么Node要选择javascript

先来看一张Github上的统计图
这里写图片描述

这个图肯定是有点虚夸的意思,但是不得不承认javascript在近几年的用户量的确犹如滔滔江水呀,有那么大一个用户群,也促使Node得以迅速发展

据 Node.js 创始人 Ryan Dahl 回忆,他最初希望采用 Ruby,但是 Ruby 的虚拟机效率不行;
这里写图片描述

1 0