你可能已经基本掌握了html、css、和JavaScript,可能已经独立完成一些网页效果等等,那么可以进入node.js的世界了~~

<iframe frameborder=”no”border=”0”marginwidth=”0”marginheight=”0”width=330 height=86 src=”//music.163.com/outchain/player?type=2&id=449116783&auto=0&height=66”>

node的诞生

2008年武器大师(武器大师贾克斯=ajax)开始流行,网站开始追求像本地应用一样的用户体验,这就是web应用的新浪潮,而当时的服务器端不是很厉害,于是Ryan Dahl的目标:创建一个易扩展、适用于现代Web应用通信的服务器平台,方便的应用于以API为中心,而不是以页面为中心的开发~其次是支持浏览器以及服务器端的实时通信~尤其是浏览器到服务器端的消息推送~最后是要具有优秀的模块化功能,可以方便的进行扩充-于是node.js诞生。

什么是node

比如平时的看到的网页的js主要靠浏览器进行编译,编译后才能产生我们想看到的效果。但是如何让js在服务器上编译呢?于是有了Node.js。

Node是一个服务器端JavaScript解释器,是一个JS运行环境,可以用来做服务器,也可以用来像批处理一样执行某些任务。

Node.js是用C++编写的,是Javascript的运行环境,也就是说你可以编写系统级或者服务器端的Javascript代码,交给Node.js来解释执行。

在node这个平台上用JavaScript语言写应用。类似:java是一个平台,在这个平台上用java语言写应用。你可以在node平台上开发桌面gui应用,命令行工具。也可以开发服务器应用,比如web服务器应用等平台这个含义可以理解为有自己的生态环境,丰富的库。

node在前端开发里一般是用来执行编译CSS预编译语言、预编译、压缩、混淆JS、压缩图片、reload、deploy等工程化任务,常用的平台有Grunt和Gulp。

与Apache和Tomcat比较

Apache和Tomcat都是web服务器。Apache主要是用C语言编写的,可以编译php;Tomcat主要是用Java编写的,可以编译java。为什么服务器上要编译js/php/java呢?因为有些网页的复杂功能(业务逻辑等等)用到了这些,将这些语言编写的代码放在云服务器,然后通过云服务器上的Node.js/Apache/Tomcat来进行编译执行。

Node是一个服务器程序。但是肯定不像Apache或Tomcat。一般支持在一分钟之内启动并运行一个服务器。Node肯定不是。Apache能通过添加一个PHP模块来允许开发人员创建动态Web页,添加一个SSL模块来实现安全连接,与此类似,Node也有模块概念,允许向Node内核添加模块。实际上,可供选择的用于Node的模块有数百个之多,社区在创建、发布和更新模块方面非常活跃,一天甚至可以处理数十个模块。

学node的准备

准备……准备……准备,来倒数3……2……1……准备好了,让我们抛弃那些协议算法环境线程以及大佬的建议直接下载安装包安装然后…即可。
安装之后肯定要美滋滋打开,然后看到了这个。

“装好node之后第一次打开的窗口”
“装好node之后第一次打开的窗口”

如何测试安装结果

同时按下windows键+R键,出来运行窗口,在里面输入cmd然后Enter打开命令行,这个是windows操作系统自带的命令行工具。输入node-v,安装成功会出现你所安装的node版本,如果下载并安装了git,就可以直接使用git bash这个命令行工具了。

“node-v”
“node-v”

构建第一个node项目

1、新建一个文件夹hhardyy(命名什么无所谓)。
2、在文件夹中新建一个文件zuishuai.js(写什么什么.js也无所谓),然后在里面写上:

1
console.log("hello zhenzhen");

“构建第一个node项目”
“构建第一个node项目”

3、将命令行工具的目录切换到这个新建的文件夹中,然后执行:node zuishuai.js,在命令行中就会输出hello zhenzhen,第一个node项目就构建成功了。

“执行成功”
“执行成功”

总结起来就是:说干就干,不要管什么理论概念应该一般以及所谓大佬的建议,hold不住了再求教翻书什么乱七八糟的,补充完接着干。对了node是不需要在桌面放快捷方式图标的,因为根本用不上,耍酷例外……希望能帮到有缘人…..