我连敲3年代码, 工资却不如刚入职的TA!

以太坊通过EVM技术使全球节点形成统一计算平台,支持智能合约运行。Solidity开发简单,但需注意细节。智能合约通过编辑器及RPC调用部署于以太坊网络,执行需消耗gas,确保网络维护。开发者可通过创建DApp获得收益。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以太坊让世人第一次知道了智能合约的概念,为了支持智能合约,以太坊必须把自己变的特别像一台计算机,那么全球的节点连接到一起,怎么能像一个计算机呢?那就是使用 EVM(以太坊虚拟机)技术,让每个节点的链表上可以运行智能合约的指令。全球的以太坊节点连接起来,也就形成了全球计算机。


对有一定编程经验的人来说,Solidity 开发绝对不是什么难事。Solidity 确实极容易上手,但是确实有很多细节需要注意的。一个智能合约是怎样部署到以太坊网络的呢?


640?wx_fmt=png


以太坊智能合约可以通过编辑器经过rpc远程调用(默认用8545端口)发布到geth节点上,最终在以太坊网络中运行。


众所周知,我们在以太坊上执行智能合约是需要消耗 gas 的,也就是说没有以太是不能运行的,这对很多童鞋来说表示难以理解。其实这涉及到经济系统的利益问题,我们执行了一个指令,整个网络都要同步数据,而这些指令是需要矿工进行打包交易的,如果矿工的利益不能保证,最后也就将导致整个网络无人维护。


那么问题又来了,矿工有利益,开发者的收益如何实现呢?这就要具体问题具体分析,有些需求是为了保证数据存储在区块链上永不丢失,这个是保存类价值。对于开发者来说,开发出来爆款的 DApp 就是最大的收益,参考之前火爆的加密猫。


TPS 较低也是阻碍区块链发展的一大原因,这是区块链的架构决定,达成共识方面本就需要时间。作为应用的开发者来说,应该让用户有更好的体验。对于一个未确认的交易,我们可以采用监控事件的方式进行处理,这就是一个异步模式,这个事件其实类似于我们平常写程序里经常使用的 print。


合约代码如下:

640?wx_fmt=png


js代码中添加事件的处理(map_event.js)

640?wx_fmt=png


运行时启动geth需要注意参数:

geth --datadir ./data --networkid 15 --port 30303 --rpc --rpcaddr 0.0.0.0 --rpcport 8545 --rpcvhosts "*" --rpcapi 'db,net,eth,web3,personal' --rpccorsdomain "*" --ws --wsaddr "localhost" --wsport "8546" --wsorigins "*" --nat "any" --nodiscover --dev --dev.period 1 console 2> 1.log


运行效果如下:

640?wx_fmt=png



如何从0到1 ,转型区块链?


有人说区块链即未来,准备好成为一名区块链工程师了吗?最后做个软广,而为了避免漫无目且零散地学习,在这里,我推荐下文中柏链道捷和 优快云 学院联合出品《以太坊DApp高薪实战》,通过 2 个月的系统学习,目标是成为优秀的区块链工程师(不是套路,仅为推荐)。


课程内容由区块链通证派孟岩领衔专门化课程研发队伍,紧密对接以太坊官方资源,封闭自主研发课程体系与项目案例,萃取精华内容,保证知识体系连贯、系统,逻辑严密,学习路径最优。


联系 优快云 学院区块链老师,获取一对一专属服务

(包括:IT 职场规划服务/专属折扣)

640?wx_fmt=png

(我们的课程服务)

☟☟☟

640?wx_fmt=png

联系 优快云 学院区块链老师,获取一对一专属服务

(包括:IT 职场规划服务/专属折扣)

640?wx_fmt=png


推荐阅读


点击“阅读原文”,快速报名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值