想上手区块链开发的程序员们,终于等到这本书!

2018 年 4 月 18 日 图灵教育 链圈一游的

据统计,截止到2017年底,全球已有20多个国家开始投资发展区块链技术,并且有将近80%的银行表示会启动区块链项目,有90多个中央银行加入了区块链讨论,以及90多个公司加入了区块链联盟,与区块链技术相关的风险投资累计超过了20亿美元,并且产生了3000多个区块链相关专利。

如果你对数字没感觉,想想朋友圈每天刷屏的这些文章:

  • 区块链一天,互联网十年

  • 区块链已势不可挡

  • 2018将是区块链技术加速落地元年

  • 区块链已被写入985/211名校课程

  • ......

你甚至产生了这样一种感觉—— 再不学习区块链,一眨眼几万年的生命就白白浪费了!

图片来自西乔《神秘的程序员们》(同题图)

不过,讲真,该干啥干啥。对这个领域完全不感兴趣的小伙伴们就别跟着疯狂的媒体一起焦虑和狂嗨了......另一方面,对于那些真的想彻底搞懂这个领域,甚至想把区块链开发作为行当的程序员们,早下手为强啊(虽然看起来已经不够早了,不过,有一句鸡汤说得好,入坑区块链最早的时间是十年前,其次是现在...)

问题来了,如果我们想从零开始入坑区块链,或者已经有少量基础知识,想直接上手开发,除了经常阅读知名开源项目的代码,还有什么好书值得参考吗?毕竟市面上区块链开发的书一抓一把,而阅读之后真正能上手开发的却极为稀少!

嗯,回答这个问题不谦虚,首推图灵刚上架的这本《区块链技术进阶与实战》——读完真的可以直接上手区块链开发!这本书的作者们是浙大系区块链顶尖研究者和一线开发者蔡亮、李启雷和梁秀波老师。熟悉图灵的小伙伴也知道,市面上最棒的一本 Docker 参考书《Docker:容器与容器云》也是浙大系作者推出的......我们先看一下图书,稍后会简单介绍一下作者及他们自家的平台。

作者:蔡亮,李启雷,梁秀波
定价:69.00元

  • 国内区块链技术顶尖研究者和一线开发者出品

  • 中国工程院院士陈纯等业内专业人士推荐

  • 专注介绍区块链核心原理(干货)和应用技术(实战)

  • 详细解读区块链平台 以太坊 和 HyperLedger

  • 注重实战,全书包含 5 个完整实际项目案例

  • 参考本书实例即可快速开发自己的第一个区块链应用

本书从实战的角度出发,结合实际应用开发场景,对区块链技术进行了全面介绍和剖析。

看一下作者团技术背景。


蔡亮,博士,副教授,浙江大学计算机学院软件工程系主任,浙江省重大科技专项专家。主要从事区块链、云计算、网络安全、可信计算和金融业务处理的研究,在国家级核心期刊和国际会议上发表了数十篇论文。参与了多项国家级或省部级科研项目,如国防军工预研基金项目、国家创新基金项目、863项目等。获得教育部科技进步一等奖、浙江省科技进步一等奖和三等奖。

李启雷,博士,讲师,杭州趣链科技有限公司首席技术官。主要从事体感人机交互、区块链和移动互联网技术等方面的研究与开发。作为核心研究人员参与国家863计划和国家科技支撑计划,在国内外知名学术期刊和会议发表论文九篇,获得国家发明专利一项、软件著作权一项。

梁秀波,博士,副研究员,杭州趣链科技有限公司副总经理。主要从事机器学习、区块链、数字娱乐和移动互联网等方面的研究与开发,曾赴法国进行为期一年的访问研究。作为核心研究人员参与国家级和省部级科研项目近十项,主持企事业单位委托项目二十余项。已发表论文十余篇,获得国家发明专利三项。

再来看看作者团创办的杭州趣链科技有限公司的实力。

  • 2016年成立,创始人均毕业于浙江大学计算机学院,博士学位

  • 2017年4月,荣获2017全球区块链金融(杭州)峰会“区块链技术与应用创新”双十强

  • 2017年5月,自家平台 Hyperchain V1.2 成为首批通过国家标准测试的区块链系统

  • 2017年8月,唯一一家成功入选第10期微软加速器的区块链企业

  • 2018年1月,成功中标中国工商银行区块链项目

  • 2018年3月,拿下全球首份谷歌订单,签约10+国内外大中型银行


