2011年阿里就已经开始在生产环境中使用nodejs.

阿里的技术栈中,Java是最核心的,Nodejs扮演怎样的一个角色?

1、 基础设施大部分采用Java实现,变化较少,有事务要求的Business Services通常使用Java.

2、而Node.js则替代过去PHP/Java Web的场景,用在需要快速迭代,需求变化非常快的用户侧。

3、很多内部的工程化支撑系统也逐渐基于Nodel.js了。

一、nodejs是什么

nodejs是采用google chrome浏览器v8引擎,由c++编写的,本质上是以JavaScript运行环境。

不仅解析代码,也没有浏览器端的各种安全性限制,还提供系统级的API,比如文件读写,进程管理,网络通信等。

2、nodejs有多火?

npmjs上数据

20170327数据

github中搜索node相关的结果将近30万

3、 借助nodejs完成的项目

  • Node-Webkit 使用web技术开发跨平台的桌面应用程序,能兼容Mac,Linux或者Windows
  • appjs和Node-Webkit相似
  • musicquiz
  • jade和nodejs组合使用,非常高效的开发和管理后台html模板
  • ghost 强大而且用户体验超好的开源博客程序。
  • Yamr
  • grunt :javascript跑各种任务的运行工具。通过集成各种插件来完成,比如样式编译、语法检查、脚本压缩合并,自动化测试,shell脚本运行,文档生成,甚至图片处理等等任务。
  • express.js
  • gulp:针对grunt的复杂配置,有了更简洁高效的组织方式。
  • nodecast:在pc上运行它,启动移动设备,选中一支持chromecast的应用程序,然后就可以把移动广播上的内容映射到电脑上。等于把电脑当做流媒体来使用。
  • log.io  在浏览器里面可以实时监控项目日志。
  • hyro
  • pdfkit 生成pdf文档。
  • haroopad, linux上的markdown编辑器。
  • noduinoWeb,硬件黑客希望通过noduinoWeb页面就能控制他们的开源硬件noduino,从而将软件和硬件很好的结合起来。
  • Filsh
  • Forever
  • NodeOS 基于nodejs开发的友好的操作系统。
  • Imdex

4、通过4个网站关注nodejs

  1. 官网:https://nodejs.org/en/ 看看版本升级,新特性的加入,重要bug的修复,包括最新的API变化,发展历史。
  2. npmjs模块社区 :https://www.npmjs.com/     开发新项目,编写新模块时,搜索一下相关模块,看看源代码,看看别人代码是如果组织的,解决项目中的问题,省时省力。
  3. github代码托管平台:https://github.com/ 在这里有大量和nodejs有关的代码,阅读源码是一种很快的提供学习速度的方法,fork或者follow nodejs代码,看到它的变化和社区的变化。
  4. stackoverflow技术问答社区:http://stackoverflow.com/   环境配置出了问题,跑服务的时候报了异常 基本都能解决。

5、nodejs版本

稳定版本有bug修复,非稳定版本中API的修改。

6、nodejs模块与commonjs规范

nodejs中不需要有命名空间,不用担心变量污染和方法定义隔离。

每个模块中有三个部分:模块的定义,模块的标识,模块的引用。比如Nodejs/Couchdb都是实现了CommonJs规范,并反馈推动CommonJs。

命名空间:jquery

CommonJs规范:包括了模块,包,二进制,控制台编码,套接字,单元测试等来约定JavaScript应该怎么去组织,怎么去编写。

7、Node.js 入门相关资料

汇智网 Node.js 课程

快速搭建 Node.js 开发环境以及加速 npm

http://fengmk2.com/blog/2014/03/node-env-and-faster-npm.html

Node.js 包教不包会

https://github.com/alsotang/node-lessons

最快的 js 编写方式

https://github.com/alsotang/fast-js

七天学会NodeJS

https://github.com/nqdeng/7-days-nodejs

Node入门-一本全面的Node.js教程

http://www.nodebeginner.org/index-zh-cn.html

Node.js 资源

node weekly

http://nodeweekly.com/issues

node123-node.js中文资料导航

https://github.com/youyudehexie/node123

A curated list of delightful Node.js packages and resources

https://github.com/sindresorhus/awesome-nodejs

Node.js Books

https://github.com/pana/node-books

Node.js 名人

名人堂

https://github.com/cnodejs/nodeclub/wiki/%E5%90%8D%E4%BA%BA%E5%A0%82

Node.js 服务器

