新書推薦:
《
新加坡教育:神话与现实
》
售價:HK$
96.3
《
“口袋中的世界史”第一辑·冷战中的危机事件
》
售價:HK$
291.2
《
绝美的奥伦堡蕾丝披肩编织
》
售價:HK$
177.0
《
狂飙年代:18世纪俄国的新文化和旧文化(第二卷)
》
售價:HK$
177.0
《
万有引力书系 纳粹亿万富翁 德国财富家族的黑暗历史
》
售價:HK$
109.8
《
中国常见植物野外识别手册:青海册
》
售價:HK$
76.2
《
三星堆对话古遗址(从三星堆出发,横跨黄河流域,长江流域,对话11处古遗址,探源多元一体的中华文明)
》
售價:HK$
87.4
《
迷人的化学(迷人的科学丛书)
》
售價:HK$
143.4
編輯推薦:
Node.js是一种领先的服务器端编程环境,MongoDB是最流行的NoSQL数据库,而AngularJS正迅速成为基于MVC的前端开发的领先框架。它们结合在一起使得Web程序员能够完全用JavaScript创建从服务器到客户端的高性能站点和应用程序。
本书为想要将这3种技术整合到完整的有效解决方案的Web程序员提供了完整指南。它以这3种技术的简洁而清晰的教程开始,然后迅速转到构建几种常见的Web应用程序上面。
读者将学会如何使用Node.js和MongoDB来建立更具可扩展性的高性能网站,如何利用AngularJS的创新MVC方法构建更有效的网页和应用程序,以及如何把这3个结合在一起使用,从而提供卓越的下一代Web解决方案。
■ 使用Node.js和Express实现高度可扩展的动态Web服务器
■ 为你的Web应用程序实现一个MongoDB的数据存储
■ 从Node.js JavaScript代码访问MongoDB并与之互动
■ 定义扩展了HTML语言的自定义AngularJS指令
■ 用JavaScript构建服务器端Web服务
■ 实现可以与Node.js We
內容簡介:
Node.js是一种领先的服务器端编程环境,MongoDB是最流行的NoSQL数据库,而AngularJS正迅速成为基于MVC的前端开发的领先框架。它们结合在一起使得能够完全用JavaScript创建从服务器到客户端浏览器的高性能站点和应用程序。
本书为想要将这3种技术整合到全面的有效解决方案的Web程序员提供了完整指南。它简洁而清晰地介绍了这3种技术,然后迅速转到构建几种常见的Web应用程序上面。
读者将学会使用Node.js和MongoDB来建立更具可扩展性的高性能网站,并利用AngularJS创新的MVC方法构建更有效的网页和应用程序,以及把这三者结合在一起使用,从而提供卓越的下一代Web解决方案。
關於作者:
Brad Dayley是一名高级软件工程师,在开发企业应用程序及Web界面方面,他拥有超过20年的工作经验。他曾设计并实现了一大批网站,其范围涵盖从企业应用服务器到富互联网应用程序,以及用于移动Web服务的智能界面。他的著作包括jQuery and JavaScript Phrasebook、Sams Teach Yourself NoSQL with MongoDB in 24 Hours和 Sams Teach Yourself jQuery and JavaScript in 24 Hours。
目錄 :
第2章
目 录
第1部分 引 言
第1章 介绍Node.js-to-AngularJS套件3
1.1 了解基本的Web开发框架3
1.1.1 用户4
1.1.2 浏览器4
1.1.3 Web服务器6
1.1.4 后端服务6
1.2 了解Node.js-to-AngularJS套件组件7
1.2.1 Node.js7
1.2.2 MongoDB8
1.2.3 Express9
1.2.4 AngularJS9
1.3 小结10
1.4 下一章10
第2章 JavaScript基础11
2.1 定义变量11
2.2 了解JavaScript数据类型12
2.3 使用运算符13
2.3.1 算术运算符13
2.3.2 赋值运算符14
2.3.3 运用比较和条件运算符14
2.4 实现循环16
2.4.1 while循环17
2.4.2 dowhile循环17
2.4.3 for循环17
2.4.4 forin循环18
2.4.5 中断循环19
2.5 创建函数19
2.5.1 定义函数20
2.5.2 传递变量给函数20
2.5.3 从函数返回值20
2.5.4 使用匿名函数21
2.6 理解变量作用域22
2.7 使用JavaScript对象22
2.7.1 使用对象语法23
2.7.2 创建自定义对象23
2.7.3 使用原型对象模式24
2.8 处理字符串25
2.8.1 合并字符串26
2.8.2 在字符串中搜索子串26
2.8.3 在一个字符串中替换单词27
2.8.4 将字符串分割成数组27
2.9 使用数组27
2.9.1 合并数组28
2.9.2 遍历数组29
2.9.3 将数组转换为字符串29
2.9.4 检查数组是否包含某个条目29
2.9.5 在数组中添加条目和删除条目30
2.10 添加错误处理30
2.10.1 trycatch块30
2.10.2 抛出你自己的错误31
2.10.3 使用Finally31
2.11 小结32
2.12 下一章32
第2部分 学习Node.js
第3章 开始使用Node.js35
3.1 了解Node.js35
3.1.1 谁在使用Node.js35
3.1.2 Node.js的用途36
3.2 Node.js安装36
3.2.1 纵观Node.js安装位置36
3.2.2 验证Node.js可执行文件37
3.2.3 选择Node.js IDE37
3.3 使用Node.js包38
3.3.1 什么是Node封装模块38
3.3.2 了解Node包注册表38
3.3.3 使用Node包管理器38
3.3.4 搜索Node封装模块39
3.3.5 安装Node封装模块40
3.3.6 使用package.json41
3.4 创建Node.js应用程序43
3.4.1 创建Node.js模块封装43
3.4.2 将一个Node.js封装模块发布到NPM注册表45
3.4.3 在Node.js应用程序中使用Node.js封装模块46
3.5 将数据写入控制台47
3.6 小结49
3.7 下一章49
第4章 在Node.js中使用事件、监听器、定时器和回调51
4.1 了解Node.js事件模型51
4.1.1 比较事件回调和线程模型51
4.1.2 在Node.js中阻塞IO52
4.1.3 会话示例54
4.2 将工作添加到事件队列54
4.2.1 实现定时器55
4.2.2 使用nextTick来调度工作58
4.2.3 实现事件发射器和监听器59
4.3 实现回调62
4.3.1 向回调函数传递额外的参数63
4.3.2 在回调中实现闭包64
4.3.3 链式回调65
4.4 小结66
4.5 下一章66
第5章 在Node.js中处理数据IO67
5.1 处理JSON67
5.1.1 把JSON转换成JavaScript对象67
5.1.2 把JavaScript对象转换为JSON68
5.2 使用Buffer模块缓冲数据68
5.2.1 了解缓冲数据69
5.2.2 创建缓冲区69
5.2.3 写入缓冲区70
5.2.4 从缓冲区读取71
5.2.5 确定缓冲区长度72
5.2.6 复制缓冲区73
5.2.7 对缓冲区切片74
5.2.8 拼接缓冲区75
5.3 使用Stream模块来传送数据76
5.3.1 Readable流76
5.3.2 Writable流78
5.3.3 Duplex流81
5.3.4 Transform流82
5.3.5 把Readable流用管道输送到Readable流84
5.4 用Zlib压缩与解压缩数据85
5.4.1 压缩和解压缩缓冲区85
5.4.2 压缩解压缩流87
5.5 小结88
5.6 下一章88
第6章 从Node.js访问文件系统89
6.1 同步和异步文件系统调用89
6.2 打开和关闭文件90
6.3 写入文件91
6.3.1 简单文件写入91
6.3.2 同步文件写入92
6.3.3 异步写入文件93
6.3.4 流式文件写入95
6.4 读取文件96
6.4.1 简单文件读取96
6.4.2 同步文件读取97
6.4.3 异步文件读取98
6.4.4 流式文件读取100
6.5 其他文件系统任务101
6.5.1 验证路径的存在性101
6.5.2 获取文件信息102
6.5.3 列出文件103
6.5.4 删除文件104
6.5.5 截断文件105
6.5.6 建立和删除目录105
6.5.7 重命名文件和目录106
6.5.8 监视文件更改入107
6.6 小结107
6.7 下一章107
第7章 在Node.js中实现HTTP服务109
7.1 处理URL109
7.1.1 了解URL对象110
7.1.2 解析URL组件111
7.2 处理查询字符串和表单参数111
7.3 了解请求、响应和服务器对象112
7.3.1 http.ClientRequest对象112
7.3.2 http.ServerResponse对象114
7.3.3 http.IncomingMessage对象115
7.3.4 HTTP Server对象116
7.4 在Node.js中实现HTTP客户端和服务器118
7.4.1 提供静态文件服务118
7.4.2 实现动态的GET服务器120
7.4.3 实现POST服务器122
7.4.4 与外部源交互124
7.5 实现HTTPS服务器和客户端127
7.5.1 创建HTTPS客户端127
7.5.2 创建HTTPS服务器129
7.6 小结129
7.7 下一章129
第8章 在Node.js中实现套接字服务131
8.1 了解网络套接字131
8.2 了解TCP服务器和Socket对象132
8.2.1 net.Socket对象132
8.2.2 net.Server对象135
8.3 实现TCP套接字服务器和客户端137
8.3.1 实现TCP套接字客户端138
8.3.2 实现TCP套接字服务器140
8.4 实现TLS服务器和客户端143
8.4.1 创建TLS套接字客户端144
8.4.2 创建TLS套接字服务器145
8.5 小结147
8.6 下一章147
第9章 在Node.js中使用多处理器扩展应用程序149
9.1 了解process模块149
9.1.1 了解进程IO管道149
9.1.2 了解进程的信号150
9.1.3 使用process模块控制进程执行150
9.1.4 从process模块获取信息151
9.2 实现子进程153
9.2.1 了解ChildProcess对象153
9.2.2 通过使用exec在另一个进程上执行一个系统命令154
9.2.3 使用execFile在另一个进程上执行一个可执行文件156
9.2.4 使用spawn在另一个Node.js实例中产生一个进程157
9.2.5 实现子派生159
9.3 实现进程集群161
9.3.1 使用cluster模块162
9.3.2 了解Worker对象163
9.3.3 实现一个HTTP集群164
9.4 小结166
9.5 下一章166
第10章 使用其他Node.js模块167
10.1 使用os模块167
10.2 使用util模块169
10.2.1 格式化字符串169
10.2.2 检查对象类型170
10.2.3 同步写入输出流170
10.2.4 将JavaScript对象转换为字符串170
10.2.5 从其他对象继承功能171
10.2.6 使用dns模块172
10.3 小结174
10.4 下一章174
第3部分 学习MongoDB
第11章 了解NoSQL和MongoDB177
11.1 为什么要采用NoSQL177
11