時間:2022-02-26|瀏覽:555
以太坊的應(yīng)用是以太坊整個生態(tài)市場熱度的支撐,那么如何在以太坊開發(fā)應(yīng)用呢?
從2017年和2018年開始,以太坊的應(yīng)用不斷出現(xiàn),現(xiàn)在形式多樣,但在開發(fā)上可以分類。
區(qū)塊鏈的特點決定了區(qū)塊鏈應(yīng)用程序需要在鏈上部署,因此以太坊上的開發(fā)工具主要是完成鏈上部署的工具。
一般的互聯(lián)網(wǎng)應(yīng)用開發(fā)會有前端和后端,前端只有用戶看到的部分,后端是應(yīng)用的管理部分。對于一個dapp,必須有前端,必須有鏈端,即部署智能合同部分。后端將有一些應(yīng)用程序,而不是應(yīng)用程序前端的管理部分。區(qū)別在于前端顯示的部分是否為了更好的體驗而實現(xiàn)了一些中間優(yōu)化。
目前看到的defi,簡單的nft dapp基本上只有鏈端和前端。本文將列出以太坊的官方參考dapp用于智能合約部署的框架工具和非框架工具的開發(fā)。
開發(fā)智能合約框架
Hardhat(JavaScript)
目前最好的框架之一,支持快速測試,同時提供了最全的教程和最簡單的集成。對于JS框架的開發(fā)者很容易使用,使用Waffle和Ethers.js測試,也可以和OpenZeppelin智能合約插件的可升級直接集成。
Truffle(JavaScript)
Truffle是以太坊智能合同的默認(rèn)開發(fā)框架,為其他工具樹立了標(biāo)準(zhǔn)。與工具一起工作很容易Drizzle和Ganache集成??缮塗ruffle支付團(tuán)隊賬戶,連續(xù)集成訪問智能合同,可視化部署和監(jiān)控。它也可以與OpenZeppelin智能合約插件的可升級直接集成。
Brownie(Python)
Brownie可以說是Python的Truffle,用Python編寫的框架非常簡單干凈,消除了使用JavaScript這個框架可以很容易地處理和部署智能合同帶來的許多麻煩。
Embark
Embark是一個整個DAPP框架是一個全棧區(qū)塊鏈平臺。例如,它可以是Chainlink合約部署到Kovan有一個網(wǎng)絡(luò)UI,允許在GUI中與區(qū)塊鏈和合約進(jìn)行交互。是一個理想的全棧解決方案集成。
Waffle
Waffle被列為智能合同框架,可與任何其他框架一起使用,更原始、更簡單、可定制的框架Hardhat默認(rèn)工具。
Dapp.tools
Dapp.Tools用Haskell支持各種插件的編寫,如OpenZeppelin。雖然設(shè)計極簡,但功能強(qiáng)大。這是一個對命令友好的簡單框架。
Epirus
Epirus像開源這樣的開源項目Truffle還有一種付費升級工具,用于使用Java的Web3實現(xiàn),有對Android支持,在行業(yè)內(nèi)使用Java的智能合約平臺很少。Epirus有利于吸引更多Java工程師進(jìn)入這個行業(yè)。
非框架類開發(fā)工具
OpenZeppelin
OpenZeppelin是為智能合同工程師創(chuàng)建工具的平臺。有一些默認(rèn)設(shè)置,比如ERC20和ERC721工具可以在幾秒鐘內(nèi)導(dǎo)入合同并構(gòu)建代幣。
OpenZeppelin另一個重要方面是其可升級的合同功能。部署一個正在運行的項目意味著必須部署一份代理合同,以支持需要進(jìn)行的任何變更。
Etherscan
Etherscan它是最受歡迎的區(qū)塊瀏覽器。當(dāng)用戶需要查看合同并部署內(nèi)容時,ABI和合同地址。用戶通常很容易找到合同地址,但是他們可以得到它ABI但是很難。大多數(shù)框架都有一些驗證插件。部署智能合同后,可以立即使用Etherscan驗證。確保它可以在你的應(yīng)用程序中使用。
create-eth-app
create-eth-app使用平臺ReactJS為智能合約增加前端。它使用了許多新的React技巧,例如State Hooks,更容易構(gòu)建真正強(qiáng)大的前端。
eth.build
Eth.build以 為中心Web3.0 教育沙盒具有以下特點:無代碼拖動編程、完全開源、直觀地理解以太坊的工作方式
Remix
IDE是基于瀏覽器的IDE,它用于智能合約的開發(fā),也是以太坊智能合約的開發(fā)IDE,對新手很友好。因為是基于瀏覽器的IDE,不需要安裝,也不需要安裝Solidity操作環(huán)境,打開即用。