eos操作系统_EOS基础全家桶(十一)智能合约IDE-EOS_Studio
簡介
我們馬上要進(jìn)入智能合約的開發(fā)了,以太坊最初提供了智能合約的功能,并宣告區(qū)塊鏈進(jìn)入2.0時代,而EOS的智能合約更進(jìn)一步,提供了更多的便利性和可能性。為了進(jìn)一步了解智能合約,并進(jìn)行開發(fā),我們需要先準(zhǔn)備好智能合約的開發(fā)環(huán)境,工欲善其事必先利其器,有了好的開發(fā)環(huán)境,可以加快我們的開發(fā)速度,降低bug率。
EOS的IDE介紹
EOS的智能合約是使用C++編寫的,而編譯是使用EOSIO官方出品的eosio.cdt來完成,所以最簡單又最復(fù)雜的IDE就是一個編輯器+cdt工具。
簡單是因為你只需要一個記事本軟件,再裝好eosio.cdt工具,配合命令行,就可以完成合約的開發(fā)了。
復(fù)雜是因為你如果需要更好的智能提示、縮進(jìn)、換行、自動填充和代碼關(guān)聯(lián)……你需要自行安裝很多插件并配置語言庫等。
這次我們先介紹一個EOS中相對成熟的IDE環(huán)境,EOS Studio,使用現(xiàn)成的,而且配置很少,算是一個比較適合入門的工具了,但是沒有本地環(huán)境穩(wěn)定,算是各有千秋吧。
EOS Studio介紹
先給出官網(wǎng)地址,https://www.eosstudio.io/,可以說這是目前最成熟的EOS智能合約開發(fā)IDE了,圖形化的界面,支持代碼編輯、合約交互和鏈網(wǎng)絡(luò)管理等。就算你不開發(fā)智能合約,也可以使用它來查主網(wǎng)數(shù)據(jù)或者調(diào)用合約。
之前我們說過EOS的運行環(huán)境目前是不支持windows的,所以windows上只能通過docker來運行。那么,EOS Studio提供了Mac、Windows和Linux的安裝程序,一想便知是借助了docker技術(shù)來實現(xiàn)的。
借助docker技術(shù),使得EOS的開發(fā)環(huán)境的搭建變得更加的簡潔和便利,你可以更方便的更換EOSIO主程序和CDT的版本,也可以更加純凈的安裝和刪除。
而EOS Studio提供了兩種使用方式,一種是WebIDE,可以直接在瀏覽器中進(jìn)行開發(fā),這種的使用體驗將更接近于以太坊的remix,可以讓開發(fā)人員在任何有網(wǎng)絡(luò)的地方進(jìn)行合約修改和調(diào)用。另一種就是傳統(tǒng)的應(yīng)用程序,安裝到本地操作系統(tǒng)中,提供更加完整的IDE功能和測試的功能。
WebIDE
介紹
打開官網(wǎng),正中間醒目的按鈕Launch EOS Studio Web就是WebIDE的入口。
如果你無法顯示IDE的內(nèi)容,可能需要借助工具|科|學(xué)|上|網(wǎng)|才能打開。
主頁面提供了很多便于初學(xué)者學(xué)習(xí)的功能,比如開發(fā)教程啊、EOS官方合約的源碼,還有其他人開源出來的合約等。
網(wǎng)絡(luò)管理
我們先來切換一下網(wǎng)絡(luò),默認(rèn)是Cloud,是WebIDE自用的網(wǎng)絡(luò),等會兒我們登錄再使用,先切換到主網(wǎng)(Mainnet)來看看其他功能吧。
切換以后可以看到主網(wǎng)的基本信息和目前最新出塊信息了。
合約頁
切換了主網(wǎng),我們來看看導(dǎo)航欄的合約功能,默認(rèn)選中的是eosio,也就是EOS的系統(tǒng)合約賬號。
這個列表可以收藏我們關(guān)注的合約,這里我們先看看eosio合約吧。點擊eosio進(jìn)入合約頁面。
合約頁面功能豐富,可以同時打開多個合約,每個合約里可以進(jìn)行action的調(diào)用、table的查詢
如果你想調(diào)用action,那么你需要先登錄,然后還有打開scatter,再完成網(wǎng)頁上scatter的登錄,然后你就可以使用你的私鑰進(jìn)行簽名了,這部分我稍后再介紹。
賬號頁
我們現(xiàn)在來看看導(dǎo)航欄的賬號功能,默認(rèn)選中的還是eosio。
這里還提供了創(chuàng)建賬號的功能,我們之前說過了EOS創(chuàng)建賬號的特殊性,所以這里也需要你登錄scatter后才能創(chuàng)建。
賬號頁的功能比較類似于區(qū)塊鏈瀏覽器,都是和賬號相關(guān)的信息和交易。
不過界面上還是提供了兩個實用功能,一個是轉(zhuǎn)賬,一個是key管理。
登錄賬號
為了進(jìn)一步演示W(wǎng)ebIDE的功能,我們現(xiàn)在需要登錄,點擊導(dǎo)航欄上的人像,選擇log in。
這里使用的是github的賬號授權(quán)登錄,因為WebIDE的合約存儲是依賴于github的,所以直接使用了github來作為賬號登錄。
登錄以后,我們也順帶把scatter登錄了,點擊底部欄左側(cè)鑰匙旁邊,然后授權(quán)scatter進(jìn)行登錄。
項目管理
登錄后我們就可以使用項目管理的功能了,默認(rèn)肯定是沒有項目的,你可以通過首頁的鏈接打開他人的或者官方的合約,也可以新建一個合約,
我這里已經(jīng)有兩個合約了,一個是我之前測試寫的candy,一個是EOS官方的token合約。這里我們再新建一個test合約,點擊New輸入合約名即可。
我們看到,默認(rèn)的為我們創(chuàng)建了頭文件test.hpp和源碼實現(xiàn)test.cpp,另外的.eosproj是項目文件,自動生成了一個README.md文件,他連abi和wasm文件都幫我們生成好了,不過是空文件。
項目配置
點擊項目目錄上的齒輪按鈕進(jìn)入項目的設(shè)置頁面。
里面包含了兩部分,構(gòu)建配置和部署配置。這里具體的配置我先不做說明,在后面我們具體將合約的編譯和發(fā)布的時候再詳細(xì)說明。
編譯
WebIDE的編譯是通過請求其服務(wù)器上的服務(wù)進(jìn)行編譯,我們點擊錘子圖標(biāo)進(jìn)行編譯。
然后等待構(gòu)建成功就行了,這時abi和wasm文件就生成好了。
WebIDE中的構(gòu)建有時不穩(wěn)定,在我寫這篇文章的時候就遇到了500錯誤或者編譯很久無返回。
部署
我們需要先做一些準(zhǔn)備工作。
- 導(dǎo)入私鑰
首先是導(dǎo)入私鑰,點擊底部欄左下角的鑰匙圖標(biāo)。
打開了key管理頁面,我們將要部署合約的賬號私鑰導(dǎo)入。
這里我們導(dǎo)入了官網(wǎng)testnet中我的一個賬號hvzwqywduhbu的active私鑰,這個賬號已經(jīng)購買了足夠的內(nèi)存和其他資源。
- 切換網(wǎng)絡(luò)
切換到需要部署合約的賬號所在的網(wǎng)絡(luò),我們這里使用Block.one,也就是官方testnet。
- 收藏合約賬號
打開賬號頁面,輸入賬號名,并收藏。我們這里使用的是hvzwqywduhbu,在搜索框搜索,然后點擊右側(cè)的五角星收藏。
- 部署
合約已經(jīng)編譯成功后,abi和wasm文件準(zhǔn)備就緒了,我們直接點擊docker圖標(biāo)進(jìn)行部署。
然后選擇賬號,這里我們選擇hvzwqywduhbu。
最后就等待部署成功即可。
本地IDE
安裝EOS Studio到本地操作系統(tǒng),可以選擇對應(yīng)的安裝包下載安裝即可。默認(rèn)安裝程序會安裝Docker、EOSIO主程序、CDT和系統(tǒng)合約。在官網(wǎng)首頁里選擇當(dāng)前系統(tǒng)類型然后下載。
安裝
打開安裝程序我們可以看到需要安裝docker,EOSIO主程序,CDT和系統(tǒng)合約。
我們逐個安裝即可。
使用
本地使用方法與WebIDE類似,所以這里不再做重復(fù)介紹。本地有一個優(yōu)勢就是可以自啟一個Local節(jié)點,然后測試合約也會很方便。當(dāng)然,合約的編譯和部署也會更加穩(wěn)定一些。
總結(jié)
EOS Studio最初的設(shè)計其實是非常好的,加上功能也很全面,對于初學(xué)者來說,降低了開發(fā)和使用的門檻。
但是問題也很明顯,提供的云服務(wù)經(jīng)常有報錯,合約的編譯和部署也存在著很多問題,并不穩(wěn)定。
所以在下一篇文章,我還是會介紹傳統(tǒng)的簡單而復(fù)雜的IDE環(huán)境搭建,這也是最服務(wù)開發(fā)人員使用習(xí)慣的IDE環(huán)境,敬請期待。
EOS基礎(chǔ)全家桶(十一)智能合約IDE-EOS_Studio|鏈魚社區(qū)|FishoPark|區(qū)塊鏈技術(shù)|區(qū)塊鏈公司|區(qū)塊鏈開發(fā)|區(qū)塊鏈金融|數(shù)字經(jīng)濟(jì)|區(qū)塊鏈技術(shù)與價值詮釋者?www.fishopark.com更多內(nèi)容請關(guān)注微信公眾號
http://weixin.qq.com/r/OSlSSl7EqQPWrRop93wr (二維碼自動識別)
總結(jié)
以上是生活随笔為你收集整理的eos操作系统_EOS基础全家桶(十一)智能合约IDE-EOS_Studio的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 支付宝基金怎么看大盘多少点
- 下一篇: 瑞康医药股票为什么不涨 这些“小问题”变