KryptoCamp — Day23 — DAO 的合約程式碼研究 — 1

Galen-Ting
廢物到工程師的一大步
3 min readMar 10, 2022

本次的期末專案我們將會聚焦在一個 NFT 的專案上,會是一個採用生成藝術隨機生成的 NFT 項目,功能面上比較偏公益性質,會把所有收到的收益,在可能每月或每季舉行一次社群治理投票,決定要把收益捐往哪個單位,因此也會需要開發到 DAO 的部分,而後續如果還有剩餘時間,會再接著發個 ERC-20 代幣,讓生成藝術的圖可以藉由合約刷新,回收到合約的幣也會當作公義的一部分捐出去。

以上述提到的功能來看可以分為幾個主要部份:

  • NFT 合約
  • DAO 合約
  • 生成藝術實作
  • 刷新 NFT 的合約
  • 把 ERC-20 的合約也加入進 DAO 合約內

關於 NFT 發行的方式已經做了簡單的了解,目前可以知道的是生成藝術的做法應該會與上次的教學影片不同,原因是生成的當下會由挖掘者傳入一段字串用於決定隨機生成的部分,我們沒辦法事先準備好所有可能的字串,因此圖片必須是 mint 的當下產生的才行,想像上是我們的合約在 mint 成功的當下必須發出某個 event 給前端,而前端必須將挖掘者輸入的字串先傳往某個地方並且在那邊計算出隨機圖片,之後自動送往我們的圖片儲存庫,可能是 IPFS 或是某個後端資料庫都可以。

這邊的作法將在後續實作時再細細研究。這次我主要被分到的區塊是合約開發的部分,NFT 與刷新 NFT 的合約內容都已經能大致想像,完全沒頭緒的只有 DAO 的部分,因此今天主要會研究關於 DAO 的智能合約實作方法。

為了實作 DAO 的合約,我們首先必須知道的就是 DAO 的合約需要些什麼,正常 DAO 是怎麼運作的。

在這邊文章裡面找到了實作 DAO 的核心合約程式碼:

明天我在這邊將會忽略前端的部分,專門研究合約的實作並且盡量清楚的描述這個合約在做什麼,並簡單說明我對於 Moralis 這個工具的理解。

--

--

Galen-Ting
廢物到工程師的一大步

學程式不無聊,無聊就不學程式,皮皮的學習好過死死的學習。