以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads

布朗尼(Brownie):以太坊的智能合約基礎框架_CONT:SunContract

Author:

Time:1900/1/1 0:00:00

編者按:本文來自量化踢馬河,Odaily星球日報經授權轉載。一提到到布朗尼,可千萬不要以為就是那種黑色巧克力味的美味小蛋糕,這里說到的布朗尼,指的是以太坊上,名為布朗尼的智能合約基礎框架。布朗尼用于開發以太坊智能合約,其穩健性和易于使用性都非常的高,常被用來進行:部署:自動將許多合同部署到區塊鏈上,初始化或者集成它們所需的任何交易。交互:編寫腳本,或者使用控制臺與主網上的合同進行交互,或是在本地環境中進行快速測試。調試:在事務恢復時獲取詳細信息,以幫助您快速查明問題。測試:用Python編寫單元測試,并基于堆棧跟蹤分析評估測試覆蓋率。接下來我們來試著在Solidity中創建一個非常簡單的智能合約,僅公開兩個外部函數getValue和setValue.把這個智能合約保存在文件smart_contract.sol.

接下來通過布朗尼部署此智能合約并與之交互。設定此次嘗試使用的是Python3.7和virtualenv隔離我們的環境。如果沒有安裝Python3.7,可以按照以下步驟操作。

NBA Top Shot推出限量版藏品以紀念勒布朗詹姆斯當選NBA總得分王:金色財經報道,NBA Top Shot與NBA官方及其球員工會(NBPA)合作,為今日勒布朗詹姆斯當選NBA歷史總得分王的時刻推出限量 99 份的藏品Legendary LeBron James Anthology Moment。NBA Top Shot對詹姆斯的球員排行榜上的前25名收藏者進行快照并空投該藏品,此外還將在2月17日4:00 再次進行快照并向新的前25名用戶空投。剩余49份將以盲盒形式供所有用戶進行抽獎。[2023/2/9 11:55:55]

我們將會使用Ganache,它是用于以太坊開發的個人區塊鏈。你也可以改為安裝ethereum-testrpc,但會導致無法運行圖形界面。安裝Ganache時,要按照步驟進行。為你的Solidity項目創建虛擬環境。此處已創建,并命名為TestBrownie.安裝布朗尼。

NBA巨星勒布朗·詹姆斯申請NFT相關商標:3月10日消息,據Mike Kondoudis律師在推特上披露的文件,NBA巨星勒布朗·詹姆斯(LeBron James)已經申請了四個與NFT相關的商標。有關NFT的具體信息未披露。此前2月份,他曾于美國最大的體育賽事超級碗期間出現在Crypto.com的廣告中。(Coiningape)[2022/3/10 13:48:09]

要初始化一個空項目,先從創建一個新文件夾開始。在該文件夾中,鍵入:

項目結構每個布朗尼項目均含以下文件夾:contracts/:合同來源interfaces/:接口源scripts/:用于部署和交互的腳本tests/:用于測試項目的腳本brownie-config.yaml:項目的配置文件下面這些文件夾也由布朗尼創建,并在內部用于項目管理,不可編輯或刪除。build/:項目數據,例如編譯器工件和單元測試結果reports/:在GUI中使用的JSON報告文件編譯smart_contract.sol在contracts目錄中復制您的智能合約。編譯contracts/項目子文件夾中的所有合同源:

NBA Top Shot中勒布朗·詹姆斯的球星卡以20.8萬美元售出,創歷史新高:2月23日,NBA Top Shot中勒布朗·詹姆斯的球星卡以20.8萬美元售出,創歷史新高。[2021/2/23 17:43:20]

每次編譯器運行時,布朗尼都會將每個合同源的哈希值與現有已編譯版本的哈希值進行比較。如果合同沒有更改,則不會重新編譯。如果你希望強制重新編譯整個項目,請使用browniecompile–all。如果要編譯具有其它版本的Solidity合同,只需要在.sol文件的使用說明中提及該合同即可。如果不存在,它將自動安裝。此處應該注意:編碼器的設置位于brownie-config.yaml。

修改任何編譯器設置將會導致項目的完全重新編譯。如果在配置文件中設置了編譯器版本,則將使用該版本來編譯項目中的所有合同。版本應以格式的字符串形式給出0.x.x.如果版本設置為null,則布朗尼會查看每個合同的版本使用程序,并使用已安裝的最新匹配編譯器版本。關于evm_version,布朗尼根據編譯器設置規則集。Byzantium:Solidity<=0.5.4Petersburg:Solidity>=0.5.5<=0.5.12Istanbul:Solidity>=0.5.13,Vyper你也可以手動設置EVM版本。有效的選項為byzantium,constantinople,petersburg和istanbul.還可以使用EthereumClassic規則集atlantis和agharta,在傳遞給編譯器之前,它們會轉換為等效的以太坊。注意:布朗尼支持的Solidity版本>=0.4.22和Vyper版本0.1.0-b16。成功編譯后,布朗尼將SimpleContract.json在builds/contract文件夾中創建一個文件。部署打開brownie-config.yaml,它有一個網絡部分,你可以自定義現有網絡,也可以在網絡下創建一個新塊。此處使用在端口7545上運行的GanacheGUI。

