1 、概述

1.1 前言

本文档主要通过实例指导如何在HPB主网上发布智能合约教程。

文档阅读人员:社区开发人员、测试人员、运维人员。

1.2 学习准备

1.2.1 Solidity语言

Solidity是一种开源的智能合约高级语言,可以运行支持开源的Ethereum虚拟机(EVM)之上。具体的语言介绍和学习入门,在以下的网址中有详细介绍: https://solidity.readthedocs.io/en/v0.5.2/。

1.2.2 Remix

支持智能合约开发IDE,可以在浏览器中快速部署测试智能合约,支持Solidity语言。访问和使用地址:http://remix.ethereum.org或者http://remix.hpb.io/。

1.2.3 HPB主链接入指导

详情请前往HPB官网的接入详情界面,会指导你如何通过RPC,SDK等方式和主链交互。 https://www.hpb.io/client。

1.2.4 智能合约Demo地址

https://github.com/loglos/web3-hpb-test.git

2 、开发智能合约

2.1 环境准备

2.1.1 通过在线Remix在线编译器进行智能合约开发

请访问链接进行智能合约开发http://remix.ethereum.org具体智能合约的开发请见第3章节。

2.1.2 通过下载Remix开源代码搭建本地开发环境

下载地址:https://github.com/ethereum/remix-ide

  • 安装步骤

