買以太坊 買以太坊
Ctrl+D 買以太坊
ads

ANS:Sui開發者必讀:MOVE語言及技術特性_TheForce.Trade

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'。

Sui測試網現已支持流動性質押:7月27日消息,Sui官網發文稱,Sui測試網現已支持流動性質押,待所有兼容性測試完成后,該功能將在下一次升級中添加至主網。

Sui表示,本次升級系通過SIP6完成,在此之前,Sui網絡的質押者在完成質押后會收到一個代表權益的封裝資產,但該資產無法流通,所以這意味著該部分質押代幣實際上已從流通中被移除。而在升級之后,該封裝代幣將可進行自由轉賬、交易,這意味著開發者將可以借此提供流動性質押服務,并基于此創建更多DeFi應用。[2023/7/27 16:02:41]

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

SUIA上市后已破發超50%:5月18日消息,行情數據顯示,Sui 生態社交協議 Suia(SUIA)上市后已大幅破發,按照 Cetus 上 Launchpad 超募 40 余倍進行計算,SUIA 的 IDO 成本約為 0.36 美元,目前 SUIA 價格為 0.159 美元,已破發超過 50%。行情波動較大,請做好風險控制。

此前消息,知情人士透露,SUIA 的做市商 Jump Trading 將停止其在美國的加密貨幣交易業務,但 Jump 的加密部門將繼續在全球擴張;此外,5 月 16 日,據 WSJ 報道,據美國 SEC 公布的法庭文件顯示,Jump Trading 曾通過與 Terraform Labs 秘密交易賺取 10 億美元。[2023/5/18 15:11:34]

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

Sui基金會推出Sui改進提案(SIP):金色財經報道,Sui基金會推出Sui改進提案(SIP),允許社區成員發現問題并向Sui網絡提議新功能、改進或重大升級。[2023/5/5 14:43:59]

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

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

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

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

Sui生態社交協議Suia將發行Token SUIA:4月26日消息,Sui 生態社交協議 Suia 宣布將發行 Token SUIA,SUIA 總量 1 億枚,7% 將分配給社區訪問計劃并立即解鎖;13% 將分配給早期貢獻者并分 20 個月線性解鎖;20% 將分配給團隊并分 40 個月線性解鎖;60% 將分配給社區并分 50 個月線性解鎖。SUIA 將用于治理以及用戶激勵。

此前報道,Suia 在 Sui Builder Hero 中獲獎,其產品包括去中心化推薦系統、Feed 系統、品牌俱樂部以及個人空間 SuiBox。[2023/4/26 14:28:17]

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

Sui Name Service服務器遭攻擊,目前正在為用戶恢復角色:1月10日消息,Sui生態域名服務Sui Name Service發推稱,其Discord服務器今日遭到一名已解雇的工作人員的攻擊,攻擊者冒充管理員進行了攻擊。目前,Sui Name Service正在為用戶恢復角色。[2023/1/10 11:04:55]

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

遵循 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:SUISUIATRAANSsui幣價格今日行情SUIA幣TheForce.TradeAnswerly

SHIB最新價格
STA:金色Web3.0日報 | 亞馬遜旗下NFT平臺啟動日期已推遲至5月15日_COI

DeFi數據 1、DeFi代幣總市值:485.97億美元 DeFi總市值及前十代幣 數據來源:coingecko2、過去24小時去中心化交易所的交易量23.

1900/1/1 0:00:00
NBS:Figment Capital:深入解讀零知識證明加速_區塊鏈

零知識證明允許一個團體在向另一個團體證明一條聲明時不需要透露除去「該聲明為真實的」的信息以外的任何額外信息.

1900/1/1 0:00:00
DIN:Ordinal 是什么_DINA

Ordinal NFT 于 2023 年 1 月 20 日由開發者 Casey Rodarmor 在 BTC 主網上推出,它是在 BTC上創建 NFT 的最新方式.

1900/1/1 0:00:00
RON:反女巫過度引爭議 Iron Fish 空投規則是否合理?_CATFISH價格

作者:餅干,ChainCatcherIron Fish,一個以二戰加密傳輸語“潛艇”命名的隱私項目,在完成由 a16z 領投的 2770 萬美元 A 輪融資之后估值達到 1.9 億美元.

1900/1/1 0:00:00
COI:比特幣“雙喜臨門”:減半敘事上線 生態又迎來新時代_Cope Coin

不知不覺間,伴隨著「非典型熊市」的不斷變換,加密世界中始終不曾褪色的「減半」敘事逐步臨近——當前區塊高度距離比特幣剩余減半時間已不足一年,減半時間預計為 2024 年 4 月 28 日.

1900/1/1 0:00:00
APP:一茬接一茬 Web3.0移動錢包又現獨特釣魚攻擊手法:Modal Phishing_Dapp Token

我們最近發現了一種新型的網絡釣魚技術,可用于在連接的去中心化應用(DApp)身份方面誤導受害者。我們將這種新型的網絡釣魚技術命名為Modal Phishing(模態釣魚攻擊).

1900/1/1 0:00:00
ads