Skip to content

Latest commit

 

History

History
144 lines (105 loc) · 5.88 KB

RockChang.md

File metadata and controls

144 lines (105 loc) · 5.88 KB
timezone
Asia/Taipei

RockChang

  1. 自我介绍 Hi 我是Rock, 將會好好學習solidity知識!

  2. 你认为你会完成本次残酷学习吗? 我相信我會的

Notes

2024.09.23

  1. Hello Web3

    依照教學使用remix ethereumIDE 開發Solidity寫出Hello Web3

    • 總之,什麼都不管的,直接建立一個新的檔案,命名為HelloWeb3.sol

    • 填入三行程式碼

      第一行要註釋,我手動輸入打錯字,竟然也會提示錯誤,很有趣

      第二行是編譯器版本,如果不知道,可以到Solitidy Compiler頁面找當前最新的版本來用

      第三行就是合約內容,包在contract裡面

    • 輸入好後儲存,到Deploy頁面,點下Deploy

    • Deploy完成後到左下角點擊String按鈕後,點開右邊的Call ....,尋找decoded output欄位,可以看到hello web3了

    • 花了一些時間在IDE上面打轉

  2. ValueType

    • 依照教學去deploy了bool運算並查看了結果
    • 依照教學去deploy了整數運算,並查看結果
    • 地址有分成addresspayable address兩種類型
    • 定长字节数组,理解成可以存一些數據,會省一些Gas?!

2024.09.24

  1. 在WTF完成前兩章的測驗
  2. 學習第三張,function 功能,可視性的功能上{internal|external|public|private},感覺重點在於,如果function要給外部call,就選擇public或者external,內部訪問就寫private或者是internal,測試的話一開始寫public比較方便。
  3. about function permission的部分,分成[pure|view|payable],而pure和view主要主要跟gas有關,而pure和view的function是不修改鏈上的狀態,也就不會被收gas,而教學上用瑪利歐的比喻也非常能理解
  4. pure和view的部分比較不容易分得清楚
  5. 完成了第三章的測驗
  6. 學習第四章returns/return,並完成了第四章測驗

2024.09.25

  1. 了解變數儲存的三種不同類型,storage、memory和calldata,memory和calldata是儲存在RAM裡面,,消耗的gas少,storage是儲存在硬碟上的,消耗gas大
  2. 了解變數作用區,分別為狀態狀態、局部、全域三種類型,一般來說在合約內宣告的變數為狀態變數,而再pure function內的變數,因為跳出後,內部的變數就無效了,因此是儲存於RAM內,而全域變數則為預留關鍵字
  3. 完成了第五章測驗
  4. 完成了第六章測驗

2024.09.26

  1. 學習了第七章mapping,但是還需要更多的範例或練習,才能夠更了解mapping能運用在哪一些用途上

  2. 完成了第七章的測驗

  3. 學習了變數宣告但不賦值時會有一個預設的值

  4. 使用delete變數,可以將變數的值變為預設值

  5. 完成了第八章的測驗

  6. 第九章有點需要慢慢理解 这一讲,我们介绍Solidity中和常量相关的两个关键字,constant(常量)和immutable(不变量)。状态变量声明这两个关键字之后,不能在初始化后更改数值。这样做的好处是提升合约的安全性并节省gas。

    另外,只有数值变量可以声明constant和immutable;string和bytes可以声明为constant,但不能为immutable。

2024.09.27

  1. 完成了第九章的測驗
  2. 了解控制流的功能,跟一其他程式語言差不多,但是在insertiinsort的部分比較苦手,因為要看很久才能懂
  3. 完成了第十章的測驗
  4. 完成第十一章的測驗

2024.09.28

  1. 完成了12章事件的測驗
  2. 因為第13張有點雜,先跳到第15章理解異常的功能
  3. 完成了第15章的測驗

2024.09.30

  1. 了解了繼承的功能,並完成了第13章的測驗
  2. 完成了第14章的測驗,基本的了解了solidity101的課程內容
  3. 如果再多去了解31章的ERC20,就可以完成defibootcamp的hw1作業task1

2024.10.01

  1. 因為今天時間比較不充裕,只有學到16章,並完成測驗

2024.10.02

  1. 學習了第17章,庫合約的使用
  2. 學習了地18章,import的使用
  3. 完成了上述兩章的測驗

2024.10.03

  1. 學習了第19章,接收ETH和fallback功能
  2. 學習了第20章,發送ETH的相關功能

2024.10.04

  1. 在19和20章的測驗不太順利,但總算是完成了,需要更多的實作才更能理解實際用法 對於發送及接收ETH的部分,似乎比較常看到transfer,較少看到send和call
  2. 學習了21章 調用其他合約
  3. 學習了第22章Call

2024.10.05

  1. 今日時間較為不足,複習過後,只完成了第21章及22張的測試

2024.10.07

  1. 學習了Delegatecall的功能,看起來能運用在代理合約和邏輯合約的組合上,另外還有鑽石的這個新關鍵字。 2.完成了Delegatecall的測試

2024.10.08

  1. 學習了第24章及第25章,並了解了create 和create2的不同
  2. 完成了第24章及第25章的測驗

2024.10.09

  1. 今天學習了第26章刪除合約的功能
  2. 完成了第26章的測驗
  3. 可惜昨天沒有改到日期,沒有全部綠色勾勾了QQ

2024.10.10

  1. 雖然大家一定覺得國慶日放假很棒,很有時間學習,但是對於要照顧小小孩的我是多麼的羨慕
  2. 所以我很棒,學習了第27章,並且完成了測驗
  3. 給自己掌聲鼓勵

2024.10.11

  1. 因為bootcamp的需要,跳著看完了40張的ERC1155
  2. 同上,跳著看完了ERC721
  3. 了解了ERC1155的運用場景以及ERC721的NFT功能

2024.10.12

  1. 學習了第28章,認為應該可以和27章做配合一次服用會比較好
  2. 完成了28章的測驗

2024.10.14

  1. 學習了29章,函數選擇器
  2. 完成了第29章的測驗

2024.10.15

  1. 完成了第30章的學習及測驗
  2. 倒數第二天,還好至少還來得及把102的部分給看完,雖說103的部分只有看一些,但也因為藉著這個學習,在defi-bootcamp活動期間至少可以亡羊補牢