之前連續兩屆 IT 鐵人賽不幸斷賽,今年終於順利的完賽了,這次參加了兩個主題: DApp 開發 - 使用 web3.js 內容偏前端、熱門 DApp 應用...
目前最常見的工具是 Solium 和 Solhint,因為 Solium 的星星比較多,那我們就先來介紹 Solium。 Solium 的功能有: 檢查語法錯...
導言 待補充.... 程式碼 function deposit() public{ uint256 userBalance = token[addre...
如果你需要使用進階的 HTTP 用法,例如 Basic Authentication 或 OAuth,你必須要用 computation 資料來源。 用五個步...
導言 待補充.... 程式碼 pragma solidity^0.4.25; library SafeMath{ function add(uint...
Oraclize 提供資料的可靠證明 (Authenticity Proof) 服務,確保資料的真偽。 證明的型態 TLSNotary 證明 Androi...
導言 此範例參考solidity example其中一個,為Auction合約的升級版,場景設定在不知展示的投標物價值為多少,每個參與者可以針對有興趣的投標物出...
基本上 Oraclize 的責任就是傳送資料給智能合約或提供資料的可靠證明 (可靠證明會留到下一篇說明)。Oraclize 與以太坊的智能合約整合是非同步的,任...
導言 本次範例參考ERC721協議,ERC721協議和ERC20所使用的FUNCTION很相似,差別在於ERC721為NFT(Non-Fegible Token...
區塊鏈網路與我們一般所認知的網際網路是兩個世界,資料並沒有直接互通。那我們要如何從智能合約取得外部資料呢? 我們可以建立一個後端應用程式,讓它替我們從網際網路取...
導言 本次範例以銀行功能為目標 (( 快沒靈感了... 程式碼 pragma solidity^0.4.25; library SafeMath{ fu...
library 語法的使用方式類似 contract 語法,沒有自己的合約帳戶,所以在 library 不能使用 payable,也沒有 fallback 函式...
導言 本次範例以短租為出發點,設計一個短租交易的合約,承租人可以決定一次付清或者每天固定時間支付當日租金,房東只能領取單日租金..(這邊我還要思考一下...)...
目前 Rinkeby 測試網的水管,只有 https://faucet.rinkeby.io/ 水管,每次需要拿測試幣,都要在社群平台貼文夾帶自己的位址 (ad...
導言 本次範例模擬一個正式的Token合約,增加使用OpenZeppelin的SafeMath Module,提高運算安全性,並在contract設計上增加設定...
介面 (interface) 與抽象合約相似,但它不能實作任何功能,還有以下限制: 介面不能繼承其他合約或介面 介面不能定義建構子 (constructor)...
導言 本次範例使用了ERC20,ERC20是目前發行Token最主要的標準,基本上目前在市面上所使用的Token都遵循ERC20的標準所建立,有些公司透過ERC...
繼承 (Inheritance) Solidity 透過複製程式碼和多型 (polymorphism),來支援多重繼承。 當一個合約繼承多個合約,實際上只會有...
導言 本次範例試著寫出一份遠端P2P Lending的smart contract,合約的邏輯設計是從Safe Purchase smart contract延...
使用ABIEncoderV2 pragma solidity ^0.4.25; // 開啟 ABI V2 編碼器 pragma experimental AB...
導言 此範例參照Solidity 其中一個example,使用環境設定在投票現場,可能是多位參選人、多個提案...,主辦方將每個參選項目轉換成32bytes,集...
不知道大家有名有聽過 King of the Ether,這是一套之前小有名氣的 DApp 遊戲,我把邏輯簡化一點來當作這次要實作的練習題。 遊戲邏輯 出最多...
導言 本次範例擷取自Solidity document其中一個example, simple auction是以eth為主要交易貨幣下所使用的拍賣合約,在實際拍...
貨幣單位 (Ether Units) 在數字的後面加上 wei、finney、szabo 或 ether 轉換為貨幣的單位,如果沒有指定,基礎單位就是 wei。...
導言 此範例為群眾募資的合約設計,發起人可以設定目標集資金額、募資時間,發起合約時,投資人可以觸發投資function,將投資金額放進合約中,直到發起人意識到募...
Solidity 有兩種呼叫函式的方式,一是呼叫內部函式,二是呼叫外部函式。函式和狀態變數則有四種可見度(Visibility)。 函式可以指定為 exter...
導言 本次範例擷取自Solidity document其中一個example,Safe Remote Purchase是以ETH為主要交易貨幣下所使用的遠端買賣...
你可以把 mapping 型別看做類似是一個 hash tables,它會虛擬初始化每一個 key 的值都預設為 0。但實際上 mapping 型別,並不是存...
導言 此範例針對藝文活動售票情境,每日有限制售票票數,入門前需要驗票,單日無限次入場;在合約設計方面,加入售票結束時間,保有單日最高參與者數量(限制票數),不過...
函式是一個最小可被呼叫的元素 語法 function name([argument, ...]) [visibility] [view|pure] [...