Geth
go-ethereum的簡稱弊予,由以太坊基金會(huì)提供的官方客戶端軟件,用Go語言編寫开财,用于創(chuàng)建一個(gè)本地的測試網(wǎng)絡(luò)汉柒。
Solidity語言
一種高級(jí)語言,以太坊編寫智能合約最流行的編程語言责鳍。在Remix IDE中編寫碾褂,然后編譯成在EVM上可運(yùn)行的字節(jié)碼。
更多語法知識(shí)历葛,可訪問官方中文開發(fā)文檔
Remix
以太坊官方推薦的智能合約開發(fā)IDE正塌,適合新手,可以在瀏覽器中快速部署測試智能合約恤溶。
Web3.js
javascript庫乓诽,可以用來與一個(gè)節(jié)點(diǎn)進(jìn)行交互。
當(dāng)Solidity合約編譯好并且發(fā)送到網(wǎng)絡(luò)上之后咒程,你可以使用以太坊的web3.js JavaScript API來調(diào)用它鸠天,構(gòu)建能與之交互的web應(yīng)用。
Truffle
Truffle 和 Embark 是用于開發(fā)以太坊 DApps的兩個(gè)最常用的框架孵坚。 它們抽象出在區(qū)塊鏈上編譯和部署合同的許多復(fù)雜的東西粮宛。
Truffle讓你可以迅速進(jìn)入寫代碼-編譯-部署-測試-打包DApp這個(gè)流程窥淆。(Truffle ['tr?fl] 、Embark [?m'bɑrk] )
更多學(xué)習(xí)巍杈,可訪問Truffle開發(fā)手冊(cè)
Solc
編譯器忧饭,用Solidity寫好智能合約之后,需要用solc來編譯筷畦。它是一個(gè)來自C++客戶端實(shí)現(xiàn)的組件词裤。
Gas
可理解成汽油, 在以太坊上執(zhí)行程序以及保存數(shù)據(jù)都要消耗一定量的以太幣鳖宾,Gas是以太幣轉(zhuǎn)換而成吼砂。這個(gè)機(jī)制用來保證效率。
GasFee = GasUsed * Price
以太坊虛擬機(jī)執(zhí)行的指令消耗單位的個(gè)數(shù)
合約代碼
以太坊不僅僅在鏈上存儲(chǔ)交易數(shù)據(jù)鼎文,它還可以在鏈上存儲(chǔ)合約代碼渔肩。
在數(shù)據(jù)庫層面,區(qū)塊鏈的作用就是存儲(chǔ)交易數(shù)據(jù)拇惋。那么給候選者投票周偎、或者檢索投票結(jié)果的邏輯放在哪兒呢? 在以太坊的世界里撑帖,你可以使用Solidity語言來編寫業(yè)務(wù)邏輯/應(yīng)用代碼(也就是合約:Contract)蓉坎, 然后將合約代碼編譯為以太坊字節(jié)碼,并將字節(jié)碼部署到區(qū)塊鏈上:
合約部署后胡嘿,當(dāng)需要調(diào)用這個(gè)智能合約的方法時(shí)蛉艾,只需要向這個(gè)合約賬戶發(fā)送消息(交易)即可,通過消息觸發(fā)后智能合約的代碼就會(huì)在EVM中執(zhí)行了衷敌。
Parity
以太坊挖礦用勿侯。Parity 是對(duì)以太坊協(xié)議的另一個(gè)很好的實(shí)現(xiàn),并且是用Rust編程語言編寫的逢享。 這是一個(gè)由一家名為Parity Inc的公司來維護(hù)的非官方客戶端罐监。任何人都可以實(shí)現(xiàn)這個(gè)客戶端軟件,并加入以太坊網(wǎng)絡(luò)瞒爬。
Testrpc
用geth可以創(chuàng)建一個(gè)測試網(wǎng)絡(luò)弓柱,另一種更快的創(chuàng)建測試網(wǎng)絡(luò)的方法是使用testrpc,它使用了Python編寫的客戶端pyethereum
侧但。Testrpc可以在啟動(dòng)時(shí)幫你創(chuàng)建一堆存有資金的測試賬戶矢空。它的運(yùn)行速度也更快因此更適合開發(fā)和測試。你可以從testrpc起步禀横,然后隨著合約慢慢成型屁药,轉(zhuǎn)移到geth創(chuàng)建的測試網(wǎng)絡(luò)上 - 啟動(dòng)方法很簡單,只需要指定一個(gè)networkid:geth --networkid "12345"柏锄。
補(bǔ)充:Testrpc把所有東西都存在內(nèi)存里酿箭,因此复亏,節(jié)點(diǎn)一旦重啟,將丟失以前的狀態(tài)缭嫡。
Ganache
Ganache的前身就是TestRPC缔御,提供了兩個(gè)版本:一個(gè)CLI版本,一個(gè)圖形界面版本妇蛀,可按需要安裝耕突。
ABI
ABI是Application Binary Interface的縮寫,應(yīng)用二進(jìn)制接口评架,可以通俗的理解為合約的接口說明眷茁。當(dāng)合約被編譯后,那么它的abi也就確定了纵诞。表現(xiàn)形式為json上祈。
參考:https://zhuanlan.zhihu.com/p/27574211
Whisper(耳語)
一個(gè)去中心化的通信協(xié)議,它支持廣播挣磨、用戶到用戶雇逞、加密信息等荤懂,但不用于傳輸大數(shù)據(jù)茁裙。點(diǎn)到點(diǎn)信息協(xié)議,將被整合到以太瀏覽器节仿。
Swarm(蜂群)
一個(gè)去中心化的文件系統(tǒng)晤锥。為靜態(tài)web托管而優(yōu)化的點(diǎn)到點(diǎn)數(shù)據(jù)存儲(chǔ)協(xié)議,將被整合到以太瀏覽器廊宪。
DAG
DAG(Directed Asyclic Graph)意思是有向無環(huán)圖矾瘾,所謂有向無環(huán)圖是指任意一條邊有方向,且不存在環(huán)路的圖箭启。相比較于比特幣的最長鏈共識(shí)壕翩, DAG 將最長鏈共識(shí)改成最重鏈共識(shí)機(jī)制, 通過交易權(quán)重與節(jié)點(diǎn)間建立局部共識(shí)來確認(rèn)新的交易傅寡,將工作量證明巧妙的和每一筆交易綁定一起放妈,不但打破了目前比特幣挖礦集中化的問題,而且大幅度提升了整個(gè)分布式網(wǎng)絡(luò)的吞吐能力荐操,帶來極低的交易成本芜抒。
Influa
eth錢包公網(wǎng)的免費(fèi)rpc接口地址,使用web3.js直接調(diào)用的api地址
以太坊DAPP收藏
Web:https://github.com/ConsenSys/eth-lightwallet
Android:https://github.com/walleth/walleth
IOS: https://github.com/ethers-io/EthersWallet-ios