Node.js 区块链开发
Node.js 区块链开发
编辑推荐
以实践为基础,从技术角度研究了区块链的设计与实现,从代码层面详细剖析了使用 Node.js 开发区块链的技巧与*佳实践。
围绕区块链、Node.js 前后端开发、密码学、P2P 网络、共识算法等进行全面深入的讲解,帮助读者更深刻地理解 Node.js 区块链开发!
内容简介
本书力图用*少的篇幅表述丰富的内容,共分为五个部分,20 多个章节,具体结构如下。
第一部分:了解区块链,共 4 章。详细讲述了区块链产品——加密货币的相关概念,用独特的技术视角,把加密货币的基本技术要素串联起来。
第二部分:Node.js 入门指南,共 4 章。详细介绍了 Node.js 入门知识,并通过一个具体项目,完成对 Node.js 在区块链技术领域的调查和描述,整个章节也是项目架构设计必备的调研和技术选型阶段,是本书*一个完整的实践范例。
第三部分:源码解读,共 9 章。从架构设计的角度,层层剖析区块链的设计原理,深刻解读相关概念和技术。先从项目设计的角度详细介绍了亿书白皮书的核心内容,然后从项目入口程序出发,介绍了亿书项目的整体结构;之后分别介绍了 P2P 网络、加密解密、签名和多重签名、区块链、共识机制等区块链核心内容及其代码实现。
第四部分:开发实践,共 9 章。主要是对第二和第三部分的有益补充,把在这两个部分出现的技术难点抽取出来,集中介绍。仍然以亿书项目中涉及的实际项目为主,包含多个完整独立的小项目,其中涉及函数式编程等编程方法论、aysnc 的用法、命令行工具的开发、亿书官方网站的开发、密码学技术、时间戳和数据计算,以及测试技术。
第五部分:附录。汇总了区块链的相关概念、常见词汇的中英文对照等内容。
作者简介
朱志文(网名 imfly),区块链技术专家,全栈开发工程师,亿书(Ebookchain)等多个开源项目的核心开发者,中国区块链俱乐部主创者和发起人,区块链技术的狂热布道者,CSDN 区块链知识库特邀编辑、博客专家,多个区块链项目的专家顾问和天使投资人。你可以在亿书官网找到他。
目录
- 推荐序一
- 推荐序二
- 推荐序三
- 前言
第一部分 了解区块链
第 1 章 加密货币就是货币 2
- 1.1 加密货币简史 2
- 1.2 什么是加密货币 3
- 1.3 加密货币就是货币 4
- 1.4 加密货币可靠吗 4
- 1.5 总结 6
- 1.6 参考 6
第 2 章 区块链,承载人类信用的基石 7
- 2.1 利益,现实世界的内在驱动力 7
- 2.2 信用,决定着利益转移的方向 7
- 2.3 未来趋势 9
- 2.4 应用场景 9
- 2.5 风险提示 11
- 2.6 总结 12
- 2.7 参考 12
第 3 章 共识机制,可编程的利益转移规则 13
- 3.1 机制,左右产品走向的根源 13
- 3.2 PoW:工作量证明机制 14
- 3.3 PoS:股权证明机制 15
- 3.4 DPoS:授权股权证明机制 16
- 3.5 亿书对 DPoS 机制的改进 17
- 3.6 总结 17
- 3.7 参考 18
第 4 章 区块链架构设计 19
- 4.1 基本概念 19
- 4.2 架构图 20
- 4.3 协议层 20
- 4.4 扩展层 22
- 4.5 应用层 22
- 4.6 编程实现 23
- 4.7 知识图谱 25
- 4.8 总结 26
- 4.9 参考 27
第二部分 Node.js 入门指南
第 5 章 Node.js 在币圈流行么 30
- 5.1 Node.js 在开源社区很流行 30
- 5.2 Node.js 在币圈也同样流行 32
- 5.3 Github 上前 10 个应用的简介 34
- 5.4 结论 36
- 5.5 总结 36
- 5.6 参考 36
第 6 章 Node.js 让前端开发像子弹飞一样 37
- 6.1 项目需求 37
- 6.2 技术选型 37
- 6.3 Node.js 简介 38
- 6.4 开发步骤 39
- 6.5 总结 51
- 6.6 参考 51
第 7 章 Node.js 让后台开发像前端一样简单 53
- 7.1 需求 53
- 7.2 开发 54
- 7.3 总结 61
- 7.4 参考 62
第 8 章 你必须知道的几个 Node.js 编码习惯 63
- 8.1 一切都是数据流 63
- 8.2 事事皆回调 65
- 8.3 异常要捕捉 67
- 8.4 总结 72
- 8.5 参考 73
第三部分 源码解读
第 9 章 亿书,一个面向未来的自出版平台 76
- 9.1 亿书是什么 76
- 9.2 使用场景 76
- 9.3 主要特点 77
- 9.4 核心功能 77
- 9.5 技术架构 78
- 9.6 总结 79
- 9.7 参考 79
第 10 章 入口程序 app.js 解读 80
- 10.1 源码与类图 80
- 10.2 解读 80
- 10.3 总结 86
第 11 章 一个精巧的 P2P 网络实现 88
- 11.1 源码、类图与流程图 88
- 11.2 解读 89
- 11.3 总结 98
- 11.4 参考 98
第 12 章 加密和验证 99
- 12.1 源码、类图与流程图 99
- 12.2 概念 101
- 12.3 实践 102
- 12.4 总结 104
- 12.5 参考 104
第 13 章 地址 105
- 13.1 源码、类图与流程图 105
- 13.2 解读 105
- 13.3 总结 115
- 13.4 参考 115
第 14 章 签名和多重签名 116
- 14.1 源码 116
- 14.2 解读 116
- 14.3 总结 125
第 15 章 交易 126
- 15.1 源码与类图 126
- 15.2 解读 128
- 15.3 总结 141
- 15.4 参考 141
第 16 章 区块链 142
- 16.1 源码、类图与流程图 142
- 16.2 解读 143
- 16.3 总结 162
- 16.4 参考 163
第 17 章 DPoS 机制 164
第四部分 开发实践
第 18 章 函数式编程入门经典 178
第 19 章 轻松从 JavaScript 文件生成 UML 类图 199
第 20 章 命令行开发介绍 205
第 21 章 一张图学会使用 async 组件进行异步流程控制 210
第 22 章 静态网站开发全景扫描 216
第 23 章 开发通用的 HTML 组件 223
第 24 章 三张图让你全面掌握加密解密技术 237
第 25 章 在时间和数据计算方面应该注意的问题 244
第 26 章 测试 251
第五部分 附录
- 附录 A 区块链相关术语 260
- 附录 B 区块链相关名词 273
- 附录 C 关于区块链俱乐部 280
- 后记 282