從零開始理解原始碼 - 以 ethereum 為例

帶您讀源碼

IB503

08/11 13:30 - 14:00

漢語 / Mandarin Chinese

Beginner / 入門

Junior developer

當 block chain 走入大眾眼眶,多數人不是被炒幣給攫住目光,就會馬上想到是不是要去買一把韭菜了。其實在主流的 block chain 應用中都有非常不錯的軟體藏在其中。Ethereum 是一個可以部署 Smart contract 應用的平台,在這個範圍裡,可以看見一個把 smart contract 變成 bytecode 的 solidity compiler 也有一個可以執行 bytecode 的 ethereum virtual machine。

而面對像這樣一個全新的大型專案,看到裡頭洋洋灑灑數千甚至數萬行程式碼,讓人很容易卻步,也不容易在短時間內熟悉內容。
在本次的議程中,我將分享自己是如何快速地從全新的專案中了解內部的架構設計:

  1. 以三個從完全不懂到理解架構與細節的 ethereum 專案為例: go-ethereum, cpp-ethereum, solidity compiler。
  2. 要如何對軟體架構進行分析,並做出 UML 來逐步拆解元件。
  3. 如何仔細地追蹤細節,並把重要的部分抽取出來講解給他人。

Collaborative notes on HackMD

戴宏穎

hydai(讀作海帶),是個興趣使然的軟體開發者。
Website: hyd.ai
GitHub: @hydai
目前在 Skymizer 這家編譯器公司跟 Compiler 的巨龍對幹中。
Ethereum 是我在一年前開始玩的區塊鏈專案,覺得能在去中心化的世界裏寫程式很開心,因此義無反顧的加入公司在 Blockchain 這邊的 Lity Project。
目前在 Skymizer 與許多屠龍勇者一起攻打 Compiler 這條巨龍。

鈦金級贊助

Co-Host Sponsor

鑽石級贊助

黃金級贊助

白銀級贊助

青銅級贊助

合作夥伴

協辦單位

特別感謝