譯文出自:登鏈翻譯計劃
譯者:翻譯小組
校對:Tiny熊
歡迎來到學習Solidity系列的另一部分。在上一篇文章,我們討論了如何從智能合約中創建另一個智能合約。今天,我們將研究這種情況下的典型用例。
什么是工廠模式?
工廠模式的想法是擁有一個合約(工廠),該合約將承擔創建其他合約的任務。在基于類的編程中,此模式的主要動機來自單一職責原則(一個類不需要知道如何創建其他類的實例),并且該模式為構造函數提供了一種抽象。
UMLdiagramforfactorymethod
圖片來自Wikipedia.
NFT內容創作者的支出較2022年峰值下降98%:金色財經報道,據Token Terminal數據,藝術家收入的減少可能會阻礙新作品的推出,從而導致市場僵化,該市場的交易量已從 2022 年 1 月的 170 億美元下降了 95%。研究人員Nansen表示,當月特許權使用費達到2.69億美元的峰值,但今年7月僅為430萬美元,因為每筆交易支付的費率從高達5%降至0.6%。
區塊鏈技術專家Sei Labs的NFT和游戲增長負責人Phillip Kassab表示,這是一種短視的策略,忽視了這一領域的可持續成功建立在賦予交易者和創作者權力的微妙平衡之上的事實。
Nansen數據顯示,隨著創作者支出大幅下降,NFT藝術家版稅較峰值下降98%。[2023/8/12 16:22:14]
為什么要在Solidity中使用工廠模式?
ESMA:下個重大任務是確保加密巨頭不會忽視MiCA法規:金色財經報道,歐洲證券和市場管理局(ESMA)的官員表示,他們正在努力確保具有里程碑意義的加密貨幣法在27國集團中得到統一實施。Binance的公司結構對歐洲的傳統監管程序構成了挑戰。ESMA正專注于確保FTX案件中凸顯的利益沖突在2024年MiCA上線后不會發生。現在,歐盟監管機構正面臨著下一個重大任務,確保像Binance這樣的巨頭不會忽視MiCA法規。ESMA數字金融和創新團隊高級政策官員Benjamin Burlat表示,“當涉及到像Binance這樣的大公司時,我們關注的一個方面是確保MiCA規則在各成員國以一致的方式實施。”[2023/7/17 11:00:03]
在Solidity中,出于以下原因之一,你可能要使用工廠模式:
Web3金融科技公司Satoshi’s Index將推出新平臺:金色財經報道,提供自動加密投資的Web3金融科技公司Satoshi’s Index即將推出一個全新平臺,可使用NFT提供軟件許可證所有權。該平臺使用個人NFT擁有、交易和銷售軟件產品。每個NFT所有者都可以無限制地使用該公司的金融美元平均成本產品和相應的加密貨幣投資平臺。該代幣通過驗證電子郵件和相應的錢包地址來驗證所有權,以確認用戶擁有此代幣。(Business Wire)[2023/2/22 12:21:07]
如果要創建同一合約的多個實例,并且正在尋找一種跟蹤它們并簡化管理的方法。```contractFactory{Childchildren;functioncreateChild(uintdata){Childchild=newChild(data);children
幣安:不會抵押或借出“鎖定”的狗狗幣:金色財經報道,幣安澄清在其最近推出的工作量證明令牌狗幣和萊特幣的置幣計劃中存放的硬幣將留在交易所,不會用于產生額外收益。
該交易所發言人在一封郵件中表示,LTC和DOGE不存在鏈上股權用于網絡驗證,因為這些都是非股權證明代幣。用戶資金仍歸幣安所有,我們有非常嚴格的風險管理控制,以確保它們的安全。(coindesk)[2022/7/22 2:31:44]
}contractChild{uintdata;constructor(uint_data){data=_data;}}*節省部署成本:你可以先部署工廠,之后在使用時再來部署其他合約。*提高合約安全性(請參閱本文).##如何與已部署的智能合約進行交互在深入探討如何實現工廠模式的細節之前,我想澄清一下我們與已部署的智能合約進行交互的方式。工廠模式是用來創建子合約的,并且我們可能希望調用它們的某些函數以更好地管理這些合約。調用部署的智能合約,需要做兩件事:1.合約的ABI(提供有關函數簽名的信息)。如果合約在同一個項目中。你可以使用import關鍵字將其導入。2.部署合約的地址。舉個例子:
contractA{addressbAddress;constructor(addressb){bAddress=b;}functioncallHello()externalviewreturns(stringmemory){Bb=B(bAddress);//轉換地址為合約類型returnb
}contractB{stringgreeting="helloworld";functionsayHello()externalviewreturns(stringmemory){returngreeting;}}
在Remix中,首先部署合約B,然后復制其地址,并在部署時將其提供給A的構造函數。現在你可以調用`callHello()`函數,你將獲得合約B的`sayHello()`函數的結果。##普通工廠模式在此模式下,我們創建具有創建子合約函數的工廠合約,并且可能還會添加其他函數來有效管理這些合約(例如,查找特定合約或禁用合約)。在create函數中,我們使用`new`關鍵字來部署子合約。
contractFactory{Childpublicchildren;uintdisabledCount;eventChildCreated(addresschildAddress,uintdata);functioncreateChild(uintdata)external{Childchild=newChild(data,children
functiongetChildren()externalviewreturns(Childmemory_children){_children=newChild(children
}}functiondisable(Childchild)external{children
}contractChild{uintdata;boolpublicisEnabled;uintpublicindex;constructor(uint_data,uint_index){data=_data;isEnabled=true;index=_index;}functiondisable()external{isEnabled=false;}}
```
本文來源于非小號媒體平臺:
登鏈社區
現已在非小號資訊平臺發布105篇作品,
非小號開放平臺歡迎幣圈作者入駐
入駐指南:
/apply_guide/
本文網址:
/news/9569964.html
免責聲明:
1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場
上一篇:
幣安為何推出第三條鏈?這對BNB意味著什么?
為了慶祝Hathor(HTR)在庫幣重磅上線,庫幣和Hathor團隊將提供125,000HTR豪華大獎池,邀請所有的用戶來參與凈買入.
1900/1/1 0:00:002021.1.2早間行情分析及操作思路: 行情回顧: 前幾日日幣策神給到的長線單多空指數拿到4000多點的空間!相信大家前幾天有所關注到拿到最高空,也是拿到低點的多單,對行情精準的判斷.
1900/1/1 0:00:00DeFi數據 1.DeFi總市值:225.13億美元市值前十幣種漲跌幅,金色財經制圖,數據來源Coingecko2.過去24小時去中心化交易所的交易量:28.6億美元交易量排名前十的DEX數據來.
1900/1/1 0:00:00算法穩定幣最近特別火爆,尤其是在SEC起訴Ripple之后——投資者們對監管趨嚴的擔憂又進一步加深,雖然本質上其實是對中心化機構的不信任.
1900/1/1 0:00:00DeFi數據 1.DeFi總市值:201.53億美元市值前十幣種漲跌幅,金色財經制圖,數據來源Coingecko2.過去24小時去中心化交易所的交易量:10.7億美元交易量排名前十的DEX數據來.
1900/1/1 0:00:00尊敬的用戶: Hotbit定于香港時間2021年01月05日下架MARK和AMPL。 具體下架方案如下: 1.2021年01月05日11:00關閉MARK和AMPL充值功能同時下線MARK和AM.
1900/1/1 0:00:00