專案介紹:世界盃競猜

語言: CN / TW / HK

本文收錄於我的開源專案: https://github.com/dukedaily/solidity-expert ,歡迎star轉發,文末加V入群。

前面介紹了很多語法內容,對solidity知識點進行了詳細梳理,相信認真學習的同學已經掌握了基本的合約知識。

但是對於一個DAPP開發而言,這些知識點只是最基礎的環節,我們需要一次專案實戰,將整個知識體系串聯起來,因此我開啟了這個是: 世界盃競猜 實戰專案。

本次課程內容來自於我的一次公司內部培訓,我將培訓內容進行二次整理後同步出來,供web3愛好者學習。

當前已經有第一個版本了(goerli網路),先睹為快: https://solidity-expert.vercel.app/

  • 任何人都可以:Play
  • 管理員可以:Finalize
  • 仁和園都可以領獎:ClaimReward(需要先Finalize)

DAPP開發需要哪些技能?

  1. 區塊鏈基本知識 :地址、token、非對稱加密、雜湊、共識;
  2. Solidity :編寫智慧合約,這是整個dapp最核心部分;
  3. nodejs :這部分必須手到擒來,因為框架、單測、指令碼等都是使用js來操作的(js是最主流的,python、java等也有);
  4. sdk(optional) :主流的web3庫為web3.js或ethers.js,所有與鏈上互動的操作都是通過這兩個庫進行的;
  5. Subgraph : 這是一個三方基建服務,可以在鏈下對事件進行捕捉(掃鏈、計算、儲存postgres),從而對進行資料整合,被前端呼叫,快速返回資料,極大的方便了開發者。
  6. 前端 :react(大專案使用,知名協議原生支援的庫更全面)
  7. 後端optional ):機器人、週期性呼叫合約、監聽掃鏈(錢包)、其他需求

你能學到什麼?

我們通過不斷增加功能需求,引入新的知識點,從而完成學習,開展形式和節奏如下:

第一節:世界盃競猜業務:主要講solidity合約語法,在remix實現合約邏輯,並完成基本測試。

第二節:工程化管理:介紹hardhat框架的使用,在框架中完成合約編譯、部署、verify、單元測試等。

第三節:Token協議:主要介紹token協議:ERC20、ERC721、ERC1155,後兩者就是我們常說的NFT,從而為後續經濟激勵做鋪墊。

第四節:系統優化:學習subgraph,為系統的效能、功能做升級。

第五節:後臺服務:引入後臺server,從而學習如何使用server呼叫合約。

第六節:發放獎勵:增加經濟激勵,完成獎勵領取,學習Merkel tree相關知識。

第七節:質押挖礦:學習staking相關知識點。

第八節:鏈下授權:瞭解permit相關知識點,approve+transferFrom一筆完成。

第九節:可升級合約:完成合約升級技能,資料業務分離。

第十節:個人中心:與鏈下server結合,展示個人主頁。

其他待定...(這個專案應該會一直維護,可以做很久)

如何開展?

第一階段的課程會持續到年底,儘量保證每週能更新一次,開源內容安排如下:

  • 程式碼、課件會同步開源到github和公眾號(README中有);
  • 視訊需要二次錄製,需要大量精力,這個視具體情況而定;
  • 課程內容還在同步開發中,具體內容、順序可能會有變化。

小結

學海無涯,Web3永駐,老夫載你一程!

加V入群:Adugii,公眾號:阿杜在新加坡,一起抱團擁抱web3,下期見!

關於作者:國內第一批區塊鏈佈道者;2017年開始專注於區塊鏈教育(btc, eth, fabric),目前base新加坡,專注海外defi,dex,元宇宙等業務方向。