##前言javascript
前言内容很少,开篇总述了一下。做者把Node.js比喻成“游戏的改变者”(game-changer),改变了进十年来的web开发模式。这话说的有点儿大,更像是为了吸引读者看下去。我以为Node.js的出现的确改变了不少东西,让开发变得更有趣,让javascript有了更多的想象空间,不过距离改变世界,应该还有不少路要走,不如说Node.js给咱们带来了一个方向,这个方向就是做者在下面阐述的三点:java
###第1、javascript的革命git
Node.js让javascript向后端迈进,并且这一步迈的还比较成功,面向对象和函数式的混合编程在后端表现不赖,还带来了不少新鲜点,这里提到了两点:单语言应用和先后端共享代码。程序员
在Node.js出现以前,一个程序员想凭借一种语言先后通吃是不行的,即使是王者般的java亦或者宗师般的C++,这就给一个更偏向于作应用的程序员很大的负担,而Node.js的出现,给了你们实现了这个幻想,者也是我最初决定投身这个领域的一个源动力。要知道有些程序员脑子里有极客思惟,喜欢单打独斗,若是能够利用更少的工做量创造出更强大的东西,这些人会很高兴。凭借着javascript的大量程序员基础,这些人很快的接受js在后端的应用。固然,js的一些独有特色能够被叫作优势,在某些时候,也会变成缺点。说的哲学一点,咱们不会造出来万能的东西,Node.js更不是。github
###第2、单线程与异步结构web
做者讲到,这两个特色带来了性能与可扩展性的同时,还带来了对并发和并行开发方法的改变。队列代替了互斥锁,回调和事件代替了多线程,因果关系(causality)代替了同步。npm
对于js的这种异步模式,褒贬不一,一些人以为这带来了性能的提升,一些人以为代码难以控制,是啊,世间安得双全法,因此这些东西还要慢慢的探究才能有答案,或者是更好的解决方法。编程
###第3、npmjson
这点做者和我想到一起去了,npm也是我爱上Node.js的很重要的一个缘由,他也将这个东西认为是最重要的一个方面。npm,一个包管理器,他拥有着庞大而快速增加的模块库。它的文化是简洁、实用、极端模块化,事实也是这样的。后端
我想每个用过npm的人都会爱上它,它给我带来了一种小时候拼积木的感受。它的项目目录组织方式颇有调理,让你感受项目就是项目,不存在秘密,是里面有不少小模块的项目,而这些小模块都颇有条理的在那里,也许模块里还有模块,不过仍是颇有调理的在它改在的位置。还有package.json这个文件的出现,是一份很明确的说明书,即便你拿到的是别人的项目,看着这份说明书,也能组装起来。
###关于做者
上面那位就是做者,叫作Mario Casciaro,之前在IBM,如今在一家叫作d4h的公司(我也没去深究这个公司是干啥的~)
他的github: https://github.com/mariocasciaro (他最著名的项目叫作scatter,没研究过) 他的twitter: https://twitter.com/mariocasciaro 他的主页:http://www.mariocasciaro.me/ (主页里没啥东西)s