加入收藏 在線留言 聯系我們
關注微信
手機掃一掃 立刻聯系商家
全國服務熱線15649051012
公司新聞
Ton鏈開發入門系列 —— Tact介紹
發布時間: 2024-10-09 12:01 更新時間: 2024-11-24 10:00


TON鏈(The Open Network)是一個高性能的qukuailian平臺,旨在支持去中心化應用程序(dApps)、快速支付、微支付和其他Web3應用場景。Tact是TON生態系統中的一種新興智能合約編程語言,與Fift和FunC相比,Tact提供了更gaoji、更友好的語法,旨在簡化智能合約的kaifa過程。

Tact語言特點

Tact是專為TONqukuailian設計的一種新型編程語言,注重效率和簡潔性。它是一種靜態類型語言,具有簡單的語法和強大的類型系統,提供完整的標準庫、語法和演化過程的參考資料。

安裝和配置安裝Ton錢包Tonkeeper

Tonkeeper是一個流行的Ton錢包插件,可以在官網進行安裝。安裝好后按照以下步驟切換到測試網。

領取測試幣

在TON生態中可以找到常用的水龍頭,在Telegram中按提示進行領取,一次可以領取5個TON。

kaifa環境搭建
  1. 安裝Node.js:確保已安裝并可用Node.js的LTS版本。

  2. 創建Tact項目:使用以下命令快速創建一個Tact基礎項目:

    shellnpm create ton -- simple-counter --type tact-counter --contractName SimpleCounter

    或者使用yarn:

    shellyarn create ton simple-counter --type tact-counter --contractName SimpleCounter
項目結構

創建的項目包含一個簡單的合約,可以部署到TONqukuailian上,還提供了實現單元測試和用于合約部署的輔助函數的示例。項目結構如下:

. ├── jest.config.js ├── jest.setup.js ├── jest.teardown.js ├── node_modules ├── package.json ├── README.md ├── sources ├── tact.config.json ├── tsconfig.json └── yarn.lock編寫合約

在sources文件夾中編寫合約文件。一個簡單的Tact合約示例如下:

tactimport "@stdlib/deploy"; message Add {     amount: Int as uint32; } contract SampleTactContract with Deployable {     owner: Address;     counter: Int as uint32;     init(owner: Address) {         self.owner = owner;         self.counter = 0;     }     fun add(v: Int) {         let ctx: Context = context();         require(ctx.sender == self.owner, "Invalid sender");         self.counter += v;     }     receive(msg: Add) {         self.add(msg.amount);     }     receive("increment") {         self.add(1);         self.reply("incremented".asComment());     }     get fun counter(): Int {         return self.counter;     } }部署合約

部署合約前先使用yarn安裝依賴,然后進行編輯再部署。

shell$ yarn install$ yarn build $ yarn deploy

部署時會生成合約地址和驗證鏈接,在瀏覽器中打開鏈接連接錢包。點擊“Deploy”按鈕后在錢包中簽名確認交易完成部署。

檢查交易

完成部署后可以在TON官方qukuailian瀏覽器Tonviewer中查看部署結果,可以看到部署的合約信息。

總結

本系列主要演示如何快速在TON鏈上部署合約,介紹了Tact項目的項目結構以及一些相關的文件所包含的功能,以方便快速了解如何在TON鏈上從零開始進行kaifa。本系列的后續章節會詳細介紹Tact的語法和kaifa實踐。


聯系方式

  • 電  話:15649051012
  • 聯系人:王經理
  • 手  機:15649051012
  • 微  信:15649051012