此外,这本书得到了陈纯、许再越、贲圣林、杨小虎、宋士正、史晨阳等业内专业人士的推荐,向上滑动可查看他们对图书内容的评价。





▲向上滑动查看高手推荐

本书对以太坊、Hyperledger Fabric和Hyperchain的技术特点及内核代码进行了详细的分析,对各平台的应用开发技术进行了介绍。相信本书对区块链技术的爱好者和区块链行业的从业者会有很好的参考价值。


——陈纯,中国工程院院士,浙江大学计算机科学与技术学院教授

曾任浙江大学软件学院院长和浙江大学计算机软件研究所所长


本书基于浙江大学和杭州趣链科技有限公司多年的区块链技术研发经验,对知名的开源区块链平台以太坊和Hyperledger Fabric以及自研的Hyperchain平台展开了深入剖析,在讲解平台功能的过程中,穿插说明了区块链的关键算法和核心原理,并配有各个平台的开发指南和项目案例,深入浅出地介绍了当前主流的区块链开发技术。


——许再越,中国外汇交易中心副总裁


本书由浙江大学和趣链科技联合撰写,融合了浙江大学的理论研究成果和趣链科技的实际开发经验,是一本实践性非常强的区块链技术图书。 


——贲圣林,浙江大学互联网金融研究院院长 


本书从技术原理、市场发展、政府规划、应用场景和平台对比等角度对区块链进行了全景分析,对三个主流区块链平台进行了深入介绍,配有动手开发指南,并提供了实际项目案例说明和源代码,是一本不可多得的理论与实践相结合的区块链技术图书。 


——杨小虎,浙江大学软件学院常务副院长 


本书非常务实,干货满满,给读者呈现了当前区块链技术发展的最新动态,所提供的案例内容翔实,其背后必然有脚踏实地做技术的“实战派”团队支持。相信本书会对有志于从事区块链技术研究和应用开发的人员有帮助。 


——宋士正,浙商银行信息科技部总经理 



本书按照区块链基础知识、开源平台、企业级平台和开发案例的顺序介绍了区块链技术的基本原理和开发技术,并包含多个案例,非常适合相关技术人员由浅入深地学习区块链技术。 


——史晨阳,中国光大银行信息科技部副总经理





内容讲解方面,本书共分为四个部分。

第一部分介绍区块链的基础知识,使读者快速对区块链技术有一个整体认识。本部分包含了1章内容,即第1章,对区块链技术的发展情况进行了全面分析,介绍了其概念、历史、技术流派、关键技术和典型应用场景,通过对主流平台进行对比分析,给出当前区块链产业生态图谱。

第二部分对知名开源区块链平台以太坊和Hyperledger进行详细解读,并介绍如何基于这两个平台进行区块链应用开发。本部分包含了4章的内容。

第 2 章对以太坊的发展历史、基本概念、客户端、账户管理及以太坊网络等基础知识进行了介绍,并对以太坊共识机制、虚拟机、数据存储和加密算法等以太坊关键模块的核心原理进行了剖析,详细介绍了以太坊智能合约的编写、部署、测试与执行,最后对以太坊发展过程中的重大事件和目前存在的主要问题进行了分析探讨。

第 3 章首先介绍了如何搭建以太坊的开发环境,包括Go语言环境、Node.js和npm的配置、Solc编译器的安装,以及如何使用以太坊geth客户端搭建私有链;接着讲解了以太坊智能合约开发的集成开发环境,包括Mix IDE和在线浏览器编译器;然后讲述了JSON RPC和JavaScript API两种以太坊编程接口,通过这两种接口可以实现和以太坊底层的交互,实现合约方法的调用;随后讲述了目前主流的以太坊开发框架与流程,包括Metero、Truffle和商业化开发中的分层可扩展开发流程;最后给出了第一个较为完整的以太坊应用开发实例。

第 4 章对Hyperledger Fabric进行了深入解读,有助于读者深入理解Fabric的底层实现原理。首先,介绍了Hyperledger及其子项目的发展现状及管理模式,重点介绍了Hyperledger Fabric。之后,对Hyperledger Fabric架构进行深入分析,从成员服务、区块链服务以及合约代码服务三个方面探讨Hyperledger Fabric的架构组成与特点,给出了Fabric架构设计和模块组件。然后,给出了Chaincode代码结构、调用方式和执行流程。最后,对交易背书流程展开了详细分析。

第 5 章主要介绍如何在Hyperledger Fabric平台上开发区块链应用,首先讲述了 Hyperledger Fabric的开发运行环境的搭建过程,然后给出了Chaincode开发和部署流程,最后介绍了CLI应用接口和SDK接口,并通过实例说明了如何基于这两种接口开发Hyperledger Fabric的区块链应用。

