主页 > 以太坊钱包imtoken安装 > 以太坊 Dapp 开发
以太坊 Dapp 开发
2021-06-05
名词:
DApp:去中心化应用。 以太坊社区将基于智能合约的应用称为去中心化应用(Decentralized App)。 如果我们将区块链理解为一个不可变的数据库,而将智能合约理解为一个与数据库打交道的程序,那么理解DApp就很容易了。 一个DApp不仅有智能合约(相当于应用程序的后台),例如,它还需要有一个友好的用户界面。 区块链可分为:公有链、联盟链和私有链。 联盟链:本质上还是一条私有链,只是比小组织开发的私有链大以太坊支持图灵完备吗,但没有公链大。 可以理解为公链和私链的一种。 区块链.联盟链的特点:联盟链项目Fabric介绍
Fabric 是一个用于企业应用程序的区块链框架。
以太坊主要是公链。 其实它并不是特别适合企业应用,它也没有权限控制功能。 对于企业来说,主要是HyperLedger Fabric,当然还有R3的Corda。
EVM
EVM(以太坊虚拟机)是以太坊中智能合约的运行环境。 Solidity 之于 EVM 就像它之于 JVM。 EVM 是一个隔离的环境,外界无法触及 EVM 内部运行的代码。
EVM 在以太坊节点上运行。 当我们将合约部署到以太坊网络后以太坊支持图灵完备吗,合约就可以在以太坊网络上运行了。
气体
与云计算类似,占用区块链的资源(无论是简单的转账交易,还是合约的部署和执行)也需要相应的费用。
以太坊使用 Gas 机制进行计费。 Gas 也可以被认为是一个工作量单元。 智能合约越复杂(计算步骤的数量和类型、占用的内存等),完成操作所需的 Gas 就越多。
测试网
以太网专用测试网络。 我们可以很容易地在这个网络中获得免费的以太币,缺点是初始化节点需要很长时间。
工具:
Truffle 是一个非常流行的 DApp 开发框架。 它可以帮我们处理很多琐碎的事情,让我们可以快速开始编写代码-编译-部署-测试-打包DApp的流程。 Geth 是一个以太坊客户端,也可用于创建您自己的以太坊私有测试网络(通常也称为私有链)。 我们可以将其作为测试环境来开发、调试和测试智能合约。 Remix -Solidity IDE Remix 是一个基于浏览器的 Solidity,你不需要安装 Solidity。 作用是将solidity代码转化为区块链中世纪执行的字节码,相当于一个编译器。 Ganache 用于模拟区块链环境。 它在本地使用内存模拟的以太坊区块链环境,更加方便快捷。 开发合约时,在Ganache中测试通过后即可部署到Geth节点。 truffle suite:类似于Android studio。 包含truffle、Ganache和drizzle(接口,相当于前端) 注:可以使用5或者2+3开发,目前社区推荐5。
参考:
【解析】最流行的3款DAPP浏览器及其原理——简书智能合约开发环境搭建与Hello World Contract| 简单区块链|
总结:
以太坊是一个图灵完备的平台,可以让我们很方便的使用区块链技术开发去中心化的应用。 在这个应用程序中,Solidity 用于编写与区块链交互的智能合约。 合约写好后,我们需要使用以太坊客户端部署并运行带有余额的账户的合约(使用Truffle框架可以更好的帮我们做这些事情)。 为了方便开发,我们可以使用Geth或者Ganache搭建测试网络。
分类:
技术要点:
相关文章: