Web前端技术丛书:新时期的Node.js入门

Web前端技术丛书:新时期的Node.js入门 下载 mobi epub pdf 电子书 2024


简体网页||繁体网页
李锴 著

下载链接在页面底部
点击这里下载
    


想要找书就要到 新城书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

发表于2024-11-30

图书介绍


出版社: 清华大学出版社
ISBN:9787302487807
版次:1
商品编码:12271635
包装:平装
开本:16开
出版时间:2017-12-01
用纸:胶版纸
页数:279
字数:474000
正文语种:中文


类似图书 点击查看全场最低价

相关图书





图书描述

产品特色

编辑推荐

适读人群 :适合未接触过Node的读者以及在校的学生阅读,也适合作为高等院校和培训学校相关专业的师生教学参考

从零开始学习开发完整可用的项目,掌握语言细节并获得实际经验
以实际应用为背景,阐述Node.js在实际项目中的定位和潜在的陷阱
适合没有Node.js经验的读者,旨在快速上手到独立开发小型应用

内容简介

Node.js是一门开源的、为Web而生的语言,具有高并发、异步等特点,并且拥有一个十分活跃的开发者社区。与Ruby、Python等语言相比,Node.js更年轻、更易于没有经验的人上手使用,因此很快在世界各地的开发者中收获了一大批拥趸。在国内,Node.js在许多企业中获得了广泛应用,并取得了一系列的应用成果。然而,随着技术的不断更新、ECMAScript2015等新标准纷纷确定,现有的中文书籍就变得有些过时。本书立足于新的技术潮流,介绍了一系列全新的语言特性和标准,以便让读者在学习基础知识的同时紧跟新技术的发展。
《新时期的Node.js入门 Web前端技术丛书》分为8章6个附录,讲解了Node.js的各种基础特性,使读者快速入门,同时结合语言*新的发展趋势,让读者能够紧跟技术潮流。本书围绕Node.js在Web站点开发和爬虫系统中的应用展开,《新时期的Node.js入门 Web前端技术丛书》可用于Node.js入门,适合未接触过Node的读者以及在校的学生阅读,也适合作为高等院校和培训学校相关专业的师生教学参考。

作者简介

李锴,毕业于厦门大学软件学院,目前就职于花旗集团,从事Web前端开发工作。

目录

第1章 基础知识
1.1 Node是什么
1.1.1 Node与JavaScript
1.1.2 runtime和VM
1.2 Node的内部机制
1.2.1 何为回调
1.2.2 同步/异步和阻塞/非阻塞
1.2.3 单线程和多线程
1.2.4 并行和并发
1.3 事件循环(Event loop)
1.3.1 事件与循环
1.3.2 Node中的事件循环
1.3.3 process.nextTick
1.4 总结
1.5 参考资源

第2章 常用模块
2.1 Module
2.1.1 JavaScript的模块规范
2.1.2 require及其运行机制
2.1.3 require的隐患
2.1.4 模块化与作用域
2.2 Buffer
2.2.1 Buffer的构建与转换
2.2.2 Buffer的拼接
2.3 File System
2.4 HTTP服务
2.4.1 创建HTTP 服务器
2.4.2 处理HTTP请求
2.4.3 Response对象
2.4.4 上传数据
2.4.5 HTTP客户端服务
2.4.6 创建代理服务器
2.5 TCP服务
2.5.1 TCP和Socket
2.5.2 创建TCP服务器
2.6 更安全的传输方式——SSL
2.6.1 什么是SSL
2.6.2 SSL原理
2.6.3 对称加密与非对称加密
2.6.4 关于CA
2.6.5 创建HTTPS服务
2.7 WebSocket
2.7.1 保持通话
2.7.2 为什么要有WebSocket
2.7.3 WebSocket与Node
2.8 Stream
2.8.1 Stream 的种类
2.8.2 ReadLine
2.8.3 自定义Stream
2.9 Events
2.9.1 事件和监听器
2.9.2 处理error事件
2.9.3 继承Events模块
2.10 多进程服务
2.10.1 child_process模块
2.10.2 spawn
2.10.3 fork
2.10.4 exec和execFile
2.10.5 各方法之间的比较
……

第3章 用ES6来书写Node
第4章 书写异步代码
第5章 使用Koa2构建Web站点
第6章 爬虫系统的开发
第7章 测试与调试
第8章 Node中的错误处理
附录A 进程、线程、协程
附录B Lua语言简介
附录C 从零开发一个Node Web框架
附录D MongoDB和Redis简介
附录E 使用Docker来实现虚拟化
附录F npm与包管理

前言/序言

前 言