第三部分以自主可控联盟区块链Hyperchain为例对企业级区块链平台的核心技术进行分析,并介绍了基于Hyperchain的企业级区块链应用开发技术。本部分包含了2章的内容。

第 6 章以企业级区块链平台Hyperchain为例,介绍了构成企业级区块链平台的核心组件的实现原理。企业级区块链同公有链和私有链不同,它直接面对企业级应用的需求,对区块链系统的安全性、灵活性以及性能都有着更加严格的要求。Hyperchain企业级区块链平台在优化传统PBFT的基础上设计实现了灵活、高效、稳定的共识算法RBFT,在智能合约的支持上选择了支持开源领域活跃的Solidity语言,对其执行虚拟机进行了系统层面的优化,并通过对交易、交易链路、应用开发包等多层面进行加密处理,加强企业级区块链的安全等级。此外,Hyperchain还设计实现了支持系统监控、合约编写、合约编译等多功能的企业级区块链管控平台。

第 7 章主要介绍了Hyperchain区块链上应用开发的相关内容。首先,从交易调用、合约管理以及区块查询几个方面介绍了Hyperchain平台对外提供的主要接口;其次,从Hyperchain集群的配置、部署和运行等方面介绍了如何搭建一个可运行的企业级区块链系统Hyperchain;最后以模拟银行为例,介绍了如何在Hyperchain平台上进行智能合约应用的开发。

第四部分介绍了多个区块链实际应用项目案例,并对其开发过程和关键代码进行了详细分析。本部分包含了2章的内容。

第 8 章介绍了两个基于以太坊的实际项目案例,每个案例的介绍均包括项目简介、系统功能分析、系统总体设计、智能合约设计、系统实现和部署等部分,并通过相关下载链接提供了这些案例完整的源代码。基于前面章节所学习的以太坊基础知识和开发技术,读者可对照本章的内容,一步一步地动手实践,在实战过程中更好地理解相关概念和技术,从而为自己基于以太坊构建区块链应用项目打好基础。

第 9 章介绍了两个基于Hyperchain的企业级区块链应用项目案例,每个案例的介绍均包括项目简介、系统功能分析、系统总体设计、智能合约设计、系统实现和部署等部分。可以看到,利用Hyperchain可以构建功能完备、技术领先、符合企业级要求的区块链应用。读者可对照本章内容,通过Hyperchain提供的完善的开发接口,对区块链应用开发进行深入的学习和实践。


目  录

 

第一部分 区块链基础

第1章 区块链基础入门  2

1.1 区块链基础知识  2

1.1.1 从比特币到区块链  2

1.1.2 区块链定义  3

1.1.3 区块链相关概念  4

1.1.4 区块链分类  6

1.2 区块链发展历程  8

1.2.1 技术起源  8

1.2.2 区块链1.0——“数字货币”  9

1.2.3 区块链2.0——智能合约  9

1.2.4 区块链3.0——超越货币、经济和市场  10

1.3 区块链关键技术  10

1.3.1 基础模型  10

1.3.2 数据层  11

1.3.3 网络层  16

1.3.4 共识层  17

1.3.5 激励层  19

1.3.6 合约层  20

1.4 区块链产业现状  21

1.4.1 区块链发展态势  21

1.4.2 区块链政府规划  22

1.4.3 区块链生态图谱  25

1.5 区块链应用场景  26

1.5.1 数字票据  26

1.5.2 供应链金融  27

1.5.3 应收账款  27

1.5.4 数据交易  27

1.5.5 债券交易  28

1.5.6 大宗交易  28

1.5.7 其他场景  28

1.6 区块链主流平台  29

1.7 本章小结  31

第二部分 开源区块链平台

第2章 以太坊深入解读  36

2.1 以太坊基础入门  36

2.1.1 以太坊发展历史  36

2.1.2 以太坊基本概念  37

2.1.3 以太坊客户端  39

2.1.4 以太坊账户管理  43

2.1.5 以太坊网络  46

2.2 以太坊核心原理  46

2.2.1 以太坊共识机制  47

2.2.2 以太坊虚拟机  49

2.2.3 以太坊数据存储  51

2.2.4 以太坊加密算法  53

2.3 以太坊智能合约  53

2.3.1 智能合约与Solidity简介  54

2.3.2 智能合约的编写与部署  56

2.3.3 智能合约测试与执行  67

