我目前正在学习 Solidity 以及如何在以太坊区块链上开发 Dapps,我的理解是不是正确?

Posted

技术标签:

【中文标题】我目前正在学习 Solidity 以及如何在以太坊区块链上开发 Dapps,我的理解是不是正确?【英文标题】:I'm currently learning Solidity and how to develop Dapps on Ethereum blockchain, is my understanding correct?我目前正在学习 Solidity 以及如何在以太坊区块链上开发 Dapps,我的理解是否正确? 【发布时间】:2021-12-21 18:14:26 【问题描述】:

所以基本上,智能合约是您为分散式应用程序或 Dapp 编写的业务逻辑/后端代码,并将其部署到以太坊区块链。然后,每当您想在 Dapp 上执行计算(例如更改变量或执行更改智能合约的某个参数的函数)时,您将合约交易发送到以太坊网络,该网络将其路由到适当的节点,并与有了它,你发送了一些以太币。

以太坊网络上的一名志愿者利用他们的计算能力将该合约交易添加到以太坊区块链中,“就像挖矿一样”,并收到您发送的以太币作为完成任务的奖励。这很像比特币挖矿的工作原理,只是在这种情况下,矿工借出他们的硬件来为你的 Dapp 执行计算任务。

所以最终发生的情况是,每次调用更改智能合约实例内变量/数据的函数时,您都通过向区块链本身添加条目来更改 Dapp 上的数据?所以你可以说,这就像一个 AWS 服务器,只是计算能力不是来自亚马逊,而是来自希望挖掘一些以太币的普通人?

【问题讨论】:

我会说这是一个很好的理解。 【参考方案1】:

我认为你的理解很好,我想补充一些事实。

您还可以简单地从智能合约函数中获取数据,而不仅仅是更改变量/数据。这类函数在solidity代码的函数签名中有view关键字,当你调用这些函数时,你不需要支付以太币,因为它们不会改变数据,只是获取数据。

【讨论】:

以上是关于我目前正在学习 Solidity 以及如何在以太坊区块链上开发 Dapps,我的理解是不是正确?的主要内容,如果未能解决你的问题,请参考以下文章

第一行代码:以太坊-使用Solidity语言开发和测试智能合约

以太坊/Solidity 新手:方便地发送多笔交易

以太坊python中不直观的solidity合约返回值

Solidity 中的事件触发

以太坊 Solidity 的划分

基于以太坊的智能合约solidity学习日记