国内Node的开发者很多都读过朴灵写的《深入浅出Node.js》(以下简称《深入浅出》)一书,笔者也不例外,笔者在2014年初第一次接触Node,最初读的几本书就包含了这本《深入浅出》,该书出版于2013年12月,距今已经差不多有4年的时间了。
对于一门高速发展的语言来说,4年算得上很长的时间了。4年前Node的版本号还在0.10.x,而时至今日,已经迎来v8.0.0的最新版本了。
Node项目始于2009年,2013年恰好处在当今(2017年)和2009年的中间节点,一门语言在诞生之初的发展总是最快的,到了现在,Node逐渐地变得稳定下来。
但即使这样,这4年中也发生了不少大事件:Node从分裂又走向了统一,ES2015标准的推出等。
那么4年后的今天,Node有了哪些改变呢?
一方面,基本的概念几乎没有改变,底层的libuv和事件循环还是原来的样子,主要模块的API也没什么大的变化。
另一方面,变动最多的大概是语法了,ECMAScript沉寂数年之后,终于推出了重量级的新版本ES2015,并且计划每年发布一个新版本。
换个角度来说,如果现在有一份使用Node最新版本写的代码,拿给还在使用0.10的开发者看,最大可能是对里面各种奇怪的关键字和语法感到疑惑。这本身就说明了Node发生了如此大的变动。
在笔者看来,Node的发展进入了平台期,这意味着在一段时间内,Node将维持现有的模样,或许会增加或修改一些语法,底层的V8也可能做一些大幅度的改进,但代码的基本结构不会有大的变动。
Node的发展大致分为几个阶段:
? 第一个阶段:从诞生到分裂,大致5年的时间。
? 第二个阶段:从与io.js合并到ES2015标准正式落地,只有不到半年的时间。
? 第三个阶段:从v6.0.0全面支持ES2015至今,Node较大的更新都是围绕着新的ECMA201x标准展开的。
所有的新与旧都是相对的,虽然在目前来看,本书记述的内容还算是比较新的,无论是ES201x的使用,还是Koa2框架的介绍,都属于同类书中较少涉及的领域,但要是再过几年的时间,本书的内容也会变得过时。

