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. C语言指针详解(经典,非常详细)

    前言:复杂类型说明 要了解指针,多多少少会出现一些比较复杂的类型,所以我先介绍一下如何完全理解一个复杂类型,要理解复杂类型其实很简单,一个类型里会出现很多运算符,他们也像普通的表达式一样,有优先级,其 ...

  2. 【转载】Etcd+Confd实现Nginx配置文件自动管理

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://lizhenliang.blog.51cto.com/7876557/191015 ...

  3. java中数据字典的使用:

    数据字典:数据库中一个字段下存在多个值的情况(type:1:肉类  2:素菜类  3:服装类): 分析: 1:这种情况下往往需要新建一张表来对应type下面的字段,通常以---表名--字段名---字段 ...

  4. FastReport使用List的方法

    public class User { string username; string password; public User(string username, string password) ...

  5. tarjan,树剖,倍增求lca

    1.tarjan求lca 思想: void tarjan(int u,int f){ for(int i=---){//枚举边 if(v==f) continue; dfs(v); //继续搜 uni ...

  6. luogu 4401 矿工配餐 多维dp

    五维dp,记忆化搜索会MLE超内存,所以用滚动数组,十分经典 五维dp #include <bits/stdc++.h> using namespace std; ; ][][][],la ...

  7. Hadop 基础

    HDFS 体系结构 mapreduce 体系结构和算法 haddop 集群 zookeeper 操作:HBase 体系结构Hive /Sqoop 体系结构和基本操作: mapreduce 逻辑处理数据 ...

  8. springboot项目使用idea开启远程调试

    远程调试是调试服务器的有效手段,远程服务器运行的应用可以在本地代码中打断点调试,能让开发人员准确定位服务器上的问题. 一.开启远程调试前提:本地代码与服务器代码一致, 二.开启远程调试步骤 1.开发工 ...

  9. POJ1113 Wall【凸包】

    题意: 求把城堡围起来需要的最小墙壁周长. 思路: 围墙周长为=n条平行于凸包的线段+n条圆弧的长度=凸包周长+围墙离城堡距离L为半径的圆周长. 代码: ...还是看大佬写的,自己做个记录方便日后复习 ...

  10. 【BUG】websphere找不到类或jar包冲突

    来自:http://liuwei1578.blog.163.com/blog/static/49580364200991572642653/ Jar包冲突问题是在大型Java软件开发中经常遇到的问题, ...