书馨卡帮你省薪 2024个人购书报告 2024中图网年度报告
欢迎光临中图网 请 | 注册
> >>
Node.js项目实践构建可扩展的Web应用

Node.js项目实践构建可扩展的Web应用

作者:马尔丹
出版社:电子工业出版社出版时间:2015-06-01
开本: 16开 页数: 276
中 图 价:¥29.7(4.3折) 定价  ¥69.0 登录后可看到会员价
加入购物车 收藏
运费6元,满39元免运费
?新疆、西藏除外
温馨提示:5折以下图书主要为出版社尾货,大部分为全新(有塑封/无塑封),个别图书品相8-9成新、切口
有划线标记、光盘等附件不全详细品相说明>>
本类五星书更多>

Node.js项目实践构建可扩展的Web应用 版权信息

  • ISBN:9787121259036
  • 条形码:9787121259036 ; 978-7-121-25903-6
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 所属分类:>>

Node.js项目实践构建可扩展的Web应用 本书特色

《node.js项目实践:构建可扩展的web应用》用专业的讲解方式,带领读者从“hello world”示例开始,一步步将其构建成有实际用途的node.js应用。《node.js项目实践:构建可扩展的web应用》涉及许多组件的使用,比如安全、部署上线、组织代码、数据库驱动和模板引擎等,从中可使读者接触到很多经过历年实践所得出的广受欢迎的模块库,它们可以大大提高开发人员的代码质量和开发效率。

Node.js项目实践构建可扩展的Web应用 内容简介

√ 全球获好评*多的node书籍,原著获数百人五星推荐 适读人群 :本书适合熟悉node.js基础,想在专业环境中构建应用程序的开发人员 √ 国内**团队奇舞团精选领域**书,倾情翻译 √ 迈向产品级开发的实战入门,理解更深,技能翻番 √ 面向项目,涵盖第三方模块和组合技术,实战案例丰富  《node.js项目实践:构建可扩展的web应用》会指导你逐步学习如何使用专业的开发工具来构建一系列基于node.js的web应用。node.js是一个用于创建web服务的平台,以创新设计和高效著称。但仅有node.js核心本身并不能够解决所有问题!在现代web开发中,通常需要将许多不同的组件组合在一起——路由、数据库驱动、orm、会话管理、oauth、html模板引擎、css编译器等。如果你已经对node.js的基础知识有了一定的了解,那现在就是我们去探索它巨大的模块包生态系统并用来构建产品的时候了。作为一个web开发者,你将通过本书了解到各种各样的标准和框架集合是如何完美地通过node.js结合到一起的。  《node.js项目实践:构建可扩展的web应用》会从javascript与node.js的基础概念讲起,随后是必要模块的安装和详细介绍,再循序渐进地讲解如何编写和部署web应用项目等你想了解的一切相关知识。我们会讨论各种库的引用,包括但不限于express.js 4和hapi.js框架,操作mongodb数据库的mongoskin和mongoose orm,jade和handlebars模板引擎,授权用户认证的oauth模块和集成oauth的everyauth库,mocha单元测试框架和expect tdd/bdd语法,基于websocket协议提供实时通信的socket.io和derbyjs库。  能够动起手来跟着本书一起写代码的读者,可以接触到一个由众多小例子迭代开发形成的博客项目,你会从零开始构建数据库脚本,写rest api和添加单元测试等进行全栈式的应用开发。本书还会介绍如何使用git管理你的代码并将它们部署到heroku平台和amazon web service云服务平台上去。我们还利用nginx、varnish缓存、upstart脚本、init.d脚本,还有forever模块等技术保证了应用程序的稳定运行。*后还会教你如何写你自己的node.js模块包和在npm发布它们。 通过《node.js项目实践:构建可扩展的web应用》,你将学会:   使用express.js 4、mongodb和jade模板引擎构建web应用   利用mongodb控制台操作数据   通过mocha、expect和travisci为node.js web服务做测试用例    基于token和session的身份验证   使用everyauth库实现第三方(twitter)oauth授权认证   利用redis、node.js domains模块,以及cluster库等技巧和*佳实践来准备生产环境的代码   在amazon web services(aws)云服务上部署node.js应用时需要安装的组件

Node.js项目实践构建可扩展的Web应用 目录

1 章 安装node.js 及相关要点 .............. 1

安装node.js npm................................. 1

一键安装 ................................................ 2

