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

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

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

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

  • 区块链已势不可挡

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

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

  • ......

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

想上手区块链开发的程序员们,终于等到这本书!_第1张图片

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

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

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

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

想上手区块链开发的程序员们,终于等到这本书!_第2张图片

作者:蔡亮,李启雷,梁秀波
定价: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 

 




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

给你最完整的知识架构



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

你可能感兴趣的:(想上手区块链开发的程序员们,终于等到这本书!)