-
区块链网络开发中采用高斯-赛德尔迭代法求解矩阵的解
资源介绍
• 第 2 部分: 对使用 Go 为 Hyperledger Fabric v0.6 编写的区块链链代码进行单元测试
• 第 3 部分: 为基于 Hyperledger Fabric v0.6 的区块链网络开发客户端应用程序
在本教程中,将学习如何使用 Golang 为基于 Hyperledger Fabric v0.6 的区块链网络开发链代
码。我不但会介绍一些基础知识,比如链代码的角色和与底层 Fabric 交互的 API,还会介绍各种
高级主题,比如数据建模、访问控制和事件。大量的代码示例演示了区块链上的一个住房贷款和购
买合同流程。(参见本教程末尾部分的 “可下载资源”,下载完整的示例链代码。)
本教程是本系列的第一篇;后续教程将介绍如何对链代码执行单元测试,以及如何开发可调用您部
署的链代码的客户端应用程序。
链代码是什么?
在 IBM Cloud 上开发-- 免费试用 30 天
您可以获得 2GB 运行时和容器内存,配置最多 10 个云服务,以及获得免费的服务台支持。试
用 Bluemix,只需单击一次即可通过 Blockchain Starter Developer 计划 开始构建和测试区块
链网络。
链代码也称为智能合约,实质上是控制区块链网络中的不同实体或相关方如何相互交互或交易的业
务逻辑。简言之,链代码将业务网络交易封装在代码中。可以调用链代码来设置和获取账本或
world state。
在发表本教程时,Hyperledger 支持使用 Golang 或 Java™ 语言编写链代码,链代码最终在一
个 Docker 容器内运行。因为 Java 链代码支持还处于公测阶段,所以本教程将重点介绍 Go。
设置开发环境
区块链开发人员推荐阅读内容
借助 区块链开发人员中心 内的 developerWorks 教程、课程、博客和社区支持,提高您的开发技
能。
按照 IBM Bluemix 文档中的步骤开始 “设置开发环境”。到达题为 “设置开发管道” 的小节时,您
已经为开始使用 Go 开发链代码做好了准备。
链代码结构
让我们仔细看看链代码的结构。前面已经提到过,清单 1 及整篇教程中的示例链代码,以及所讨
论的架构都严格遵守 Hyperledger Fabric v0.6 预览版的规定。
清单 1 的第 4 行将 shim 包导入您的链代码包中。shim 包 提供了一些 API,以便您的链代码
与底层区块链网络交互来访问状态变量、交易上下文、调用方证书和属性,并调用其他链代码和执
行其他操作。
- 上一篇: DeviceSupport-11-0
- 下一篇: 以太坊漏洞review