買比特幣 買比特幣
Ctrl+D 買比特幣
ads

WOR:Sui開發者必讀:MOVE語言及技術特性_TRANS幣

Author:

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

撰文:Sui Network

本文將為開發人員在 Sui Network 上的最佳實踐做快速參考。

Sui 是基于第一原理重新設計和構建而成的 L1 公有鏈,旨在為創作者和開發者提供能夠承載 Web3 中下一個十億用戶的開發平臺。Sui 上的應用基于 Move 智能合約語言,并具有水平可擴展性,讓開發者能夠快速且低成本支持廣泛的應用開發。Sui 主網已于 2023 年 5 月 3 日正式上線。

閱讀有關包升級的詳細信息并編寫對升級友好的代碼。

包是不可變的,有漏洞的包代碼可以永遠調用,解決方案是在對象層面添加保護。

如果將包從 P 升級到 P',依賴于 P 的其他包和客戶端將繼續使用 P,而不是自動更新到 P'。因此,依賴于包和客戶端的代碼都必須更新以明確地指向 P'。

Coinbase將上架 Sui (SUI):5月17日消息,Coinbase宣布將在 SUI 網絡上添加對 Sui(SUI)的支持。如果滿足流動性條件,交易將于太平洋時間 2023 年 5 月 18 日上午 9 點或之后開始。[2023/5/18 15:09:28]

期望被依賴包擴展的包,可以通過提供符合所有版本標準的(不變的)接口,來避免每次升級時破壞它們之前的擴展。以 Wormhole 跨鏈橋為例,通過 Wormhole 作為橋梁發送消息,要想生成發送消息的擴展包,可以使用任意版本 Wormhole 包中的 prepare_message 指令來生成 MessageTicket,而發送消息的客戶端代碼必須將該 MessageTicket 傳遞到最新版本包中的 publish_message。

public 函數不能刪除或更改,但 public(friend) 函數可以。您可以自由地使用 public(friend) 或僅自己可見功能,除非您要將現在的庫函數永遠公開。

Cetus Launchpad將于5月15日上線Suia(SUIA):5月11日消息,據官方公告,Cetus Launchpad 第二期上線項目為 Suia(SUIA)。Suia 是一個建立在 Sui 網絡上的社交 dApp,目前擁有超過 20 萬筆交易和 30 多萬用戶。[2023/5/12 14:58:23]

不能刪除 struct 類型、不能添加新字段(盡管您可以添加動態字段)或通過升級新功能。添加新類型時請謹慎思考,一旦添加后將永遠存在!

使用 vector 支持的集合(如 vector, VecSet, VecMap, PriorityQueue),最多不超過 1000 個數據項。

使用動態字段支持的集合(如 Table、Bag、ObjectBag、ObjectTable、LinkedTable)用于任何允許第三方添加的集合、更大的集合和未知大小的集合。

Sui Network公布20個Sui Builder Hero獲獎者名單:2月22日消息,公鏈項目 Sui Network 公布 20 個 Sui Builder Hero 獲獎者名單,除現金獎勵外,該獎項還包括 Sui Builder Houses 的邀請函和 Sui 禮品。

獲獎項目包括去中心化交易平臺 Aftermath、Launchpad 平臺 BeLaunch、BlueMove、Capsule、去中心化交易平臺 Cetus、品牌服務 Cramium、錢包 Ethos 、NFT 市場 Keepsake、Kuna Labs、MovEX、OriginByte、OtterSec、Polymedia、PySui、Sui Gallery、Suia、錢包 Suiet、域名服務 SuiNS、區塊瀏覽器 Suiscan、預言機 Switchboard。[2023/2/22 12:21:42]

Sui Move 對象最大為 250KB——任何創建更大對象的嘗試都將導致事務中止,請確保您的對象沒有不斷增長大過 vector 支持的集合。

ConsenSys宣布收購Truffle Suite:金色財經報道,專注于以太坊的開發和投資公司ConsenSys周二宣布已收購Truffle Suite的技術和團隊成員。Truffle Suite致力于構建用于創建和開發去中心化應用程序的工具。[2020/11/18 21:06:33]

如果您的函數 f 需要來自調用者的付款,例如使用 SUI ,請使用 fun f(payment: Coin) 函數而不是 fun f(payment: &mut Coin, amount: u64) 函數。這對調用者來說更安全,因為他們可以準確地知道具體支付數額,并且不需要依靠函數 f 來提取正確的數額。

不需要小幅度優化 gas 消耗。在 Sui 上計算花費成本時,使用四舍五入的方法計算出其最接近的 bucket,因此只有非常劇烈的波動才會導致 gas 的變化。特別是,如果您的交易已經在最低成本范圍內,那就不能更便宜了。詳情請參照下圖。

動態 | 日本正在討論向電子儲值卡“Suica”等電子支付系統提供加密貨幣充值服務:據日本朝日電視臺報道,日本相關人士正在討論從今年6月開始向以JR東日本公司(即東日本旅客鐵路公司)的電子儲值卡“Suica”為代表的電子支付系統提供加密貨幣充值服務。由JR東日本公司、日本上市公司IIJ等出資成立加密貨幣交易所DeCurret的運營公司DeCurret。據此前報道,日本金融廳新批準注冊登記的加密貨幣交易所“DeCurret”將于今年4月開始現貨交易服務。[2019/3/27]

