比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > DYDX > Info

跟我學 Solidity :工廠模式_DRE

Author:

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

譯文出自:登鏈翻譯計劃

譯者:翻譯小組

校對:Tiny熊

歡迎來到學習Solidity系列的另一部分。在上一篇文章,我們討論了如何從智能合約中創建另一個智能合約。今天,我們將研究這種情況下的典型用例。

什么是工廠模式?

工廠模式的想法是擁有一個合約(工廠),該合約將承擔創建其他合約的任務。在基于類的編程中,此模式的主要動機來自單一職責原則(一個類不需要知道如何創建其他類的實例),并且該模式為構造函數提供了一種抽象。

UMLdiagramforfactorymethod

圖片來自Wikipedia.

Trait Sniper空投申領已開放:8 月 2 日消息,據官方消息,Trait Sniper 空投申領已開放,用戶可以根據其推特影響力在 Trait Sniper 官方網站領取相應的 TS 代幣。[2023/8/2 16:12:35]

為什么要在Solidity中使用工廠模式?

在Solidity中,出于以下原因之一,你可能要使用工廠模式:

如果要創建同一合約的多個實例,并且正在尋找一種跟蹤它們并簡化管理的方法。```contractFactory{Childchildren;functioncreateChild(uintdata){Childchild=newChild(data);children

香港房地產大亨鄭志剛旗下C Capital計劃籌集5億美元投資區塊鏈資產:9月21日消息,香港房地產大亨、周大福家族財富繼承人鄭志剛旗下基金C Capital計劃在未來18個月內籌集5億美元用于投資區塊鏈資產、信貸和私募股權,押注私營公司和數字資產。知情人士稱,該公司還由美銀美林前銀行家Ben Cheng共同創立,Cheng表示,其對沖基金策略主要專注于加密交易。(彭博社)[2022/9/21 7:10:14]

}contractChild{uintdata;constructor(uint_data){data=_data;}}*節省部署成本:你可以先部署工廠,之后在使用時再來部署其他合約。*提高合約安全性(請參閱本文).##如何與已部署的智能合約進行交互在深入探討如何實現工廠模式的細節之前,我想澄清一下我們與已部署的智能合約進行交互的方式。工廠模式是用來創建子合約的,并且我們可能希望調用它們的某些函數以更好地管理這些合約。調用部署的智能合約,需要做兩件事:1.合約的ABI(提供有關函數簽名的信息)。如果合約在同一個項目中。你可以使用import關鍵字將其導入。2.部署合約的地址。舉個例子:

Zipmex宣布暫停提款后,其Token已下跌40%:7月21日消息,據派盾(PeckShield)監測顯示,加密交易平臺Zipmex Token ZMT在暫停提款公告出來后已下跌40%。[2022/7/21 2:28:03]

contractA{addressbAddress;constructor(addressb){bAddress=b;}functioncallHello()externalviewreturns(stringmemory){Bb=B(bAddress);//轉換地址為合約類型returnb

}contractB{stringgreeting="helloworld";functionsayHello()externalviewreturns(stringmemory){returngreeting;}}

OpenSea近24小時的交易員數為11,884人,人數下降了24.05%:金色財經消息,據DappRadar最新數據顯示,OpenSea近24小時的交易員數為11,884人,人數下降了24.05%。[2022/6/19 4:37:45]

在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意味著什么?

Tags:CHIDREATADATAChickenKebab Financedrep幣突然漲Streamr DATAcoinBig Data Protocol

DYDX
1.02 比特幣操作建議及止盈提醒_BTC

大餅再次續刷歷史新高,突破29800一線。上午建議回調做多即可,給出的操作建議29000-29200附近分批多,目標29600-29800,目標完美止盈600多點,詳情見以下附圖或上午文章.

1900/1/1 0:00:00
Santiment:加密貨幣巨鯨正在悄悄囤積以太坊_ETH

加密數據平臺Santiment顯示,在市值排行第二的加密貨幣ETH價格飆升的情況下,大型參與者正在悄悄囤積以太坊.

1900/1/1 0:00:00
金色觀察 | 為什么有人敢認為BTC會到10萬美元?_比特幣

2020年比特幣第三次減半,在疫情的影響下,比特幣上半年價格并沒有如期望的那樣大漲,但進入下半年后,尤其到2020年底,比特幣開始加速上漲,突破2.8萬后開始飆升.

1900/1/1 0:00:00
幣海引路人:BTC/ETH開啟大回調模式_數字資產

幣海引路人:BTC/ETH開啟大回調模式交易如同攀爬,只有登上絕頂,才能享受奇觀勝景;若遇難而退,中途放棄,只會與機會擦肩而過,在交易中,最重要的就是要敢于出手,面對機會,果斷出擊.

1900/1/1 0:00:00
晚間必讀5篇 | 2020年最后一天 要看這些文章_COIN

1.區塊鏈技術Review2020:初見成熟的野望2020給我的感受就是:我們真的看到了幾年前在加密貨幣項目白皮書里看到的內容,看到了藏在技術代碼里的“野望”,看到了技術成熟之后.

1900/1/1 0:00:00
炒幣教父:12.31 最后一天交易日 年關是看多還是看空?_EOS

消息面:比特幣交易量創下2018年初以來的最高水平據Cointelegraph消息,隨著數據顯示越來越多的投資者進入比特幣市場,比特幣的交易量創下了2018年初以來的最高水平.

1900/1/1 0:00:00
ads