作者 BYVoid 想必是很多 OIer 熟知的神牛了。作为中学学弟(当然并没有实际见过几次面),我是很仰慕他的。作为 NOI 金牌获得者,他不仅在信息学竞赛上颇有造诣,也涉猎于编程开发,同时在汉语言文字上研究颇深。高中时期他就为学校用 PHP 编写了一个功能强大的在线评测系统(Online Judge)——CmYkRgB123 Online Grading System (COGS),其即时评测并显示各测试点结果的 NOI 系列式评测方式深受同学们喜爱,曾经在外网开放过也获得相当好评。此后更以 MVC 框架写出了新的 Vakuum 在线评测系统。他还开发了高质量的繁简转换工具 OpenCC ,解决了长期困扰中文领域的汉字转换问题,并参与了 Linux 下 iBus 输入法项目,还在汉典网站上做了大量工作。近期他又上线了韵典网,为查询检索古代音韵提供了方便。等等如此,不一而足。
说到 Node.js ,我们不得不谈到 Google Chrome 。作为忠实的 Google 粉丝,我从其测试版就开始使用,甚至在没有 Linux 版本时也在用 wine 模拟器使用,原因只有一个——快。它如此快速,这是因为使用了 V8 JavaScript 引擎。自此,基于解释的语言开始摆脱了龟速的宿命,并由此发展出了本书的主角 Node.js 。当然它是基于 JavaScript 的(不是 Java!),作者贴心地为不熟悉 JavaScript 的读者专门编写了一章附录以熟悉 JS 。
学习一门编程语言需要首先熟悉其编程环境和编译器。作者在书中为 Windows 用户、Linux 用户和 Mac OS X 用户详细描述了安装配置过程,并给出了常见问题的解决方案。书中还介绍了包管理器(类似于 Ubuntu 的软件中心、TeXlive 的 tlmgr 等) npm ,描述了包的多版本控制,并介绍了常用的模块和包的用法。书中还介绍了 Node.js 的调试方法以及其在 Eclipse 环境中的配置使用。
与一般编程语言不同,Node.js 是异步 I/O 的,故此初入门时很难以理解。作者用直截了当的实例和准确有力的语言解释了异步式 I/O 和事件式编程的相关概念。书中详细讲述了 Node.js 的对象的变量概念,介绍了常用工具 util 、事件驱动 events 、文件系统 fs 和 http 服务器模块。作者更以一个微博网站的实例,从零开始一步一步教会读者网站开发的各种方法步骤,涉及到工程规划、模型-视图-控制器开发模式、基于 Bootstrap 的网页前端设计、基于 MongoDB 的数据库操作、Session 和 Cookies 的控制访问、前后端交互、日志记录等各种网站开发中需要掌握的知识和方法。
贴心的附录介绍了 JavaScript 的高级特性,包括作用域、闭包、对象等知识,为函数式编程铺垫道路。还给出了一些约定俗成的编程规范,从缩进到变量函数命名都给出了十分有用的建议。书末的索引更是方便了专业名词的查找。每章结束都会给出参考文献,不仅方便读者参阅,也体现了作者严谨认真的写作态度。
总的来说,作为国内第一本 Node.js 相关的书籍,此书虽为入门,但全面系统,开辟了一条正确清晰的道路。如果你想学习这样一个崭新先进的网页开发语言,请把《Node.js 开发指南》买回家吧,闲时可以打发时间,用时可以速查速记,学时可以轻松掌握。或许有一天会出电子版,但一本书拿在手里的感觉是电子版无论如何比不得上的。有什么问题可以到 Node.js 中文社区 http://cnodejs.org/ 提问,通过社交网络的力量充实自己。
同时也希望作者能乘风破万里浪,以后更有佳作出。
本文选自豆瓣书评,作者:王者自由
地址:
http://book.douban.com/review/5529655/
分享到:
相关推荐
《Node.js开发指南》是一本面向初学者的Node.js教程,旨在帮助读者快速掌握Node.js的使用,尤其适合对Web后端开发感兴趣并且希望通过Node.js技术进行开发的读者。本书内容丰富,涵盖了从Node.js的基本概念到实际项目...
第3章 Node.js快速入门 23 3.1 开始用 Node.js编程 24 3.1.1 Hello World 24 3.1.2 Node.js命令行工具 25 3.1.3 建立HTTP服务器 26 3.2 异步式I/O与事件式编程 29 3.2.1 阻塞与线程 29 3.2.2 ...
《Node入门-一本全面的Node.js教程》是由Manuel Kiessling编写的一本详尽的Node.js学习指南。本书旨在帮助那些对JavaScript有一定了解但对Node.js完全陌生的开发者快速上手。作者假定了读者对诸如Ruby、Python、PHP...
Node.js 具有深厚的开源血统,它诞生于托管了许多优秀开源项目的网站—— github。和大多数开源软件一样,它由一个黑客发起,然后吸引了一小拨爱好者参与贡献代码。一开始它默默无闻,靠口口相传扩散,直到某一天被...
《实用Node.js:构建现实世界的可扩展Web应用程序》第二版是一本全面介绍Node.js及其在构建高性能、可扩展Web应用程序方面的实践指南。本书由Azat Mardan撰写,他是一位在软件开发领域拥有丰富经验的技术专家,同时...
这两本书籍——《NodeJS开发指南》和《Node入门-一本全面的Node》都是为初学者准备的,旨在帮助读者快速掌握Node.js的基础和进阶知识。 《NodeJS开发指南》这本书可能会涵盖以下内容: 1. **Node.js基础**:介绍...
#### 二、Node.js入门书籍推荐——《Node.js实战》 这本书是由Mike Cantelon、Marc Harter、T.J. Holowaychuk和Nathan Rajlich合著的,是学习Node.js非常好的入门书籍之一。书中不仅涵盖了Node.js的基础知识,还...
《Node.js The Right Way》是一本针对现代服务器端 JavaScript 编程的指南书。本书由 Jim R. Wilson 撰写,并由 The Pragmatic Bookshelf 出版。这本书不仅仅局限于介绍基本的 JavaScript 和 Node.js 语法,更重要的...
- **Node.js的吸引力**:Node.js的出现给了开发者一个新的选择——使用JavaScript来进行后端开发,这对于那些原本专注于前端JavaScript的开发者来说尤其具有吸引力。 #### 本书结构 - **目标应用概述**:本书的...
- **JavaScript 基础要求**:虽然 Node.js 是用 JavaScript 编写的,但并不意味着你需要精通所有 JavaScript 技术才能开始使用 Node.js。了解基本语法即可上手。 - **Node.js 与浏览器的区别**:介绍了 Node.js 和...
《JavaScript权威指南》第六版不仅适合初学者作为入门教程,也适用于有一定经验的开发者用来深入了解JavaScript的高级特性和最佳实践。通过系统地学习本书中的内容,读者可以全面掌握JavaScript的各项技能,从而更好...
通过以上知识点的介绍,《JavaScript入门指南》为初学者提供了全面而系统的JavaScript学习路径。无论是对于想要从事前端开发的新手,还是希望深入了解JavaScript特性的现有开发者来说,这本书都是一个宝贵的资源。
在JTS的生态系统中,还存在另一个重要的项目——JSTS,它是一个JavaScript的端口,允许在浏览器和服务器上使用与JTS相同API的空间分析功能。虽然JTS和JSTS共享类似的API和功能,但它们针对的平台不同,前者是Java...
一、JavaScript的扩展——Node.js JavaScript原本是用于浏览器端的脚本语言,但Node.js的出现改变了这一局面。通过Node.js,JavaScript得以在服务器端大展拳脚,实现了全平台的网络应用开发。它的非阻塞I/O模型和...
《Node.js深度探索——基于"node-course"的学习指南》 在IT行业中,JavaScript以其灵活性和广泛的应用场景,已经成为Web开发的主流语言之一。而Node.js作为JavaScript在服务器端的运行环境,更是为开发者提供了全新...
《Node.js学习指南——深入TypeScript实践》 Node.js,作为一个基于Chrome V8引擎的JavaScript运行环境,使得JavaScript能够在服务器端运行,打破了它原本仅限于浏览器的局限性。随着Node.js社区的发展,TypeScript...
《Heroku闪电设计系统——基于Node.js的UI框架探索》 在现代Web开发中,一套良好的设计系统能够显著提升开发效率,确保应用的一致性和可维护性。"node-lightning-design-system"是专为Heroku平台构建的一个强大的、...
本文将详细介绍几款主流的后端开发框架——Express.js、Django、Spring Boot、Flask 和 Laravel,涵盖它们的特点、应用场景及推荐的学习资源,为开发者提供宝贵的参考资料。 #### 二、Express.js (Node.js) **简介...
React入门教程:项目搭建与环境配置 React是Facebook推出的一款流行的JavaScript前端框架,它将用户界面拆分成可重用的组件,便于维护和扩展。React的核心理念是利用虚拟DOM(Document Object Model)来提高性能,...