DAPP智能合约模式GRETT格莱特开发详情丨DAPP智能合约项目GRETT格莱特系统开发(方案逻辑)/规则玩法/案例分析/源码程序

简介:  智能合约在去信任化环境下,按顺序触发设定的合约内容并完成系列安全的自动化操作,为智能合约的实践提供了技术保障。

 智能合约在去信任化环境下,按顺序触发设定的合约内容并完成系列安全的自动化操作,为智能合约的实践提供了技术保障。

  智能合约是运行在区块链公链上的一种代码,该代码由Solidity编写,并通过区块链的智能合约虚拟机来执行,以达到对区块链编程的目标。可以将区块链公联理解为操作系统,Solidity是编写该操作系统应用程序的编程语言,智能合约虚拟机则是编程语言编译之后的代码运行环境。
ERC20规范

ERC20约定了一个代币合约需要实现的接口:

// 接口标准

contract ERC20 {

function totalSupply() constant returns (uint totalSupply); // 总发行量

function balanceOf(address _owner) constant returns (uint balance);

// 代币分发(注意, 这个只有合约的Creator 可以调用)

function transfer(address _to, uint _value) returns (bool success);

// 这里是拥有者和拥有者之间的代币转移

function transferFrom(address _from, address _to, uint _value) returns (bool success);

function approve(address _spender, uint _value) returns (bool success);

function allowance(address _owner, address _spender) constant returns (uint remaining);

event Transfer(address indexed _from, address indexed _to, uint _value);

event Approval(address indexed _owner, address indexed _spender, uint _value);

// Token信息

string public constant name = "4FunCoin";

string public constant symbol = "4FC";

uint8 public constant decimals = 18; // token的精度, 大部分都是18

}

上面的代码是一个标准的ERC20标准的代码, 规范给出了框架, 我们只需要实现相应的函数就好了, 这里给出函数说明。

接口函数说明

函数的形参是局部有效, 所以前面使用下划线, 与其他的变量区别开来. 如 _owner.

totalSupply() 函数返回这个Token的总发行量;

balanceOf() 查询某个地址的Token数量 , 结合mapping实现

transfer() owner 使用这个进行发送代币

transferFrom () token的所有者用来发送token

allowance() 控制代币的交易,如可交易账号及资产, 控制Token的流通

approve() 允许用户可花费的代币数;

事件函数说明

这里两个Event是重点, 事件,可以被前端js代码捕获到并进行相应的处理:

event Transfer() Token的转账事件

event Approval() 允许事件

ERC20代币合约实现

理解了上面的函数, 下面的代码,就实现了Token合约的函数填充

pragma solidity ^0.4.16;

interface tokenRecipient { function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) public; } // token的 接受者 这里声明接口, 将会在我们的ABI里

contract TokenERC20 {

相关文章
|
7月前
|
存储 供应链 安全
dapp系统开发详细规则/玩法功能/案例设计/源码步骤
DApp是指去中心化应用(Decentralized Application),是构建在区块链技术之上的应用程序。与传统的中心化应用不同,DApp不依赖于中心化的服务器或管理者,而是通过智能合约和分布式网络来实现去中心化的运行。
|
7月前
|
安全 JavaScript 前端开发
区块链钱包系统开发解决方案/需求设计/功能逻辑/案例详细/源码步骤
The development of a blockchain wallet system involves multiple aspects, and the following is the detailed logic for developing a blockchain wallet system:
|
人工智能 算法 安全
  DAPP互助模式开发?全合约逻辑详细开发方案
数字化时代的今天,互联网已经渗透到了生活的方方面面,人们对于网络互助模式的需求也日益增长。
|
7月前
|
监控 供应链 安全
dapp智能合约只涨不跌系统开发步骤详细/开发案例/功能需求/方案项目/源码功能
需求分析:明确系统的功能需求和业务逻辑。确定系统需要支持的资产类型、交易规则和逻辑限制等。
|
7月前
|
存储 安全 算法
DAPP智能合约项目系统开发原理|详情方案
智能合约是区块链的核心技术之一,它可以帮助我们实现自动化和去中心化微。
|
存储 开发框架 安全
dapp去中心化大小公排项目系统开发案例详情丨规则玩法丨需求逻辑丨方案项目丨源码程序
区块链技术的去中心化应用(DApp)开发在近年来逐渐受到广泛关注。大小公排互助系统是一种较为流行的DApp模式之一,其基本特点是参与者按照加入顺序依次排队,
dapp丨defi代币合约质押项目系统开发逻辑详细/规则说明/案例设计/步骤细节/源码程序
The smart contract liquidity mining system is a financial application system based on smart contract technology, aimed at providing liquidity and receiving rewards by injecting users' funds into the liquidity pool and locking them in the smart contract.
|
安全 Go 区块链
区块链游戏链游系统开发功能详情丨方案逻辑丨开发项目丨案例分析丨源码规则
 In recent years, with the continuous development of blockchain technology, NFTs (non homogeneous tokens) and DAPPs (decentralized applications) have emerged in the gaming industry.
|
存储 移动开发 算法
dapp哈希竞猜链上游戏系统开发案例规则/方案介绍/项目逻辑/源码平台
  Hash,一般翻译做散列,或音译为哈希,是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。