新手搭建 Node.js 服务器,推荐使用无需备案的 Linode(https://www.linode.com)DigitalOcean(https://www.digitalocean.com/)

nodejs菜鸟教程

http://www.runoob.com/nodejs/nodejs-tutorial.html

nodejs API文档

http://nodejs.cn/api/

英文api文档

https://nodejs.org/api/

本文作者starof,因知识本身在变化,作者也在不断学习成长,文章内容也不定时更新,为避免误导读者,方便追根溯源,请诸位转载注明出处:http://www.cnblogs.com/starof/p/4973500.html有问题欢迎与我讨论,共同进步。

node.js认识及学习资料的更多相关文章

  1. Node.js Express 框架学习

    转载:http://JavaScript.ruanyifeng.com/nodejs/express.html#toc0 感觉很牛的样子,不过觉得对初学者没太大用,里面很多例子用的api都没有详细的说 ...

  2. Node.js系列基础学习-----回调函数,异步

    Node.js基础学习 Node.js回调函数 Node.js异步编程的直接体现就是回调,异步编程依托回调来实现,但不是异步.回调函数在完成任务后就会被调用,Node有很多的回调函数,其所有的API都 ...

  3. Node.js系列基础学习----安装,实现Hello World, REPL

    Node.js基础学习 简介 简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.Node.js是一 ...

  4. Node.js实战项目学习系列(1) 初识Node.js

    前言 一直想好好学习node.js都是半途而废的状态,这次沉下心来,想好好的学习下node.js.打算写一个系列的文章大概10几篇文章,会一直以实际案例作为贯穿的学习. 什么是node Node.js ...

  5. Node.js实战项目学习系列(2) 开发环境和调试工具

    前言 上一节让我们对Node.js有一个初步的了解,那么现在可以开始正式学习下Node.js的开发了,但是任何一门语言要设计到开发,就必须先学习开发环境以及调试.本文将主要讲解这些内容. 本文涉及到的 ...

  6. Node.js实战项目学习系列(4) node 对象(global、process进程、debug调试)

    前言 在之前的课程我们学习了Node的模块化规则,接下来我们将学习下 Node的几个新特性:global ,process进程,debug调试 global 跟在浏览器中的window一样都是全局变量 ...

  7. node.js和MongoDB学习网址

    回想我写的node.js和MongoDB的博客,都是菜鸟教程那里的知识,所以我打算不写了,那些都是基础,在项目开发中,我发现单单有那些基础不行,这些基础可以尽快学好,然后学习项目开发过程 下面是两个教 ...

  8. Node.js权威指南学习记录

    学习nodeJS权威指南的学习记录 导航: 1.console模块 2.全局变量 3.Buffer对象 4.事件对象 5.网络请求 6.文件操作对象 一. COMMON.js的学习.(commonJS ...

  9. Node.js Koa框架学习笔记

    Koa 基本介绍 Koa是Node.js中非常出名的一款WEB框架,其特点是短小精悍性能强. 它由Express原版人马打造,同时也是Egg框架的设计蓝图,可以说Koa框架的学习性价比是非常高的. 官 ...

随机推荐

  1. Composer 安装和使用

    1.linux下安装 curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer ...

  2. Java中BIO、NIO、AIO的区别和应用场景

    学习IO,首先要明白四个东西. 1.同步            java自己去处理io. 2.异步          java将io交给操作系统去处理,告诉缓存区大小,处理完成回调. 3.阻塞     ...

  3. C++ 中 #ifndef, #define, #endif 宏定义

    目的:为了保证包含的内容只被程序(include) 和编译了一次.判断预处理器常量是否已被定义. 预编译将所有头文件(#include"XXX.h")用头文件中的内容来替换,头文件 ...

  4. Tomcat 配置目录

    TOMCAT 1.主目录下有bin,conf,lib,logs,temp,webapps,work 1.bin目录主要是用来存放tomcat的命令 2.conf目录主要是用来存放tomcat的一些配置 ...

  5. POJ1258 Agri-Net【最小生成树】

    题意: 有n个农场,已知这n个农场都互相相通,有一定的距离,现在每个农场需要装光纤,问怎么安装光纤能将所有农场都连通起来,并且要使光纤距离最小,输出安装光纤的总距离. 思路: 又是一个最小生成树,因为 ...

  6. P3806 【模板】点分治1(CDQ分治)

    题目链接:https://www.luogu.org/problemnew/show/P3806 题目大意:中文题目 具体思路:直接dfs好像会超时,然后我们就开始想优化的方法,然后就是一个CDQ入门 ...

  7. A - The Water Bowls POJ - 3185 (bfs||高斯消元)

    题目链接:https://vjudge.net/contest/276374#problem/A 题目大意:给你20个杯子,每一次操作,假设当前是对第i个位置进行操作,那么第i个位置,第i+1个位置, ...

  8. android当前网络连接类型判断

    package net.nyist.netState; import android.content.Context; import android.net.ConnectivityManager; ...

  9. xcode查找当前程序的沙盒

    随意在程序中添加一个断点,当程序命中断点的时候,控制台中会出现一个"lldb" 此时在"lldb"后面添加上  po NSHomeDirectory()  回车 ...

  10. Android:(本地、可通信的、前台、远程)Service使用全面介绍

    2.具体使用解析 2.1 本地Service 这是最普通.最常用的后台服务Service. 2.1.1 使用步骤 步骤1:新建子类继承Service类 需重写父类的onCreate().onStart ...