通过homebrew macports 安装 ........ 3

通过tar 文件安装 .................................. 4

无须sudo 授权进行安装 ........................ 4

通过git repo 进行安装 ......................... 5

通过nave 进行多版本安装 ................... 5

通过nvm 进行多版本安装...................6

其他的多版本系统 .................................. 6

检查安装 ................................................ 7

node.js 控制台(repl ....................... 7

加载node.js 脚本.......................................9

node.js 的基础和语法 ............................... 9

弱类型 .................................................... 9

buffer——node.js 特殊数据类型..........10

对象字面量 ...........................................10

函数 ....................................................... 11

数组 .......................................................12

原型特性 ...............................................12

编码规范 ...............................................13

node.js 的全局变量和保留字 ................14

__dirname process.cwd 的对比 .........17

浏览器api 输助工具 ............................17

node.js 的核心模块 ...............................18

便捷的node.js 工具 ..............................20

node.js 中读写文件 ..........................20

node.js 中的数据流 ...............................21

使用npm 安装node.js 模块 ................21

优化node.js 中的回调函数...................22

使用node.js http 模块来创建一个简单服务器 ...................23

调试node.js 程序......................................24

核心node.js 调试 ..................................24

使用node inspector 来调试 ..................25

node.js 集成开发环境和代码编辑器 ...28

监听文件变化 .............................................30

小结 ...............................................................31

2 章 使用express.js 4 创建node.js web 应用程序 ...................32

什么是express.js .......................................32

express.js 是如何工作的 ..........................35

express.js 的安装 .......................................36

express.js 的版本 ..................................36

express.js 生成器 ..................................37

本地express.js ......................................38

express.js 脚手架 .......................................40

express.js 命令行界面 ...........................41

express.js 中的路由 ...............................43

express.js 的核心——中间件 ................44

一个express.js 应用的配置...................45

jade 就是express.js/node.js haml ...45

脚手架总结 ...........................................45

博客项目概述 .............................................46

提交数据 ...............................................47

express.js 4 中的hello world 例子 .......48

创建文件夹 ...........................................49

npm 初始化和package.json.................50

依赖声明:npm install ...........................50

app.js 文件 .............................................51

jade 模板 ...............................................55

运行hello world 应用 ...........................56

小结 ...............................................................56

3 node.js 基于mocha 的测试驱动开发和行为驱动开发 ......................57

安装与理解mocha ...................................58

理解mocha hook 机制 ......................60

assert 进行tdd...................................61

断言库chai ...........................................63

expect.js 进行bdd.............................64

expect.js 的语法 ....................................65

项目:为博客开发一个bdd 测试 ......65

将配置参数写入makefile .....................68

小结 ...............................................................69

4 章 模板引擎:jade handlebars 70

jade 的语法和特性 ...................................70

标签 .......................................................71

变量/数据 ..............................................71

属性 .......................................................72

字面量 ...................................................73

文本 .......................................................73

script style ..................................74

javascript 代码 ......................................74

注释 .......................................................75

if 语句 ....................................................75

each 语句 ...............................................75

过滤器 ...................................................76

读取变量 ...............................................76

case ........................................................76

函数mixin .............................................77

include ....................................................78

extend .....................................................78

单独使用jade .............................................79

handlebars 的语法 ....................................83

变量 .......................................................83

each 语句 ...............................................83

非转义输出 ...........................................84

if 语句 ....................................................85

unless .....................................................85

with ........................................................86

注释 .......................................................87

自定义 helpers .....................................87

include ...................................................88

单独使用handlebars .................................88

express.js 4 jade handlebars 的用法 ............................................91

jade express.js.................................92

handlebars express.js........................92

项目:给博客添加jade 模板 .................93

layout.jade ..............................................94

index.jade ...............................................96

article.jade ..............................................97

login.jade ................................................98

post.jade .................................................99

admin.jade ............................................ 100

小结 ............................................................. 101

5 mongodbmongoskin 特性 .... 102

简单且正确地安装mongodb .............. 103

如何运行mongo 服务 ............................ 104

用控制台操作mongo ............................. 105

mongodb shell 命令介绍 ...................... 106

node.js 版原生mongodb 驱动示例 .. 107

mongoskin 的主要方法介绍 ................. 111

项目:用mongoskin 把博客数据存储到mongodb............................ 112

项目:在mongodb 中添加seed 数据 ......................................... 112

项目:mocha 测试 ............................... 113

项目:添加持久连接 ........................... 115

运行app .............................................. 126

小结 ............................................................. 127

6 章 在node.js 应用中使用session oauth 进行用户认证和授权 ............... 128

使用express.js 中间件权限管理 ......... 128

基于token 的用户认证 ........................... 129

基于session 的用户认证 ........................130

项目实践:为博客增加邮箱和密码登录功能 .......................................... 132

session 中间件 ..................................... 132

博客中的权限管理 ............................... 133

博客中的用户授权 ............................... 136

运行应用 ............................................. 138

node.js oauth ........................................... 138

使用node.js oauth 实现twitter oauth2.0 的示例 ................................ 139

everyauth ............................................. 140

项目实践:为博客增加twitter oauth 1.0 第三方登录(使用everyauth 实现) .......... 141

添加“使用twitter 账户登录”链接 .. 142

配置everyauthtwitter 模块 ................. 142

小结 ............................................................. 148

7 章 使用orm 类库mongoose 提升你的node.js 数据 ......................... 149

安装mongoose ......................................... 150

用独立的mongoose 脚本建立数据库连接 .................................. 150

mongoose 的原型 .................................... 152

使用钩子保持代码的逻辑清晰 ............ 154

自定义静态方法和实例方法 ................ 155

mongoose 模型 .......................................155

使用population 建立关系和连接 ........158

嵌套的文档 ............................................... 160

虚拟字段 .................................................... 161

修改原型的行为 ...................................... 162

express.js + mongoose =真正的mvc ..................................... 164

小结 ................................. 175

8 章 使用express.js hapi 构建node.js rest api 服务 ....................... 176

restful api 基础 ................................... 177

项目依赖 .................................................... 179

使用mocha superagent 进行测试 . 180

使用express mongoskin 实现rest api 服务器 ...................................... 185

重构:使用hapi 搭建rest api 服务器 .............................................. 192

小结 ............................................................. 199

9 websocketsocket.io derbyjs 的实时应用程序 .................... 200

什么是websocket ................................... 200

ws 模块的例子介绍本地websocket node.js .............................. 201

浏览器websocket 的实现 ...................201

ws 模块实现node.js 服务器 .......... 202

socket.io express.js 的例子 ............ 204

derbyjsexpress.js mongodb 搭建一个在线协作的代码编辑器例子 ........ 209

项目依赖和package.json ..................... 210

服务器端代码 ...................................... 211

derbyjs 应用程序 ................................ 213

derbyjs 视图 ....................................... 215

编辑器tryout ...................................... 217

小结 ............................................................. 218

10 章 为node.js 应用上线做准备 ..... 219

环境变量 .................................................... 219

生产环境下的express.js ........................ 220

生产环境下的socket.io ........................ 222

错误处理 ................................ 223

错误处理工具node.js domains ............ 225

使用cluster 处理多线程 ........................229

使用cluster2 处理多线程 ..................... 232

事件日志和监控 ...................................... 233

监控 ..................................................... 233

生产环境下的repl ............................ 235

winston ................................................ 236

使用papertrail 应用来管理日志 ......... 237

使用grunt 处理任务 ............................... 237

使用git 来做版本控制和发布代码 ... 241

安装git ............................................... 242

生成ssh 密钥 .................................... 242

创建本地git 仓库................................245

将本地仓库推送到github .................. 245

在云上使用travisci 运行测试用例 .. 246

travisci 配置 ...................................... 247

小结 ............................................................. 248

11 章 部署node.js 应用 ....................... 249

部署到heroku .......................................... 249

部署到amazon 网络服务 ..................... 255

使用foreverupstart init.d 保持node.js 持续运行 ................ 259

forever .................................................. 259

upstart .................................................. 260

init.d ..................................................... 262

尽可能使用nginx 提供静态资源 ....... 264

使用varnish 缓存 .................................... 266

小结 ............................................................. 268

12 node.js 模块发布和参与开源 . 269

推荐的目录结构 ...................................... 270

所需模式 .................................................... 270

package.json............................................... 273

发布到npm ............................................. 274

锁定版本 .................................................... 274

小结 ............................................................. 275

结束语 ......................................................... 275

进阶阅读 .................................................... 276

勘误和联系方式 ...................................... 276

展开全部

Node.js项目实践构建可扩展的Web应用 相关资料

看过n本书后,很庆幸遇到了这本最好最全的node.js开发学习用书。作者立功了,留下一部可以让我们真正领略这一技术妙用的又好又全的作品!为什么我如此丧心病狂的点赞,是因为它让我从概念上得以提升,开始找到通向产品级编码的道路。没有它这毫无可能,必须隆重感谢作者和它的研究成果!
  ——原著读者julia评论于2014-12-16

  我是一个中级码农,专攻java和php。几年前,为进步开始自学javascript和node。看遍所有线上资料,被一个个链接累残后,我必须找本书来解救自己,它要覆盖我循序渐进提高必须的所有知识,《node.js项目实践》就是这样一本书!
  它胜在:
  1)每章都有可操作的实战演练!我习惯于体验式学习,必须动手,而这正是这本书的特色!你可以按照你的想法给我解释什么是node,让我做好理论笔记,但我离不开可上手编码的过程,我需要有可验证的输出结果。
  2)内容组织得毫无瑕疵。每章都建立在以后知识之上,学习曲线平缓,不需要一上来就得面对较新的编程语言,否则我真是缺乏信心。
  3)这本书完整呈现如何实现诸多不同项目,其中一些可以直接拿来用在我们的应用开发中。这实在是这本书最大的实惠!
  如果你对javascript一窍不通,建议提前学学。资料到处都是,而且将来创建应用也离不开它。稍作准备后,让这本最佳读物带你登堂入室,成为更称职的程序员。
  ——原著读者ashley storey评论于2015-1-26

  毫无疑问的node第一书!归根结底,一个努力确保读者体验的作者,做到了一站式服务和易学易读。软件开发图书最大的槽点就是内容过时,滞后6个月的书就有可能无法运行其中的代码,需要你用95%的时间找出为什么不能运行的原因。之所以大爱这本书,正是因为所有步骤里涉及的中间件都能确保可用。比如,书里采用的是""npm install -g express-generator@4.0.0"",而不是""npm install -g express-generator"" ,小细节,大不同!编写风格简洁到位,案例精彩,真实有效,其中蕴藏着众多知识精化……百分百支持,都等不及他的下一本书了
  ——原著读者paul coady 评论于2015-4-8

  近几个礼拜,我一直充满愉悦地拜读azat mardan的近作《node.js项目实践:构建可扩展的web应用》。不得不说,写得真好,信息量真大,绝对是迄今为止最有用的node.js实践指导。如果你在寻找如何用node.js专业层面的书籍,这本书可谓量身定做!<br>
  这本书的宗旨在于如何用好node.js,不止是纯node,还包括很多有用的第三方模块。很多书把所有笔墨都用在深度剖析node.js本身上,但是这并不会给读者带来真正用它创建项目的清晰认识。
  很想为作者设身处地为读者着相的苦心而鼓掌,这让读者的阅读体验可以畅快而高效!
    ——原著读者azey47评论于2015-2-17