動態 | 加拿大喬治布朗學院將為學生提供區塊鏈技術綜合證書:據Cryptoslate報道,根據一份新聞稿,加拿大喬治布朗學院正在為即將入學的學生推出區塊鏈發展計劃,將成為第一所提供區塊鏈技術綜合證書的加拿大學院。區塊鏈開發計劃將向學生介紹區塊鏈技術,其架構和行業應用。此外,該計劃的課程由目前從事分布式總賬技術(DLT)項目的行業專業人士開發。[2018/8/29]

在網絡下創建一個私有塊。

保存此文件。現在使用布朗尼控制臺部署編譯的智能合約。它與常規Python解釋器非常相似。從項目文件夾中,通過鍵入以下內容加載它:

AQR Capital Managemen董事總經理埃隆·布朗:比特幣將刺激貸款行業:彭博社:比特幣將刺激貸款行業,AQR Capital Management董事總經理埃隆·布朗(Aaron Brown)表示,40%的比特幣掌握在大約1000人手中,這些“數字百萬富翁”需要房子、豪車和游艇。他估計,如果10%的數字貨幣持有人會選擇使用比特幣作為抵押品,那么將會形成一個數百億美元的貸款規模。[2017/12/14]

使用在GanacheGUI上可見的賬戶來交叉檢查輸出中的賬戶。

每個單獨的賬戶都由Account可以執行操作的對象表示,例如查詢余額或發送ETH。

每個可部署的合同和庫都有一個ContractContainer用于部署新合同和訪問現有合同。所有已編譯的合同都可以作為同名變量使用。

部署帶有賬戶的合同0:

如果鍵入SimpleContract,則可以看到SimpleContract作為ContractContainer對象的已部署實例的列表。

相互作用參閱此合同上可用的方法:

從在智能合約中設置變量開始。

每個交易返回一個TransactionReceipt對象。該對象包含有關交易的所有相關信息,以及各種有助于恢復交易的調試方法。要獲取有關交易的可讀信息,使用TransactionReceipt.info()。

檢查時使用:

以上就是關于布朗尼的基礎知識,如果有興趣,可用自行進行嘗試。本文編譯自Graphicaldot的“LearntheBasicsofBrownie”。

Tags:CONACTTRACONTConvex FinanceSACTUnited Emirate Decentralized CoinSunContract

火幣網下載官方app
比特幣秘史(十):最夸張的比特幣估價是多少?_CAF:比特幣

2017年加密貨幣市場漲勢驚人的時候,大家都在細數比特幣那些年的豐功偉績:從0美元漲到5000美元,用了3206天;從5000美元漲到10000美元.

1900/1/1 0:00:00
51%攻擊終于可以被消除了?以太坊創始人Vitalik為此提出一種新概念_COI:區塊鏈通俗易懂的講解

編者按:本文來自巴比特資訊,編譯:kyle,星球日報經授權發布。51%攻擊是對由控制超過一半計算能力的一組礦工組織的區塊鏈的攻擊.

1900/1/1 0:00:00
EOS周報 | EOS開發新儲存資源DISK;EOS Staking市值被Tezos超越(2.17-2.24)_EOS:leostoken

本周大事記 上周,EOS備受矚目的社交產品VOICE已正式開始美國內測,用戶評價呼聲較高。二級市場上,EOS周內跌幅1.13%,現報4.36美元.

1900/1/1 0:00:00
銷毀一半未挖代幣后算力下降30%,SERO還安全嗎?_SER:Timeseries AI

最近,“銷毀潮”似乎蔓延到了公鏈。2月18日,隱私公鏈SERO超零幣發布公告稱,通過社區和基金會決議,經社區及基金會決議,將銷毀剩余一半未產出代幣,包括此前挖礦中銷毀的部分,共計約3.5億枚,這.

1900/1/1 0:00:00
DAO的衰落與復興_DAO:DAOs

這是DGOV的RebeccaRachmany寫的一篇關于DAO的“不完全近況報告”,2019年以及剛剛開始的2020年所發生的一些事件令她頗為沮喪,正如她所言的“衰落”.

1900/1/1 0:00:00
周一高周五低:比特幣價格每日每小時的推移模式稿_Poloniex:poloniex交易平臺app

來源/LongHash交易者們最關心的問題就是:什么時候能買,什么時候能賣?目的自然是高拋低吸,但難就難在你怎么確定什么時候是“高”、什么時候是“低”呢?為了找出比特幣價格推移的模式.

1900/1/1 0:00:00
ads