提醒:因为软件开发行业无明确禁止法规, 该企业仅提供软件开发外包定制服务,项目需取得国家许可,严禁非法用途。 违法举报

链上智能合约系统开发Dapp搭建

更新:2024-10-04 20:09 发布者IP:61.163.144.133 浏览:1次
发布企业
河南漫云科技有限公司商铺
认证
资质核验:
已通过营业执照认证
入驻顺企:
3
主体名称:
河南漫云科技有限公司
组织机构代码:
91410100MA472L6X7B
报价
请来电询价
链上智能合约
链上智能合约系统开发Da
关键词
链上智能合约系统开发Dapp搭建
所在地
郑东新区升龙广场3号楼A座3202
联系电话
15515813000
漫云服务热线
15515813000
联系人
王乾  请说明来自顺企网,优惠更多
请卖家联系我
15515813000

产品详细介绍

   合约是代码(它的功能)和数据(它的状态)的集合,存在于以太坊区块lian的特定地址。合约账户能够在彼此之间传递信息,进行图灵完备的运算。合约依靠被称作以太坊虚拟机(EVM)字节代码(以太坊特有的二进制格式)上的区块lian运行。链上智能合约系统开发搭建询,智能合约daap开发技术。

    合约很典型地用诸如Solidity等语言写成,编译成字节代码上传到区块lian上。

微信图片_20220810165825.png

    以太坊语言

   合约依靠被称作以太坊虚拟机(EVM)字节代码(以太坊特有的二进制格式)上的区块lian运行。合约很典型地用诸如Solidity等语言写成,用以太坊虚拟机编译器编译成字节代码上传到区块lian,合约搭建。

    编译合约

    solidity合约的编译可以通过很多机制完成。

    通过命令行使用solc编译器。

   在geth或eth提供的javascript控制台使用web3.eth.compile.solidity(这仍然需要安装solc编译器)。

    在线Solidity实时编译器。

    建立solidity合约的MeteordappCosmo。

    MixIDE。

    以太坊钱包。

    注意:关于solc和编译Solidity合约代码的更多信息可在此查看。

    在geth设置solidity编译器

    如果你启动了geth节点,就可以查看哪个编译器可用。

    这一指令会返回到显示当前哪个编译器可用的字符串。

    注意:solc编译器和cpp-ethereum一起安装。或者,你可以自己创建。

   如果你的solc可执行文件不在标准位置,可以用—solc标志为solc可执行文件指定一个定制路线。

    或者你可以通过控制台在执行期间设置这个选项:

    编译一个简单合约

    让我们编译一个简单的合约源:

    这个合约提供了一个单一方法multiply,它和一个正整数a调用并返回到a*7。

   注意:编译器通过RPC也能通过web3.js,对浏览器内任何通过RPC/IPC连接到geth的Ðapp可用。

    下面的例子会向你展示如何通过JSON-RPC接合geth来使用编译器。

    Code编译的以太坊虚拟机字节代码

    Info从编译器输出的额外元数据

    Source源代码

    Language合约语言(Solidity,Serpent,LLL)

    LanguageVersion合约语言版本

    compilerVersion用于编译这个合约的solidity编译器版本。

    abiDefinition应用的二进制界面定义

    userDoc用户的NatSpecDoc。

    developerDoc开发者的NatSpecDoc。

   编译器输出的直接结构化(到code和info)反映了两种非常不同的部署路径。编译的以太坊虚拟机代码和一个合约创建交易被发送到区块,剩下的(info)在理想状态下会存活在去中心化云上,公开验证的元数据则执行区块lian上的代码。

   如果你的源包含多个合约,输出会包括每个合约一个入口,对应的合约信息对象可以用作为属性名称的合约名字检索到。你可以通过检测当前的GlobalRegistrar代码来试一下:

    创建和部署合约

   开始这一章节之前,确保你有解锁的账户和一些资金。你现在会在区块lian上创建一个合约,方法是用上一章节的以太坊虚拟机代码作为数据给空地址发送交易。

    注意:用在线Solidity实时编译器或MixIDE程序会更容易完成。

    所有的二进制数据都以十六进制的格式序列化。十六进制字符串总会有一个十六进制前缀0x。

   注意:注意arg1,arg2,…是合约构造函数参数,以备它要接受参数。如果合约不需要构造函数参数,就可以忽略这些参数。

   值得指出的是,这一步骤需要你支付执行。一旦交易成功进入到区块,你的账户余额(你作为发送方放在from领域)会根据以太坊虚拟机的gas规则被扣减。一段时间以后,你的交易会在一个区块中出现,确认它带来的状态是共识。你的合约现在存在于区块lian上。以不同步的方式做同样的事看起来是这样:

    与合约交互

   与合约交互典型的做法是用诸如eth.contract()功能的抽象层,它会返回到javascript对象,和所有可用的合约功能一起,作为可调用的javascript功能。描述合约可用功能的标准方式是ABI定义。这个对象是一个字符串,它描述了调用签名和每个可用合约功能的返回值。

   现在ABI中具体说明的所有功能调用都在合约实例中可用。你可以用两种方法中的一种来调用这些合约实例上的方法。

   当用sendTransaction被调用的时候,功能调用通过发送交易来执行。需要花费以太币来发送,调用会记录在区块lian上。用这种方式进行的调用返回值是交易散表。

   当用call被调用的时候,功能在以太坊虚拟机被本地执行,功能返回值和功能一起返回。用这种方式进行的调用不会记录在区块lian上,也不会改变合约内部状态。这种调用方式被称为恒定功能调用。以这种方式进行的调用不花费以太币。

   如果你只对返回值感兴趣,那么你应该用call。如果你只关心合约状态的副作用,就应该用sendTransaction。

   在上面的例子中,不会产生副作用,sendTransaction只会烧gas,增加宇宙的熵。

    测试合约和交易

   你通常需要低级的测试策略,为交易和合约排除故障。这一章节介绍了一些你可以用到的排错工作和做法。为了测试合约和交易而不产生实际的后果,在私有区块lian上测试。这可以通过配置一个替代网络ID(选择一个特别的数字)和/或不能用的端点来实现。推荐做法是,为了测试你用一个替代数据目录和端口,这样就不会意外地和实时运行的节点冲突(假定用默认运行)