nstall npm and node.js (see https://docs.npmjs.com/getting-started/installing-node), then do:

Remix-ide has been published as an npm module:

npm install remix-ide -gremix-ide

Or if you want to clone the github repository (wget need to be installed first) :

git clone https://github.com/ethereum/remix-ide.gitgit clone https://github.com/ethereum/remix.git # only if you plan to link remix and remix-ide repositories and develop on it.cd remix-idenpm installnpm run setupremix # only if you plan to link remix and remix-ide repositories and develop on it.npm start
  • DEVELOPING:

Run npm start and open http://127.0.0.1:8080 in your browser.

Then open your text editor and start developing. The browser will automatically refresh when files are saved.

Most of the the time working with other modules (like debugger etc.) hosted in the Remix repository is not needed.

Troubleshooting building Some things to consider if you have trouble building the package:

Make sure that you have the correct version of node, npm and nvm. You can find the version that is tested on Travis CI by looking at the log in the build results. Run:

node --versionnpm --versionnvm --version

In Debian based OS such as Ubuntu 14.04LTS you may need to run apt-get install build-essential. After installing build-essential run npm rebuild.

  • Unit Testing Register new unit test files in test/index.js. The tests are written using tape.

智能合约_HPB智能合约最佳实践相关推荐

  1. 以太坊智能合约开发-《精通以太坊智能合约开发》学习总结实践

    文章目录 一.初探以太访智能合约 1. remix小demo 2. 写智能合约用的编程语言 二.以太坊核心概念 1. 交易/事务( Transaction ) 2. 区块 3. 共识协议:工作量证明( ...

  2. 区块链技术最佳的监管方式是智能合约监管智能合约

    区块链最新消息 1.在国内首部<区块链安全生存指南>发布 最新消息:比特大.长亭科技和ConsenSys陆联手发布了全国首部<区块链安全生存指南>.该指南围绕区块链技术安全,对 ...

  3. 蚂蚁区块链第10课 可信计算及TEE硬件隐私合约链智能合约开发实践

    1,摘要 本文介绍可信计算分类INTEL SGX技术和ARM TRUSTZONE技术技术方案概要,以及应用INTEL SGX技术的蚂蚁区块链TEE硬件隐私链的智能合约开发实践. 2,可信计算和2种技术 ...

  4. 从智能合约到智能资产

    虽然智能合约仍然处于初始阶段,但是其潜力显而易见.想象一下,分配你的遗产就像滑动可调滑块就能 决定谁得到多少遗产一样简单.如果开发出足够简单的用户交互界面,它就能够解决许多法律难题,例如 更新遗嘱.一 ...

  5. BC之SC:区块链之智能合约——与传统合约的比较以及智能合约模型部署原理、运行原理相关配图

    BC之SC:区块链之智能合约--与传统合约的比较以及智能合约模型部署原理.运行原理相关配图 目录 SC与传统合约的比较 SC模型部署原理.运行原理 SC与传统合约的比较 1.传统合约VS智能合约  特 ...

  6. C++ 智能指针最佳实践源码分析

    作者:lucasfan,腾讯 IEG Global Pub.Tech. 客户端工程师 智能指针在 C++11 标准中被引入真正标准库(C++98 中引入的 auto_ptr 存在较多问题),但目前很多 ...

  7. 智能合约怎么创建合约_可出售智能合约的协议

    智能合约怎么创建合约 by Pablo Ruiz 帕勃罗·鲁伊斯(Pablo Ruiz) 可出售智能合约的协议 (A Protocol for Sellable Smart Contracts) Et ...

  8. 本周五丨数据库智能管控最佳实践与探索

    数据库管控能力的高低直接影响了企业数字化转型的进程,甚至于关乎成败.面对日趋丰富的业务场景和复杂的数据库环境,要做好数据库的管控工作,势必要引入云化.平台化.智能化的架构设计与技术. 那么本次云和恩墨 ...

  9. 【报告分享】中国数据智能应用趋势报告:解码数据中台最佳实践,企业数字化转型新引擎.pdf(附下载链接)...

    大家好,我是文文(微信:sscbg2020),今天给大家分享爱分析于2020年10月份发布的报告<中国数据智能应用趋势报告:企业数字化转型新引擎,解码数据中台最佳实践.pdf>,希望对您有 ...

最新文章

  1. 判断一个string是否可以为数字
  2. CentOS 6.x 使用安装光盘作为yum源
  3. ASP3.0给我们带来的新技术之一---DataShaping技术
  4. flume源码学习4-SourceRunner与ExecSource实现
  5. python基础知识点大全-【python基础学习】基础重点难点知识汇总
  6. 【译】一份通俗易懂的React.js基础指南-2018
  7. 从实战到原理,线程池的各类使用场景整合
  8. python dict hash_Python Hashmap/Dicti
  9. oracle替换字符串replace
  10. 深度学习实现代码汇总
  11. 刷榜中ASO优化中下载量与评论之间的对应比
  12. 2台计算机网线连接无法ping通,两台电脑PING不通怎么办?
  13. html5 音乐播放器 静态,使用HTML5 Audio标签制作音乐播放器
  14. JVM的垃圾回收Serial、Serial Old、Parallel Scavenge、Parallel Old的介绍和STW(Stop The World)
  15. mac重装系统时显示未能与服务器,mac出现您的磁盘未能分区怎么办-bootcamp磁盘未能分区解决方法 - 河东软件园...
  16. 数字技术战略:开发者体验 —— 内部工具的“最后一公里”
  17. 农行k宝显示连接服务器失败,农业银行k宝连接失败,是怎么回事?5分
  18. 解析网页--正则表达式--python爬虫知识点4
  19. JS获取img图片的原始尺寸高度和宽度
  20. 汇编语言-中括号-mov指令-cmp指令-lea指令

热门文章

  1. 开课吧python小课学了有用吗-案例拆解:开课吧Python体验课
  2. [NeurIPS 2017] Poincaré Embeddings for Learning Hierarchical Representations
  3. 【电气专业知识问答】问:调节器用TV熔丝熔断后的现象是什么?如何分析与处理?
  4. Linux开胃菜:通过xshell对Linux系统的上传下载
  5. JAVA输入1~7输出星期一~星期日
  6. python安装tkinter模块_详解python tkinter模块安装过程
  7. less和bem_将PostCSS与BEM和SUIT方法一起使用
  8. 微信小程序 open-type=contact
  9. Linux-CentOS7-防火墙开启、关闭、以及查看防火墙状态命令
  10. 如何选择适合的虚拟主机搭建博客