1.3 Node.js在中国的发展
Node.js在初期发展的时候,国内就有大量的开发者开始持续关注了。随着Node.js的不断成熟,很多国内的公司都开始采用这一新技术。2013年、2014年、2015年的JS中国开发者大会都将Node.js作为一个主要的宣讲内容,Node.js也被国内的开发爱好者所追捧。Node.js开发者在国内的数量不断增加,并涌现出很多组织和机构来自发地进行推广和技术分享。
国内的各大视频培训网站上都有Node.js开发的培训教程,各大门户网站也都或多或少地采用了Node.js的开发技术,淘宝、网易、百度等有很多项目运行在Node.js之上。阿里云是在这方面比较靠前的公司,它们的云平台率先支持Node.js的开发。淘宝也为Node.js搭建了国内的NPM镜像网站,方便国内的开发者下载各种开发包。
1.3.1 Node.js中文资源汇总
(1)Node.js官方网站,是Node.js在国内的官方网站,有关于Node.js最新版本的下载和新闻,丰富的文档资料非常值得认真学习,是Node.js开发爱好者不容错过的网站,网址为http://Node.js.cn/。
(2)CNode社区,由一批热爱Node.js技术的工程师发起,已经吸引了互联网各个公司的专业技术人员加入,是目前国内非常具有影响力的Node.js开源技术社区,致力于Node.js的技术研究,并有论坛会定期组织一些技术交流活动,网址为https://cNode.js.org。
(3)Node.js中文网,是一个专业的Node.js中文知识分享社区,致力于普及Node.js知识,分享Node.js研究成果,努力推进Node.js在中国的应用和发展,网站有大量的技术博客和文章,各个级别的开发者都能找到适合自己学习的资料,网址为WWW.Node.js.Net。
(4)淘宝NPM镜像,是一个完整npmjs.org镜像,可以用此代替官方版本,同步频率为每10分钟一次,以保证尽量与官方服务同步,网址为https://npm.taobao.org/。
(5)Node.js & HTML5论坛,也是一个学习Node.js和前端开发技术非常好的网站,每天都有大量原创文章发布,并且技术问题可以很快被回答。当然,如果愿意为其他人解答技术问题或者进行技术分享也是非常欢迎的。其网址为http://forjs.org/。
每年的JS中国开发者大会和各种Node.js分享沙龙也都是很好的学习Node.js开发技术和交流的机会。一个开发者要时刻保持谦虚的心态,并不断学习最新的技术。这对开发者来说是一种基本能力和素养。
1.3.2 Node.js的发展和未来
Node.js虽然在创建之初是为了开发即时通信的Web应用,当然现在的Node.js已绝不只是一套简单的Web堆栈——作为一项技术,它在多个层面焕发出勃勃生机,价值已经远远超出了常见Web服务器的范畴。
例如,一款由Jacob Groundwater打造的项目叫NodeOS,其创始人希望围绕Linux核心建立起一套新型环境。其中,Node.js作为“shell”,而Node的NPM则被用于系统包管理器。到目前为止,NodeOS的首个版本已经创建完成。Node.js还被用来作为硬件控制的工具替代C/C++,Noduino允许大家经由WebSocket或者串连接实现Arduino访问。该项目虽尚处于起步阶段,但驱动主板上的LED模块、捕捉来自Arduino的事件(例如按下按钮)等常见功能都已可以正常支持,以后就可以通过网页直接控制Arduino硬件和其他物联网设备了。
2016年Node.js发布了两个重量级的版本v4.4.0 LTS(长期支持版本)和v5.9.0 Stable(稳定版本),并且成立了Node.js基金会,能够让Node.js在未来有更好的开源社区支持。Node.js基金会的创始成员包括Joyent、IBM、Paypal、微软、Fidelity和Linux基金会。Node.js的core(核心)已经非常稳定并逐步被广大开发者所认可,进行大规模使用。著名的Node.js包管理工具NPM在2014年成为软件开发世界中包管理工具的龙头老大,现在NPM包含的模块数是Java以及Ruby的包管理工具模块数目的两倍!图1.4反映了NPM包管理工具的增长情况。
图1.4 NPM包管理工具的增长情况
提示
数据来源http://www.modulecounts.com/。
2017年上半年Node.js和NPM的普及率进一步提升。大公司对Node.js的应用持续提升,并推出更多对企业级友好功能的长期计划,可能预示着Node.js在企业中会持续增长,替换一部分在企业中像Java和.NET这样的典型解决方案。Node.js诞生于2009年,其年龄远不如Python、Ruby、PHP等老牌开发语言,但是它成为有史以来发展最快的开发工具。可以预见,在未来的几年Node.js技术会不断发展起来,成为Web开发的核心技术,并从现有的Java、PHP等语言中争夺到更多的份额。