Node.js项目实践构建可扩展的Web应用 作者简介

Azat Mardan 在互联网、移动、软件开发方面有十多年的工作经验。他拥有信息学学士以及信息系统硕士学位,并且掌握和实践经验一样丰富的学术知识。 最近,Azat 以团队领导/高级软件工程师的角色工作于DocuSign,他的团队采用最新技术Node.js 栈、Express.js、Backbone.js、CoffeeScript、Jade、Stylus 以及Redis 重构了拥有5000 万用户的产品(DocuSign 网络应用)。 之前,Azat 曾在Storify.com(2013 被收购)、美国国家生物技术信息中心、联邦存款保险公司、洛克希德马丁以及其他公司任高级软件工程师。他在Marakana 开源社区(2013 被收购)、pariSOMA、General Assembly San Francisco 以及Hack Reactor 上教编程获得一致好评。Azat 会利用业余时间在他的博客webapplog.com 上写技术文章。他还是其他4 本JavaScript 和Node.js 图书的作者,包括亚马逊上客户端服务器类的畅销书:Rapid Prototyping with JS: Agile JavaScript Development。 Azat 是开源Node.js 项目:ExpressWorks、mongoui、HackHall 和NodeFramework.com的创建者,同时,也是Express、OAuth、jade-browser 以及其他NPM 模块的贡献者。

商品评论(0条)
暂无评论……
书友推荐
本类畅销
编辑推荐
返回顶部
中图网
在线客服