區塊鏈與智能合約開發 [線上課程]

區塊鏈與智能合約開發 [線上課程]

本課程將帶領初學者進入區塊鏈、虛擬貨幣、智能合約的世界,從區塊鏈的原理、大事件、如何入手談起,接著談到如何利用 Python 從零建立起一個基礎的區塊鏈,並從中應用到各領域的知識,讓我們的區塊鏈可以發送交易、驗證身分、挖掘區塊、接納新節點,同時也會介紹 Ethereum 中的智能合約開發,期望學員在上課完後能對區塊鏈擁有基礎的知識,並且有能力自行開發簡易的智能合約。

課程內容粗分為五大部分,並以 Solidity 開發為主:
1. 區塊鏈簡介:簡介區塊鏈常見應用、發展史、進入方式、注意事項等。
2. 區塊鏈原理與密碼學:介紹區塊鏈背後使用到的各式原理以及密碼學。
3. 用 Python 自製一個區塊鏈:從 0 使用 Python 寫出區塊鏈,藉此了解各項技術名詞與操作。
4. Solidity 開發:學習基礎 Solidity 語法以開發智能合約。
5. Web3.js 開發:學習基礎 Web3.js 語法以在網頁中操作該智能合約。

課程大綱

Class 1:區塊鏈入門
Class 1-1:區塊鏈簡介與發展史
Class 1-2:Bitcoin與Ethereum
Class 1-3:虛擬貨幣的世界
Class 1-4:常見交易方式

Class 2:區塊鏈原理與密碼學
Class 2-1:區塊鏈架構
Class 2-2:區塊鏈中的密碼學
Class 2-3:挖礦經濟學
Class 2-4:去中心化 Peer to Peer 網路

Class 3:用 Python 自製一個區塊鏈
Class 3-1:定義基本架構、功能與格式
Class 3-2:利用非對稱加密簽署並發送交易
Class 3-3:製作節點與用戶端程式
Class 3-4:節點間的廣播與同步

Class 4:Solidity 開發
Class 4-1:智能合約與開發環境介紹
Class 4-2:合約架構與變數
Class 4-3:函式與修飾詞
Class 4-4:事件與錯誤處理
Class 4-5:合約的物件導向與引用

Class 5:Web3.js 開發
Class 5-1:Truffle與Ganache簡介
Class 5-2:Web3.js的建置與使用
Class 5-3:合約的使用與呼叫
Class 5-4:合約的訂閱與監聽

適合對象

具備電腦基本操作能力、已具有除Solidity外任何一門程式設計的經驗、了解程式基本語法(本門課不重複贅述基本語法的邏輯與流程控制)。

開發環境

Pycharm
Remix
Truffle
Ganache

近期班次

  • 第341期 開課日期:2021.05.07 招生中

    上課時間:

    期初5/7  1730~1830  ;期末6/25  1730~1830 

    上課日期:2021.05.07 ~ 2021.06.25
    學費:新生新台幣4500元整
    備註:

    期初5/7  1730~1830  ;期末6/25  1730~1830 

    兩堂實體課程自由參加,其他時間請自行安排線上學習!

  • 注意事項

    • 上課地點:台灣大學資訊工程學系系館 詳細位置;教室號碼將於開課前一日公佈於官網"最新消息"中。
    • 上課教材:開課後將公布教學網站給同學查閱。
    • 結業狀況:請上官網”結業名單”查閱是否合格及可領取證書進度。

    講師介紹

    • 國立臺灣大學電機工程學碩士學位
    • 國立臺灣大學機械工程學學士學位
    • 國立臺灣大學醫學系學士班

    (一) 經歷

    • IRHOCS 2015國際機器人實作競賽手臂機器人組 冠軍
    • 2015 上銀智慧手競賽佳作
    • 2020 iT邦幫忙鐵人賽 Blockchain組 冠軍

    (二) 研究領域

    • 電腦視覺 機器學習 區塊鏈 智能合約

    (三) 使用語言

    • C/C++,R,Python,PHP,Solidity

    (四) 教學經驗

    於本訓練班授課時數累計至2020年2月5日為1150小時

    (五) 相關著作 區塊鏈生存指南:帶你用 Python 寫出區塊鏈! 

     

    (六) 教學經驗 於本訓練班授課時數累計至2020年2月5日為1150小時