所属分类:中国商务服务网 / APP开发
链上智能合约系统开发Dapp搭建的文档下载: PDF DOC TXT
关于河南漫云科技有限公司商铺首页 | 更多产品 | 联系方式 | 黄页介绍
成立日期2019年07月08日
法定代表人张磊
注册资本1000
主营产品元宇宙系统开发、元宇宙源码、NFT数字藏品软件开发,nft智能合约开发,盲盒系统app开发搭建,nft源码系统,网络技术开发,软件技术开发,软件定制,技术开发,信息技术服务
经营范围网络技术开发;软件技术开发;电子产品技术咨询、技术开发;信息技术服务;国内货运代理;国际货运代理;普通货物道路运输;从事货物和技术的进出口业务;供应链管理;物流信息咨询;电信业务代办;教育信息咨询;企业管理咨询;企业营销策划;仓储服务(易燃易爆及危险化学品除外);网页设计;计算机系统集成;销售:计算机软件及辅助设备、通讯设备、电子设备、网络设备、多媒体设备。
公司简介河南漫云科技有限公司从事APP小程序软件定制开发,自成立以来已经服务全国5000+企业,为它门提供了近30000+软件程序技术服务支持。目前开发的有淘宝客、数字藏品NFT、dapp、农场软件、上链,元宇宙,盲盒系统、商城系统、、社交直播带货pk系统、求职招聘系统、本地生活服务信息发布平台、跑腿外卖系统、打车代驾顺风车系统、拼团盲盒系统、任务悬赏系统、跨境电商亚马逊ERP系统等全行业软件开发定制,源 ...
公司新闻
我们的其他产品
顺企网 | 公司 | 黄页 | 产品 | 采购 | 资讯 | 免费注册 轻松建站
免责声明:本站信息由企业自行发布,本站完全免费,交易请核实资质,谨防诈骗,如有侵权请联系我们   法律声明  联系顺企网
提醒:因为软件开发行业无明确禁止法规, 该企业仅提供软件开发外包定制服务,项目需取得国家许可,严禁非法用途。 违法举报
© 11467.com 顺企网 版权所有
ICP备案: 粤B2-20160116 / 粤ICP备12079258号 / 粤公网安备 44030702000007号 / 互联网药品信息许可证:(粤)—经营性—2023—0112