偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

程序員如何切入?yún)^(qū)塊鏈去中心化應(yīng)用開(kāi)發(fā)

新聞 區(qū)塊鏈
前段時(shí)間一個(gè)以太坊游戲應(yīng)用: Fomo3D 異?;鸨诙潭痰膸滋靸?nèi)就吸引了幾萬(wàn)的以太幣投入游戲,第一輪游戲一個(gè)“黑客”用了一個(gè)非常巧妙的利用以太坊規(guī)則成為了最終贏家,拿走了1萬(wàn)多以太幣獎(jiǎng)金。

 前段時(shí)間一個(gè)以太坊游戲應(yīng)用: Fomo3D 異?;鸨诙潭痰膸滋靸?nèi)就吸引了幾萬(wàn)的以太幣投入游戲,***輪游戲一個(gè)“黑客”用了一個(gè)非常巧妙的利用以太坊規(guī)則成為了最終贏家,拿走了1萬(wàn)多以太幣獎(jiǎng)金。

區(qū)塊鏈應(yīng)用的價(jià)值由這個(gè)游戲反映的***,F(xiàn)omo3D游戲能夠成功核心所依賴的是以太坊提供的一個(gè)可信、不可篡改平臺(tái)。當(dāng)游戲的規(guī)則確定之后,一切都按規(guī)則運(yùn)行,無(wú)人可干預(yù)。今天這篇就來(lái)介紹一下程序員如何切入去中心化應(yīng)用開(kāi)發(fā)。

中心化應(yīng)用

作為對(duì)比,先來(lái)看看中心化應(yīng)用,其實(shí)就是現(xiàn)有的互聯(lián)網(wǎng)應(yīng)用,為什么它是中心化應(yīng)用,看看它的架構(gòu)圖:

平時(shí)我們接觸的是應(yīng)用的前端(或稱客戶端),前端可以是HTML5的web頁(yè)面、 小程序、APP, 在前端展現(xiàn)的內(nèi)容通常發(fā)送一個(gè)請(qǐng)求到服務(wù)器,服務(wù)器返回相應(yīng)的內(nèi)容給前端。在前端的動(dòng)作同樣也會(huì)轉(zhuǎn)化請(qǐng)求發(fā)送到服務(wù)器,服務(wù)器處理之后返回?cái)?shù)據(jù)到前端。也就是說(shuō)我們所有看到的內(nèi)容或者操作都是中心化的服務(wù)器控制,因此說(shuō)是中心化應(yīng)用。

去中心化應(yīng)用DAPP

而去中心化應(yīng)用有什么不同呢? 看看它的架構(gòu)圖:

前端的表現(xiàn)上是一樣的, 還是H5頁(yè)面、 小程序、APP,DAPP和傳統(tǒng)App關(guān)鍵是后端部分不同,是后端不再是一個(gè)中心化的服務(wù)器,而是分布式網(wǎng)絡(luò)上任意節(jié)點(diǎn),注意可以是 任意一個(gè)節(jié)點(diǎn),在應(yīng)用中給節(jié)點(diǎn)發(fā)送的請(qǐng)求通常稱為 交易 ,交易和中心化下的請(qǐng)求有幾個(gè)很大的不同是:交易的數(shù)據(jù)經(jīng)過(guò)用戶個(gè)人簽名之后發(fā)送到節(jié)點(diǎn),節(jié)點(diǎn)收到交易請(qǐng)求之后,會(huì)把 請(qǐng)求廣播到整個(gè)網(wǎng)絡(luò) ,交易在網(wǎng)絡(luò)達(dá)成共識(shí)之后,才算是真正的執(zhí)行(真正其作用的執(zhí)行不一是連接的后端節(jié)點(diǎn),盡管后端也會(huì)執(zhí)行)。以及中心化下的請(qǐng)求大多數(shù)都是同步的(及時(shí)拿到結(jié)果), 而交易大多數(shù)是異步的,這也是在開(kāi)發(fā)去中心應(yīng)用時(shí)需要注意的地方,

從節(jié)點(diǎn)上獲得數(shù)據(jù)狀態(tài)(比如交易的結(jié)果),一般是通過(guò)事件回調(diào)來(lái)獲得。

如何開(kāi)發(fā)

在開(kāi)發(fā)中心化應(yīng)用最重要兩部分是 客戶端UI表現(xiàn) 和 后端服務(wù)程序 , UI表現(xiàn)通過(guò)HTTP請(qǐng)求連接到后端服務(wù)程序,后端服務(wù)程序運(yùn)行在服務(wù)器上,比如Nginx Apached等等。

開(kāi)發(fā)一個(gè)去中心化應(yīng)用最重要也是兩部分: 客戶端UI表現(xiàn) 及 智能合約 ,智能合約的作用就像后端服務(wù)程序,智能合約是運(yùn)行在節(jié)點(diǎn)的EVM上, 客戶端調(diào)用智能合約,是通過(guò)向節(jié)點(diǎn)發(fā)起RPC請(qǐng)求完成。

