智能合約開發實戰(一) - 什麼是智能合約?

更新於 發佈於 閱讀時間約 2 分鐘
智能合約(英語:Smart contract)是一種特殊協定,在區塊鏈內製定合約時使用,當中內含了程式碼函式 (Function),亦能與其他合約進行互動、做決策、儲存資料及傳送以太幣等功能(出處:維基百科),簡單的說就是在區塊鏈上做以太幣的交易或互動的一種程式(合約)。
但知道智能合約後,該怎麼寫?怎麼放到區塊鏈上?怎麼跟它溝通?該有什麼開發環境?身為一個開發人員,心中一定會有這樣的疑問?所以我們就來看看有哪些東西能幫忙我們實現開發智能合約。
談到智能合約就不免必須了解什麼是DApp(Decentralized Applications)去中心化應用程式,App我們都知道它是應用程式,所謂的去中心化就是不需要依賴伺服器運作就可以全自己運行,區塊鏈的理念就是去中心化,所以它所運行的應用程式當然也必須去中心化,才有了DApp的產生。
由於智能合約無法只有它單獨放到區塊鏈中,必須要和外部做溝通來能達到應用的效果,所以一般我們都是開發DApp,然後在裡面包含智能合約,然後靠其他套件程式讓智能合約可以和外面做溝通,讓我們可以去呼叫它,進而做合約和其他合約的交易,常見的智能合約開發架構如下:
1.IDE 開發環境:RemixVisual Studio Code
2.開發智能合約:Solidity、Vyper。
3.開發框架:Truffle、Waffle。
4.web與智能合約互動套件:Web3.js、ethers.js。
5.發佈網段:公鏈(比特幣-Bitcoin,以太坊-Ethereum)、測試鏈(Ropsten、Kovan、Rinkeby、Goerli)、個人鏈(Ganache),開發人員在開發初期建議用個人鏈就好,它是一個可以安裝在本地端的鏈,使用上還蠻方便的,只要安裝好Ganache這個軟體就能在本地端發佈智能合約到個人鏈去。
由上面的開發架構可以了解,想要開發智能合約就是先選擇一個習慣用的IDE當做開發環境VS Code或Remix,然後安裝Truffle或是Waffle當做開發的主要框架,使用Solidity(和JavaScript較相似)或Vyper(和Python較相似)當做開發智能合約的主要程式語言,安裝Truffle + web3.js或是Waffle + ethers.js開發框架(選其中一個),開發完成後就發佈到鏈上面,一開始當然是發佈到Local的個人鏈(ganache)上或是測試鏈上做測試,等都沒有問題了才會上到公鏈(EVM:Ethereum Virtual Machine)上面執行了,整個開發智能合約的架構大概就是這樣,接下來在下面的章節我們就來細部的說明。
有什麼想要了解或是不清楚的部份,歡迎留言和我分享,謝謝。
如果喜歡我的文章歡迎追隨,按愛心,我每週都會上新文章。
為什麼會看到廣告
avatar-img
20會員
38內容數
目前加密貨幣的市場上幣種非常的多 讓你看得眼花撩亂了嗎? 可以藉由這一系列的加密貨幣分析 能夠幫忙您了解每一個加密貨幣它的價值所在 每一集都會介紹一種幣 是一個很實用的專題,歡迎大家訂閱~
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
宅D嘉的沙龍 的其他內容
最近年終歲末了,不過你們看到這篇應該已經年初了 汽車也到了又要保養又要繳保險的時間了 這篇就來簡單分享汽車保養可以怎麼省
確立乙太幣的未來發展 升級乙太坊2.0 邁向Web 3.0
乙太幣 (ETH) 做為乙太坊 (Ethereum)的使用貨幣,此篇我們就來看看乙太幣的價值在哪? 2.市值:目前乙太幣的市值為4674億美元,流通量為118,804,120個乙太幣,市值的高低也就代表著此加密貨幣有一定的價值存在。 熱門的區塊鏈遊戲《Axie Infinity》
說到乙太幣 (ETH) 就不能不提乙太坊 (Ethereum) - 乙太坊是由俄羅斯裔加拿大程序員 - Vitalik Buterin (人稱V神) 和Gavin Wood共同推出的,乙太坊是一種去中心化而有智能合約功能的一種公共的區塊鏈平台,開發者需要支付乙太幣做為運行智能合約所需的交易手續費
加密貨幣最重要的就是這個幣有沒有價值! 我們來看看,比特幣(BTC)的價值在哪裡? 2.信仰:我相信有不少人會相信未來的世界裡,加密貨幣一定會愈來愈壯大,包含Web 3.0是以區塊鏈為架構來運行的,有了這一層的信仰,而身為龍頭的比特幣,很多人也相信比特幣未來是無法取代的,也不會消失,信仰也代表著有它
最近熱門的GameFi遊戲 - The Crypto you,挖擴方式就能邊玩邊賺錢 真的有那麼好康嗎? 我用我的實際經驗告訴你。
最近年終歲末了,不過你們看到這篇應該已經年初了 汽車也到了又要保養又要繳保險的時間了 這篇就來簡單分享汽車保養可以怎麼省
確立乙太幣的未來發展 升級乙太坊2.0 邁向Web 3.0
乙太幣 (ETH) 做為乙太坊 (Ethereum)的使用貨幣,此篇我們就來看看乙太幣的價值在哪? 2.市值:目前乙太幣的市值為4674億美元,流通量為118,804,120個乙太幣,市值的高低也就代表著此加密貨幣有一定的價值存在。 熱門的區塊鏈遊戲《Axie Infinity》
說到乙太幣 (ETH) 就不能不提乙太坊 (Ethereum) - 乙太坊是由俄羅斯裔加拿大程序員 - Vitalik Buterin (人稱V神) 和Gavin Wood共同推出的,乙太坊是一種去中心化而有智能合約功能的一種公共的區塊鏈平台,開發者需要支付乙太幣做為運行智能合約所需的交易手續費
加密貨幣最重要的就是這個幣有沒有價值! 我們來看看,比特幣(BTC)的價值在哪裡? 2.信仰:我相信有不少人會相信未來的世界裡,加密貨幣一定會愈來愈壯大,包含Web 3.0是以區塊鏈為架構來運行的,有了這一層的信仰,而身為龍頭的比特幣,很多人也相信比特幣未來是無法取代的,也不會消失,信仰也代表著有它
最近熱門的GameFi遊戲 - The Crypto you,挖擴方式就能邊玩邊賺錢 真的有那麼好康嗎? 我用我的實際經驗告訴你。
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
在幣圈,常聽到一句話——「珍愛生命,遠離合約」。這句話可不是空穴來風。虛擬貨幣合約交易,因其高槓桿和高風險,吸引了無數投資人進場,也讓許多人在瞬間失去所有資本。本文將深入探討什麼是虛擬貨幣合約交易、其優勢和風險,並引導讀者在進場前做出慎重考慮。 什麼是虛擬貨幣合約交易? 虛擬貨幣合約交易指的是
分佈式帳本是區塊鏈技術不可或缺的一部分,它通過將數據分散儲存於多個節點,提升數據的安全性及可信度。區塊鏈的共識機制決定交易的有效性及節點的權限運作。本文對不同共識機制,如工作量證明(PoW)和權益證明(PoS)進行探討,並分析其各自的優缺點及在實際應用中的潛力。
0. 大綱Outline 以太坊交易 發起交易 與智能合約互動 receive & fallback function 1. 舊以太坊交易 Ethereum Gas Tracker - 7 Gwei - Etherscan //交易技術, 表示特定帳戶的交易數量,是計數器, 每發一筆交
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
在幣圈,常聽到一句話——「珍愛生命,遠離合約」。這句話可不是空穴來風。虛擬貨幣合約交易,因其高槓桿和高風險,吸引了無數投資人進場,也讓許多人在瞬間失去所有資本。本文將深入探討什麼是虛擬貨幣合約交易、其優勢和風險,並引導讀者在進場前做出慎重考慮。 什麼是虛擬貨幣合約交易? 虛擬貨幣合約交易指的是
分佈式帳本是區塊鏈技術不可或缺的一部分,它通過將數據分散儲存於多個節點,提升數據的安全性及可信度。區塊鏈的共識機制決定交易的有效性及節點的權限運作。本文對不同共識機制,如工作量證明(PoW)和權益證明(PoS)進行探討,並分析其各自的優缺點及在實際應用中的潛力。
0. 大綱Outline 以太坊交易 發起交易 與智能合約互動 receive & fallback function 1. 舊以太坊交易 Ethereum Gas Tracker - 7 Gwei - Etherscan //交易技術, 表示特定帳戶的交易數量,是計數器, 每發一筆交