2.3.4 智能合约实例分析  71

2.4 以太坊重大事件与现存问题  74

2.4.1 The DAO攻击事件  74

2.4.2 以太坊现存问题  75

2.5 本章小结  77

第3章 以太坊应用开发基础  78

3.1 以太坊开发环境搭建  78

3.1.1 配置以太坊环境  78

3.1.2 搭建以太坊私有链  80

3.2 以太坊集成开发环境  83

3.2.1 Mix IDE  83

3.2.2 Solidity在线实时编译器IDE  86

3.3 以太坊编程接口  89

3.3.1 JSON RPC  89

3.3.2 JavaScript API  94

3.4 DApp开发框架与流程  97

3.4.1 Meteor  97

3.4.2 Truffle  100

3.4.3 分层可扩展开发流程  102

3.5 第一个以太坊应用  104

3.5.1 优化MetaCoin应用  104

3.5.2 MetaCoin代码详解  106

3.5.3 MetaCoin应用运行  109

3.6 本章小结  111

第4章 Hyperledger Fabric深入解读  112

4.1 项目介绍  112

4.1.1 项目背景  112

4.1.2 项目简介  113

4.2 Fabric简介  115

4.3 核心概念  116

4.4 架构详解  118

4.4.1 架构解读  118

4.4.2 成员服务  120

4.4.3 区块链服务  124

4.4.4 合约代码服务  127

4.5 合约代码分析  128

4.5.1 合约代码概述  128

4.5.2 合约代码结构  129

4.5.3 CLI命令行调用  131

4.5.4 链码执行泳道图  132

4.6 交易流程  133

4.6.1 通用流程  133

4.6.2 流程详解  135

4.6.3 背书策略  138

4.7 本章小结  139

第5章 Hyperledger Fabric应用开发基础  140

5.1 环境部署  140

5.1.1 软件下载与安装  140

5.1.2 开发环境搭建  142

5.1.3 Go和Docker  144

5.2 链码开发指南  147

5.2.1 实现智能合约的接口  147

5.2.2 智能合约的依赖关系  148

5.2.3 智能合约的数据格式  148

5.2.4 智能合约的接口解析  149

5.2.5 智能合约案例代码分析  149

5.3 CLI应用实例  152

5.3.1 CLI 介绍  152

5.3.2 CLI 应用开发  153

5.4 SDK应用实例  163

5.4.1 SDK介绍  163

5.4.2 SDK应用开发  165

5.5 本章小结  169

第三部分 企业级区块链平台 Hyperchain

第6章 企业级区块链平台核心原理剖析  172

6.1 Hyperchain整体架构  172

6.2 共识算法  174

6.2.1 RBFT概述  174

6.2.2 RBFT常规流程  174

6.2.3 RBFT视图更换  176

6.2.4 RBFT自动恢复  177

6.2.5 RBFT节点增删  178

6.3 智能合约  179

6.3.1 智能合约执行引擎  180

6.3.2 HyperVM设计原理  180

6.3.3 HyperVM执行流程  181

6.4 账本数据存储机制  183

6.4.1 区块链  183

6.4.2 合约状态  185

6.4.3 Merkle树  186

6.5 安全与隐私机制  189

6.5.1 多级加密机制  189

6.5.2 基于CA的权限控制  190

6.6 可视化监管平台  191

6.6.1 Hypervision概览  191

6.6.2 Hypervision区块链管理  192

6.6.3 Hypervision合约管理  193

6.7 本章小结  194

第7章 Hyperchain应用开发基础  195

7.1 平台功能  195

7.1.1 JSON-RPC格式  195

7.1.2 交易调用  196

7.1.3 合约管理  200

7.1.4 区块查询  203

7.2 平台部署  206

7.2.1 Hyperchain配置  207

7.2.2 Hyperchain部署  207

7.2.3 Hyperchain运行  209

7.3 第一个Hyperchain应用  210

7.3.1 编写智能合约  211

7.3.2 部署与合约调用  212

7.4 本章小结  212

第四部分 区块链应用案例

第8章 以太坊应用实战案例详解  214

8.1 基于以太坊的通用积分系统案例分析  214

8.1.1 项目简介  214

8.1.2 系统功能分析  215

8.1.3 系统总体设计  216

8.1.4 智能合约设计  218

8.1.5 系统实现  224

8.1.6 系统部署  233

8.2 基于以太坊的电子优惠券系统案例分析  235

8.2.1 项目简介  235

8.2.2 系统功能分析  236

8.2.3 系统总体设计  237