下面是一個(gè)對(duì)比:

客戶端UI <=> 客戶端UI 
        HTTP <=> RPC
  后端服務(wù)程序 <=> 智能合約
Nginx/Apache <=> 節(jié)點(diǎn)

因此對(duì)于去中心化應(yīng)用來(lái)說(shuō),程序員可以從兩個(gè)方面切入:

一個(gè)是 去中心化應(yīng)用的客戶端開(kāi)發(fā) , 熟悉已經(jīng)熟悉客戶端軟件(如Web\APP等)開(kāi)發(fā)的同學(xué),只需要了解一下客戶端跟區(qū)塊鏈節(jié)點(diǎn)通信的API接口,如果是在當(dāng)前應(yīng)用最廣泛的區(qū)塊鏈平臺(tái)以太坊上開(kāi)發(fā)去中心化應(yīng)用,那么需要了解Web3

這個(gè)庫(kù),Web3對(duì)節(jié)點(diǎn)暴露出來(lái)的JSON-RPC接口進(jìn)行了封裝,比如Web3提供的功能有:獲取節(jié)點(diǎn)狀態(tài),獲取賬號(hào)信息,調(diào)用合約、監(jiān)聽(tīng)合約事件等等。

目前的主流語(yǔ)言都有Web3的實(shí)現(xiàn),列舉一些實(shí)現(xiàn)給大家參考:

另一個(gè)切入點(diǎn)是 智能合約的開(kāi)發(fā) ,在以太坊現(xiàn)在推薦的語(yǔ)言是Solidity,有一些同學(xué)對(duì)新學(xué)一門(mén)語(yǔ)言有一些畏懼,Solidity的語(yǔ)法其實(shí)很簡(jiǎn)潔,有過(guò)一兩門(mén)其他語(yǔ)言基礎(chǔ)(開(kāi)發(fā)經(jīng)驗(yàn))的同學(xué)三五天就可以學(xué)會(huì)。

下面用一個(gè)Hello合約,體會(huì)下Solidity的語(yǔ)法:

contract Hello {
      function hello() public returns(string) {
           return "Hello World"; 
      }
}

如果把上面的contract關(guān)鍵字更改為class,就和其他語(yǔ)言定義一個(gè)類一樣。

有興趣的同學(xué)可以進(jìn)一步學(xué)習(xí)一下這個(gè)DApp開(kāi)發(fā)案例 Web3與智能合約交互實(shí)戰(zhàn) ,

在DAPP的開(kāi)發(fā)過(guò)程中,一些開(kāi)發(fā)工具可以幫助我們事半功倍,如:Truffle開(kāi)發(fā)框架以及Ganache工具來(lái)模擬節(jié)點(diǎn)等,這篇文章 一步步教你開(kāi)發(fā)、部署***個(gè)去中心化應(yīng)用

補(bǔ)充

對(duì)于想切入到去中心化應(yīng)用開(kāi)發(fā)的同學(xué),對(duì)區(qū)塊鏈運(yùn)行的原理了解肯定會(huì)是加分項(xiàng),尤其是各類共識(shí)機(jī)制(POW,POS,DPOS等)的理解,P2P網(wǎng)絡(luò)的理解,以及各類加密和Hash算法的運(yùn)用。有一些同學(xué)想做區(qū)塊鏈底層開(kāi)發(fā),對(duì)區(qū)塊鏈運(yùn)行的原理則是必須項(xiàng)。

責(zé)任編輯:張燕妮 來(lái)源: 深入淺出區(qū)塊鏈
相關(guān)推薦

2023-04-07 15:33:09

2022-05-06 16:26:40

區(qū)塊鏈去中心化加密貨幣

2019-01-10 13:24:46

去中心化區(qū)塊鏈監(jiān)管

2020-09-16 18:05:21

區(qū)塊鏈加密貨幣去中心化

2022-04-26 23:33:33

區(qū)塊鏈去中心化數(shù)據(jù)結(jié)構(gòu)

2022-07-06 14:20:05

區(qū)塊鏈去中心化金融

2018-04-20 09:52:50

2022-05-13 15:11:24

區(qū)塊鏈去中心化dapp

2023-08-24 16:23:09

2024-02-29 15:27:10

2023-10-30 08:00:00

區(qū)塊鏈去中心化

2018-03-13 12:40:21

區(qū)塊鏈去中心化互聯(lián)網(wǎng)

2020-03-02 18:14:52

區(qū)塊鏈未來(lái)存儲(chǔ)

2022-05-16 14:32:09

去中心化區(qū)塊鏈社交媒體

2018-07-12 15:17:39

區(qū)塊鏈數(shù)字貨幣比特幣

2018-03-26 09:42:42

2022-05-27 18:00:39

區(qū)塊鏈體育博彩去中心化

2021-01-28 19:45:48

區(qū)塊鏈中心化分布式

2018-10-25 15:20:17

區(qū)塊鏈去中心化互聯(lián)網(wǎng)

2017-10-13 08:55:31

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)