遵循 Move 編碼慣例(Move coding conventions)來獲得統一的式樣。

使用 display 標準自定義您的對象在錢包、應用程序和瀏覽器中的顯示方式。

避免使用「自我轉移」功能——任何時候都有可能,從當前函數返回 obj,而不是寫入 transfer::transfer(obj, tx_context::sender(ctx)),這允許調用者或可編程交易塊(programmable transaction block)使用 obj。

使用 sui::test_scenario`模擬多次交易和多位發送者的測試場景。

使用 sui::test_utilsmodule 通過 assert_eq 測試獲得更好的糾錯消息,通過 print 調試打印,以及通過 destroy 進行 test-only 銷毀。

使用 sui move test --coverage 計算測試時代碼覆蓋的信息,使用 sui move coverage source --module 查看以紅色突出顯示的未覆蓋行。如果可行,建議將覆蓋率設置為 100%。

為了獲得最佳性能和數據一致性,應用程序應該在同一個全節點上提交寫入和讀取請求。在 TS SDK 中,這意味著應用程序應使用錢包的 signTransactionBlock API,然后通過調用應用程序全節點上的 execute_transactionBlock 來提交交易,而不是使用錢包的 signAndExecuteTransactionBlock API。這確保了先寫后讀的一致性——從應用程序的全節點讀取將立即反映事務的寫入,而不是等待 checkpoint。

為了降低延遲,如果您的應用程序需要知道交易已確認,但不需要立即查看交易效果或讀取交易寫入的對象 / 事件,請使用帶有"showEffects": false 和"showEvents": false 的 executeTransactionBlock。

應用程序應該將頻繁讀取的數據本地緩存,而不是從全節點頻繁抓取。

盡可能地使用可編程交易塊(programmable transaction blocks)來組合現有的鏈上功能,而不是發布新的智能合約代碼。可編程交易塊允許大規模批次處理和異構組合,進一步降低已經很低的 gas 費。

應用程序應該將對 gas 預算、gas 價格和 coin 選擇權留給錢包,這將為錢包提供了更大的靈活性,并且錢包有責任試運行交易以確保交易不會失敗。

永遠不要簽署兩筆觸及同一獨享對象的并發交易,要么單獨使用獨享對象,要么等待一筆交易結束后再發送下一筆交易。違反此規則可能會導致客戶端模棱兩可,從而同時鎖定兩個交易中涉及的獨享對象,直到當前 epoch 結束。

任何發起交易的 sui client 命令(例如 sui client publish、sui client call)都可以接受 --serialize-output 標志以輸出要簽名的 base64 交易。

Sui 支持多種簽名方案(signature schemes)進行交易簽名,包括包括本機多重簽名。

Sui World

個人專欄

閱讀更多

金色薦讀

金色財經 善歐巴

Chainlink預言機

區塊律動BlockBeats

白話區塊鏈

金色早8點

Odaily星球日報

歐科云鏈

MarsBit

深潮TechFlow

Tags:SUITRAWORTRANSsui幣解鎖時間Astra Guild Venturesraiden-network-tokenTRANS幣

比特幣行情
ING:圓桌討論:以太坊上海升級后的機遇與監管挑戰_STA

本文為香港 Web3 嘉年華速記下面進行下一個圓桌討論:以太坊上海升級后的機遇 有請嘉賓: 黃凌波, 分布式資本合伙人話筒交給主持人 Gavin.

1900/1/1 0:00:00
BRC:veDAO研究院:如何玩轉BRC-20?_BSPAY

BTC 概念的加密貨幣有哪些?或許你腦海里最先浮現出來的是基于 BTC 生態分叉出來的衍生幣.

1900/1/1 0:00:00
IMI:TheBlock 揭秘來自俄羅斯的“空投獵人”_BIT

空投獵人旨在通過推測潛在的空投并提前埋伏來賺錢。雖然這種策略可以帶來高額利潤,但也會帶來財務風險和道德問題。空投是一種真正僅限加密的現象,涉及向協議和平臺的早期采用者分發加密代幣.

1900/1/1 0:00:00
DAO:AI 與區塊鏈的融合:邁向 Nature2.0_比特幣錢包手機版app

原文:Nature 2.0作者:Trent McConaghy 編譯:Sissi 封面:@iStock/agsandrew這里有一個90年代的老笑話:“在互聯網上,沒有人知道你是只狗.

1900/1/1 0:00:00
NBS:深度解讀NFT MEV:NFT交易中的新機遇_MINT

原文來源:Alana Levin, Variant Fund (與 Frontier Research 合作完成)原文編譯:Cecilia.

1900/1/1 0:00:00
BTC:比特幣生態蓬勃發展 探討4種擴容方式與發展趨勢_CASHZ幣

原文:《Top4 Directions of Bitcoin Ecosystem Scalability》by kenyou 編譯:wesely OrdinalsNFT和BRC-20代幣的出現.

1900/1/1 0:00:00
ads