8.2.4 智能合约设计  239

8.2.5 系统实现与部署  246

8.3 本章小结  250

第9章 企业级区块链应用实战案例详解  251

9.1 基于Hyperchain的数字票据系统案例分析  251

9.1.1 项目简介  251

9.1.2 系统功能分析  252

9.1.3 系统总体设计  253

9.1.4 智能合约设计  256

9.1.5 系统实现与部署  261

9.2 基于Hyperchain的出行打车平台案例分析  263

9.2.1 项目简介  263

9.2.2 系统功能分析  264

9.2.3 系统总体设计  267

9.2.4 智能合约设计  269

9.2.5 系统实现与部署  284

9.3 本章小结  286 

 




上下滑动可查看完整的图书目录

给你最完整的知识架构


长按识别京东购买

https://item.jd.com/12340068.html


长按识别当当购买

http://product.dangdang.com/25255369.html



PS:一则新闻

近日,浙江大学计算机学院宣布将于今年下半年首次推出“区块链与数字货币”课程,这也是国内首个推出区块链课程的高校。课程的使用教材就是蔡亮、李启雷和梁秀波老师编写的《区块链技术进阶与实战》。

PPS:一则好消息

为了进一步降低区块链技术使用门槛,让更多的区块链开发者、爱好者以及正在尝试接入区块链技术的企业能够快捷地开发区块链应用,趣链科技于2017年9月14日正式上线了基于联盟链的“开发者平台”。基于该平台,用户可以更方便地创建、发布和使用多中心化的应用程序。通过平台提供的在线智能合约编辑器,用户可便捷、准确地编写智能合约程序;通过平台提供的区块链浏览器,用户可方便地获取链上区块信息、区块链节点状态、节点维护方信息等。欢迎广大区块链相关从业人员访问体验,开发者平台网址为:https://dev.hyperchain.cn/

如需获得更多关于区块链技术的最新技术动态和趣链科技的技术支持,可扫描如下二维码关注微信公众号。



这一波大浪,追!


欢迎站在浪尖上的小伙伴分享一下链圈的惊涛骇浪。想入门的小伙伴说说对这本书的期待,精选评论挑出 5 位小伙伴,赠送《区块链技术进阶与实战》,截止 4 月 23 日。


 点击【阅读原文】京东购买《区块链技术进阶与实战》

登录查看更多
0

相关内容

区块链(Blockchain)是由节点参与的分布式数据库系统,它的特点是不可更改,不可伪造,也可以将其理解为账簿系统(ledger)。它是比特币的一个重要概念,完整比特币区块链的副本,记录了其代币(token)的每一笔交易。通过这些信息,我们可以找到每一个地址,在历史上任何一点所拥有的价值。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
算法与数据结构Python,369页pdf
专知会员服务
160+阅读 · 2020年3月4日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
20+阅读 · 2019年11月7日
【新书】Python编程基础,669页pdf
专知会员服务
186+阅读 · 2019年10月10日
各编程领域最好的入门书籍
程序猿
27+阅读 · 2018年7月29日
这几本Python新书特别赞
图灵教育
19+阅读 · 2018年3月1日
Python 书单:从入门到……
Linux中国
38+阅读 · 2017年8月6日
Talking-Heads Attention
Arxiv
15+阅读 · 2020年3月5日
Teacher-Student Training for Robust Tacotron-based TTS
Self-Attention Graph Pooling
Arxiv
5+阅读 · 2019年4月17日
Arxiv
6+阅读 · 2018年11月29日
Arxiv
6+阅读 · 2018年1月14日
VIP会员
相关VIP内容
算法与数据结构Python,369页pdf
专知会员服务
160+阅读 · 2020年3月4日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
20+阅读 · 2019年11月7日
【新书】Python编程基础,669页pdf
专知会员服务
186+阅读 · 2019年10月10日
相关资讯
各编程领域最好的入门书籍
程序猿
27+阅读 · 2018年7月29日
这几本Python新书特别赞
图灵教育
19+阅读 · 2018年3月1日
Python 书单:从入门到……
Linux中国
38+阅读 · 2017年8月6日
相关论文
Talking-Heads Attention
Arxiv
15+阅读 · 2020年3月5日
Teacher-Student Training for Robust Tacotron-based TTS
Self-Attention Graph Pooling
Arxiv
5+阅读 · 2019年4月17日
Arxiv
6+阅读 · 2018年11月29日
Arxiv
6+阅读 · 2018年1月14日
Top
微信扫码咨询专知VIP会员