本书定位
关于本书的定位,笔者着实费了很大的脑筋,出版社老师建议我写一本入门书,当我知道的时候其实内心是很犹豫的:一方面,Node的入门书籍市面上已经很多了,随便翻开一本,不论是里面的内容还是章节编排都大同小异;另一方面,入门书反而是最难写出水平的,因为作者们大多已经有了相关领域的编程经验,那样就很难站在入门者的角度来进行写作。
经过考虑之后,我决定写一本《新时期的Node.js入门》,一方面能够让本书立足于最新的技术潮流,另一方面对于ES201X又或者是Koa2来说,它们诞生的时间不长,笔者也不敢说自己对这些新的技术和标准已经有了丰富的编程经验(之前使用最多的还是ES5语法和Express),正好也能站在一个入门者的角度来审视这些新技术。
本书的定位是一本新时期的Node入门书,关于“新”在哪里?一方面是内容的“新”,新的标准已经出现,怎么能够停滞不前!ES2015带来了不少新的语言特性,它让之前需要花不少工夫才能解决的问题变得轻而易举。另一方面,本书不想重复介绍同类书籍已经反复介绍的内容,例如Express框架的使用,在市面上翻开任意一本Node的入门书籍,都会不厌其烦地向读者教授Express的各种用法,作为代替,本书推荐了Koa这一框架作为入门介绍,它更贴近新标准。
除了“如何使用”之外,本书还会兼顾Node底层的原理,读者大可在第一遍时跳过这些内容,当对Node有了一个大概的掌握后,会自然而然地想去了解其背后的原理。
关于本书内容
本书不是一本ES2015或者更新标准的说明书,也不想让内容停留在介绍各种模块的API罗列上。
第1章讲解Node的运行机制,主要是底层的一些实现和通用的原理,可能需要一些操作系统的知识。
第2章介绍了通用的模块和使用方法,是真正的入门章节。
第3章专注于新的ECMAScript标准以及Node对其的支持。
第4章主要介绍如何更好地组织和书写异步代码,采用循序渐进的方式介绍了各种解决方案的优劣之处。
第5章使用Koa2框架来开发一个Web应用,涉及Web开发的各方面,例如路由处理、Session、页面渲染、数据存储等。
第6章介绍了如何使用Node来开发一个爬虫系统。
第7章介绍常用的测试方法以及调试Node应用的技巧。
第8章介绍了Node中错误处理的相关知识。
附录A介绍进程、线程和协程的概念,属于拓展的背景知识。
附录B Lua语言简介,Lua几乎可以认为是某些概念的最佳实现,例如协程。
附录C从零开发了一个玩具式的Web框架,可以认为是对Koa的一个简单模仿,对于初学者来说,这应该是一个理解Node Web原理的好方法。
附录D MongoDB和Redis简介。
附录E使用Docker来实现虚拟化。
附录F介绍了使用npm来进行包管理的一些小技巧。
本书的每个章节都是环环相扣的,每一章讲述的内容都多多少少地被其他章节使用到,建议读者循序渐进地阅读(第1章可以放到最后)。
循序渐进不仅仅体现在章节安排上,在系统的实现上也是如此,以第6章爬虫的开发为例,从糟糕的代码设计开始,一步步地进行改进,最后达到比较完善的状态。
那些糟糕的代码大部分都是在笔者还是初学者时写的,笔者很庆幸自己还能留着这些代码,它们不仅见证了笔者本人对Node的认识过程,也见证了Node的发展历史。
关于本书中的代码
所有的源代码都可以在https://github.com/Yuki-Minakami/BookExample上找到,它们都经过了充分的测试。
本书中,除了Node编写的示例代码外,还会穿插一些其他语言(例如Java)的代码,这是为了通过和其他语言的对比让读者更好地理解Node中的特性。
笔者使用的电脑环境为 Mac OSX 10.11,本书中出现的代码绝大多数都是平台无关的,有一些代码在Windows环境下运行会出现问题或者不能在Windows下运行,本书也做了相应的标注和提示。读者在阅读本书的时候,也建议打开自己的电脑,第一时间把代码写在文本编辑器或者IDE中。
本书面向的读者
就像标题所说的,本书是一本入门书,适合在校的学生以及未接触过Node的读者阅读。如果读者有其他语言(例如Java)的编程经验,那么读起来可能会轻松一些,如果有使用JavaScript的经验就再好不过了。
如何学习Node
学习一门编程语言的最好办法,就是将其运用在实际的项目当中,但对于大多数开发者,尤其是自己目前的工作与Node无关时,想找到合适的项目并不容易,大多数人做的还只是非常简单的个人项目,例如一个TODO List,复杂一点的比如一个博客网站,这些都算不上什么复杂的项目,从里面得到的经验也少得可怜。
那些能处理高并发、拥有各种多进程架构的项目不是每个人都有机会做,那么到哪里去找有一些难度的Node项目练手呢?
那就只能把目光投向GitHub了,使用GitHub的搜索功能来寻找一些企业级的Node应用,如果感兴趣的话就试着提交代码,为开源项目贡献代码通常是一个不错的加分项。
虽然有点王婆卖瓜,但笔者认为本书第7章的项目还是有一定的复杂度的,针对多进程和分布式的扩展还有很大的想象空间,读者可以借助GitHub参与到共同开发上来。
名称约定
为了便于区分,JavaScript在本书中特指对ECMAScript的实现,除非特别注明,那么它代表了ES5的标准,并且同时适用于浏览器JavaScript和Node。当有些代码和概念特指在浏览器端运行的JavaScript时,我们一律使用“前端JavaScript”来称呼。
当使用ECMAScript这一称谓(例如ES2017)时,大多数是谈论标准内容,不涉及具体的实现。
纠错
笔者毕竟能力有限,在出版本书的时候可能有没有注意到的错误,例如代码运行出错、概念上的不正确等,如果读者有相关的发现,请以“××章××小结代码/内容错误”为标题发邮件至笔者的邮箱。
致谢
首先要特别感谢的是出版社的夏毓彦编辑,是他让我有机会梳理迄今为止对Node的心得,然后得以出版。
另一方面还要感谢我的母亲,当我第一次将自己准备写书的想法告诉她时,不出意外地,她开始怀疑起我的水平来,“就你还想出书?可不要误人子弟啊”。
正是这句话,不断提醒我对内容进行反复修改和验证。因为我意识到这和平时的博客文章不同,是更加严肃,并且对错误的容忍更低的作品。虽然她没有编程相关的经验,但我还是准备将第一本样书送给她,希望她能够阅读。
著者
2017年12月


Web前端技术丛书:新时期的Node.js入门 下载 mobi epub pdf txt 电子书 格式

Web前端技术丛书:新时期的Node.js入门 mobi 下载 pdf 下载 pub 下载 txt 电子书 下载 2024

Web前端技术丛书:新时期的Node.js入门 下载 mobi pdf epub txt 电子书 格式 2024

Web前端技术丛书:新时期的Node.js入门 下载 mobi epub pdf 电子书
想要找书就要到 新城书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

用户评价

评分

好书,挺好的,。非常好,送货速度很快

评分

还没看,先放着吧

评分

工作需要,必须学习!

评分

很好的书,值得研究研究。

评分

理论基础

评分

书封装的不错,内容还没看。

评分

不错

评分

还是需要先有js基础才能学node的,并不是0基础书籍

评分

很好的书,值得研究研究。

类似图书 点击查看全场最低价

Web前端技术丛书:新时期的Node.js入门 mobi epub pdf txt 电子书 格式下载 2024


分享链接




相关图书


本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

友情链接

© 2024 book.cndgn.com All Rights Reserved. 新城书站 版权所有