關(guān)注?EOS Asia?了解每周EOS資訊
版權(quán)聲明:EOS?GO譯文
原文鏈接:https://www.eosgo.io/blog/eos-studio-local-dev/
EOS?Studio是用于EOSIO?dApp開發(fā)的圖形集成開發(fā)(IDE),通過在應(yīng)用程序中集成EOSIO所需的各種工具炉峰,從而為dApp開發(fā)提供了功能強(qiáng)大且易于使用的環(huán)境。其主要功能包括EOSIO定制代碼的編輯谱仪、內(nèi)置構(gòu)建及部署、交互式合同的檢查敬尺、EOSIO版本管理等等砂吞。開發(fā)人員們通過使用EOS?Studio可以完成本地開發(fā)、測試網(wǎng)(Kylin和Jungle)上的調(diào)試概而、EOS主網(wǎng)上部署的整個(gè)開發(fā)過程。
EOS?Studio目前可在Mac?OS囱修、Linux及Windows上使用赎瑰,可通過以下鏈接下載更新安裝包:
https://download.eosstudio.io/mac
https://download.eosstudio.io/linux
http://download.eosstudio.io/win
在本系列教程中,我們將會(huì)從EOS?Studio的主要功能以及DApp的開發(fā)方法等方面進(jìn)行介紹破镰,熟悉EOS的開發(fā)人員還可以借此學(xué)習(xí)一下如何通過使用EOS?Studio從而減少繁瑣的工作以及怎樣提高開發(fā)效率餐曼。當(dāng)然,請先確認(rèn)好你已下載并安裝了EOS?Studio鲜漩。
在教程#1中源譬,我們已經(jīng)對EOSIO的必備工具的安裝情況基本了解。因此在本文中瓶佳,我們將對如何使用EOS?Studio完成EOSIO智能合約的開發(fā)流程進(jìn)行講解习寸,內(nèi)容包括:
創(chuàng)建/打開一個(gè)項(xiàng)目
建立/編譯智能合約
啟動(dòng)本地EOSIO節(jié)點(diǎn)
創(chuàng)建本地帳戶
部署智能合約
執(zhí)行智能合約
對于如何實(shí)際編寫智能合約這部分暫且不詳細(xì)介紹坊饶,因?yàn)榱私夂霞s開發(fā)的整個(gè)過程更為重要津函,否則,你將無法執(zhí)行剛剛編寫好的代碼。而對于編寫EOSIO智能合約有所了解的人們來說乐疆,通過本文的概述則能夠更加清楚EOS?Studio的主要功能。
1.創(chuàng)建/打開一個(gè)項(xiàng)目
在一切安裝完成準(zhǔn)備就緒時(shí),你會(huì)看到一個(gè)空項(xiàng)目的屏幕,你可以在其中創(chuàng)建一個(gè)新的項(xiàng)目或打開現(xiàn)有的項(xiàng)目撩匕。通過EOS?Studio的引導(dǎo)創(chuàng)建新項(xiàng)目非常方便扁凛,只需要輸入合約名稱并未項(xiàng)目選擇一個(gè)文件夾即可洗出,EOS?Studio將自動(dòng)生成初始的cpp_和_hpp文件,其中包含一些“hello?world”智能合約的基本代碼隘梨。
代碼編輯器集成了一些最實(shí)用的合約開發(fā)工具垮斯,例如:EOSIO特定語法的突出顯示和自動(dòng)完成。在左上方的工具欄菜單中剂习,有一些按鈕可以協(xié)助你輕松執(zhí)行常見的操作,如創(chuàng)建新的合約片部、編譯合約及部署合約缘回。
為了使EOSIO項(xiàng)目更具可配置性,EOS?Studio定義了一個(gè).eosprojfile啦吧,類似于節(jié)點(diǎn)項(xiàng)目的package.json文件,用于描述項(xiàng)目范圍的參數(shù)和設(shè)置极阅。而對于通過EOS?Studio所創(chuàng)建的項(xiàng)目尺铣,會(huì)被默認(rèn)設(shè)置生成.eosproj文件争舞。否則凛忿,你需要指定一些配置,以便編譯和部署工作可以正常進(jìn)行竞川。
EOS?Studio提供了一個(gè)Project?Settings頁面店溢,可以輕松查看和修改.eosproj文件叁熔,通過單擊工具欄菜單中的cog按鈕便可訪問該文件。第一為定義項(xiàng)目的主文件逞怨,編譯過程將從此文件開始者疤。?第二為合約名稱項(xiàng)福澡,對應(yīng)于CDT命令行的--contractattribute叠赦,也是編譯過程中所必需的。?以下各項(xiàng)則為可選項(xiàng)革砸,通常用于編譯中的某些高級配置除秀。?可以參考CDT命令行文檔以了解如何使用斥扛。
在以下部署設(shè)置中瓢剿,可以將智能合約部署到指定的帳戶。?EOS?Studio支持本地度苔、Kylin/Jungle測試網(wǎng)以及EOSIO主網(wǎng)效拭,因此可以單獨(dú)指定所要部署的位置暂吉。?例如:如果我們在本地配置中輸入newcontract,你將會(huì)看到工具欄中部署按鈕旁也會(huì)顯示該名稱缎患,只需單擊按鈕慕的,EOS?Studio便會(huì)將最新編譯的代碼部署到新的賬戶。
2.建立/編譯智能合約
通過單擊build_button挤渔,EOS?Studio將調(diào)用CDT進(jìn)行編譯并生成_wasm和abi文件肮街,?這些是部署時(shí)要使用到的文件。
EOS?Studio代碼編輯器還有另外一個(gè)非常便利的功能——當(dāng)構(gòu)建錯(cuò)誤時(shí)會(huì)出現(xiàn)提示判导。
由于我們希望將所部署的合約能夠與更為復(fù)雜有趣的合約進(jìn)行交互嫉父,所以需要打開系統(tǒng)合約eosio.token并進(jìn)行編譯。?轉(zhuǎn)到“文件?-?>系統(tǒng)項(xiàng)目?-?>?eosio.token”將其打開眼刃。因?yàn)槭鞘状卧贓OS?Studio中打開該項(xiàng)目绕辖,所以需要進(jìn)行項(xiàng)目設(shè)置,主文件填寫為src?/?eosio.token.cpp擂红,合約名稱填寫為eosio.token仪际,在“部署設(shè)置”中,還要為local_item填寫eosio.token篮条,然后單擊_build按鈕進(jìn)行編譯弟头,并等待生成wasm和abi文件。
3.啟動(dòng)本地EOSIO節(jié)點(diǎn)
在部署合約之前涉茧,我們還需要啟動(dòng)本地節(jié)點(diǎn)赴恨。?在“網(wǎng)絡(luò)”選項(xiàng)卡下,可以看到以前所安裝的EOSIO伴栓。若要啟動(dòng)本地節(jié)點(diǎn)伦连,只需單擊“開始”按鈕雨饺,在下面的終端中,你將會(huì)看到節(jié)點(diǎn)正在生成塊惑淳。
如果你需要使用其他版本的EOSIO额港,可以點(diǎn)擊右上角的“添加”按鈕來下載安裝其他版本。此外還可通過cog來對nodeos和keosd進(jìn)行其他高級設(shè)置歧焦。
4.創(chuàng)建本地帳戶
在剛剛所啟動(dòng)的運(yùn)行節(jié)點(diǎn)上創(chuàng)建eosio.token賬戶移斩,則需要公鑰:轉(zhuǎn)到帳戶?-?>管理密鑰對并復(fù)制公鑰即可。?若需要使用其他公鑰绢馍,點(diǎn)擊“導(dǎo)入新密鑰”并輸入私鑰向瓷。
然后,轉(zhuǎn)到帳戶?-?>創(chuàng)建帳戶舰涌。?輸入帳戶名稱_eosio.token猖任,粘貼公鑰以創(chuàng)建帳戶。
在“account?tab”輸入賬戶名稱便可查看賬戶的所有信息瓷耙。
5.部署智能合約
一起準(zhǔn)備就緒就可以開始部署合約了朱躺。返回代碼編輯器并點(diǎn)擊部署按鈕(eosio.token旁邊)。?EOS?Studio將為你完成必要的操作搁痛,包括為_setabi_actions調(diào)用setcode长搀。
當(dāng)合約部署完成后,返回帳戶頁面落追,你會(huì)在交易中看到setcode和setabi的記錄盈滴,表明合約已部署在鏈上了。
6.執(zhí)行智能合約
接下來就到了執(zhí)行合約的步驟轿钠。?打開“合同”選項(xiàng)卡巢钓,然后在導(dǎo)航欄中鍵入eosio.token以打開合約。在EOS?Studio可以有兩個(gè)方法查看合約:1疗垛、通過左側(cè)執(zhí)行操作面板症汹;2、通過右側(cè)查詢數(shù)據(jù)表面板贷腕;每個(gè)面板的左上角都有個(gè)下拉菜單背镇,分別可以輕松查看所有操作記錄。
在開始使用eosio.token合約之前泽裳,首先需要?jiǎng)?chuàng)建一個(gè)新的令牌瞒斩。在操作下拉菜單中選擇創(chuàng)建操作-?>將發(fā)行者設(shè)置為eosio-?>最大供應(yīng)量為1000?EOS-?>單擊頂部的開始按鈕以執(zhí)行該操作。
接下來轉(zhuǎn)到右側(cè)表格面板并下拉列表選擇stat涮总,然后在范圍字段中輸入EOS-?>點(diǎn)擊刷新之后胸囱,你將會(huì)看到所創(chuàng)建的新EOS令牌。
若想要?jiǎng)?chuàng)建發(fā)布屬于自己的令牌瀑梗,進(jìn)行操作需要先向eosio發(fā)出10個(gè)EOS烹笔,然后可在窗口中查看詳細(xì)信息裳扯。
EOS?Studio支持更改授權(quán)帳戶。打開授權(quán)窗口為actor輸入ineosio谤职,選擇重新運(yùn)行該操作饰豺,便會(huì)看到操作成功的提示。刷新統(tǒng)計(jì)表之后允蜈,便可看到所提供的10個(gè)EOS(已發(fā)布)冤吨。
在修改智能合約時(shí),經(jīng)常需要重復(fù)相同的操作陷寝,并通過不斷刷新列表來查看最新的數(shù)據(jù)情況锅很。大多數(shù)的HTTP?API客戶端都具有存儲(chǔ)呼叫歷史并以書簽形式保存常用參數(shù)其馏,?EOS?Studio也同樣具備此功能凤跑。(針對檢查過往的執(zhí)行結(jié)果或想要使用先前相同的參數(shù)重新運(yùn)行,會(huì)方便快捷不少)點(diǎn)擊界面右上角的時(shí)鐘圖表按鈕叛复,便可通過操作執(zhí)行表來查詢歷史記錄仔引。
除此之外,EOS?Studio還具備將常用參數(shù)保存到書簽的功能褐奥。例如:如果我想反復(fù)向一個(gè)賬戶轉(zhuǎn)賬EOS咖耘,保存即可無需每次都輸入。點(diǎn)擊心形圖標(biāo)選擇添加書簽撬码,你將會(huì)看到合同操作儿倒,授權(quán)程序以及要執(zhí)行的參數(shù),只需輸入名稱然后保存呜笑,之后便可隨時(shí)在書簽中找到并訪問了夫否。
最后,如果要檢查正在執(zhí)行的操作叫胁,請返回帳戶選項(xiàng)卡并刷新凰慈。
以上便是EOSIO合約開發(fā)的相關(guān)流程,其中包括創(chuàng)建項(xiàng)目驼鹅,編譯合同代碼微谓,啟動(dòng)本地節(jié)點(diǎn),創(chuàng)建帳戶输钩,將合約部署到本地節(jié)點(diǎn)以及調(diào)用合約操作等豺型。?在下一篇文章中,我們將展示如何開發(fā)Kylin?/?Jungle測試網(wǎng)和EOS主網(wǎng)买乃。與此同時(shí)?EOS?Studio?還將提供一些方便的操作工具姻氨,使開發(fā)過程更加順暢。?敬請關(guān)注为牍!
如果對EOS?Studio以及本系列教程的任何想法哼绑。請將反饋意見發(fā)給我們岩馍,對于我們改進(jìn)EOS?Studio有很大幫助。?
網(wǎng)站:https://www.eosstudio.io
電報(bào):https://t.me/eosstudio
免責(zé)聲明:上述作者表達(dá)的觀點(diǎn)不一定代表EOS?GO及EOS?Asia的觀點(diǎn)抖韩。?EOS?GO是一個(gè)社區(qū)蛀恩,其中EOS?GO博客是作者表達(dá)其不同想法和觀點(diǎn)的平臺(tái)。
我們的目標(biāo)
我們確保EOS作為一種健康的社區(qū)驅(qū)動(dòng)的公鏈茂浮,維護(hù)EOS生態(tài)双谆,對抗所有想通過把生態(tài)系統(tǒng)私有化為自己爭取利益的人或者組織。
EOS?Asia將把全世界最好的技術(shù)聚合在一起席揽,立志讓人人都能用到區(qū)塊鏈的基礎(chǔ)設(shè)施顽馋。
了解我們
EOS?Asia主頁:https://www.eosasia.one
EOS?Asia瀏覽器:https://www.eosx.io
EOS?Asia官方電報(bào)群:https://t.me/@EOSAsia
EOSInfra官網(wǎng):?https://www.eosinfra.io
EOSInfra官方電報(bào)群:https://t.me/@eosinfra