不扯代碼——白話以太坊智能合約編程能干啥

0

想要了解以太坊智能合約開發(fā)食茎,cryptozombies(加密僵尸)是個很不錯的學(xué)習(xí)網(wǎng)站。

即使沒有編程功底的人也可以很方便的學(xué)習(xí)智能合約馏谨,因為這里的教學(xué)方法很科學(xué)很神奇。

1

這個網(wǎng)站的每一個知識點(diǎn)的教學(xué)思路都是:

1. 循序漸進(jìn)地向用戶講解一個知識點(diǎn)附迷。

2. 根據(jù)這個知識點(diǎn)設(shè)計一個題目惧互,讓用戶去完成哎媚。

3. 用戶提交代碼,如果不成功再根據(jù)正確答案修改自己的代碼喊儡,直至提交成功拨与。

這是一種非常科學(xué)的“學(xué)習(xí)—>實(shí)踐—>反饋-->改進(jìn)”的刻意練習(xí)式的學(xué)習(xí)方式艾猜,你想不想試一試买喧,那就點(diǎn)這個鏈接cryptozombies訪問官網(wǎng)吧。

2

這個網(wǎng)站的主線任務(wù)就是通過智能合約設(shè)計一個加密版的“僵尸大戰(zhàn)”的游戲:用戶可以新建僵尸匆赃,和別人的僵尸PK淤毛,繁殖新的僵尸等等。

這些都是為了增加學(xué)習(xí)智能合約編程的趣味性算柳,真正學(xué)習(xí)的時候還是需要一步一步去演練知識點(diǎn)的低淡,這一點(diǎn)始終是無法取巧略過的。

3

很多技術(shù)類教程往往只講技術(shù)細(xì)節(jié)瞬项,很少講這項技術(shù)的應(yīng)用場景蔗蹋。

學(xué)習(xí)新技術(shù)的時候技術(shù)本身自然是最重要的,但是知道這項技術(shù)能做什么囱淋,適合在什么地方用顯然會讓我們?nèi)菀兹菀酌椒较颉?/p>

先掌握整體的框架思路猪杭,再去擼細(xì)節(jié)問題,會得心應(yīng)手很多妥衣。

4

智能合約和我們平時在電腦上運(yùn)行的程序有什么區(qū)別呢皂吮?

以我們玩的游戲為例:

1. 最早的時候我們大多玩的是單機(jī)游戲,游戲的程序運(yùn)行在本地電腦上称鳞,不需要網(wǎng)線涮较。有些游戲被其他程序員開發(fā)出了作弊器,就可以任意修改參數(shù)——金錢無限冈止,生命無限等等狂票,任意改。

2. 后來有了網(wǎng)絡(luò)游戲熙暴,數(shù)據(jù)都是存儲在運(yùn)營商的服務(wù)器上闺属。這時候只有運(yùn)營商可以修改數(shù)據(jù)和代碼,我們想作弊就不容易了周霉,頂多就是用了第三方作弊器掂器,在運(yùn)營商允許的范圍內(nèi)上傳假數(shù)據(jù)。

5 程序不可更改

現(xiàn)在如果在以太坊上開發(fā)了游戲俱箱,這個程序一旦被部署到以太坊的網(wǎng)絡(luò)中国瓮,就會在每一個全節(jié)點(diǎn)上保存這個程序,它就變得不可更改

這種永固性意味著代碼永遠(yuǎn)不能被調(diào)整或更新乃摹,它會一直的禁漓,永久的,不可更改的存在以太網(wǎng)上孵睬。

這也是機(jī)器信任產(chǎn)生的原因播歼。

同時,以太坊開發(fā)語言solidity代碼的安全性就會變得非常重要掰读。因為如果這個智能合約有漏洞秘狞,即使后來發(fā)現(xiàn)了也無法補(bǔ)救,你只能眼睜睜蹈集、眼睜睜的看著別人利用這個漏洞做他們想做的事情烁试。

6 參數(shù)可改

代碼數(shù)據(jù)都是在鏈上的,不可修改雾狈,但是參數(shù)還是可以修改的廓潜。

譬如:幣乎用于給每篇文章的作者和點(diǎn)贊者發(fā)放KEY的智能合約,那些a善榛、c值什么的就是可以修改的辩蛋。往往為了安全起見,修改者也僅限于智能合約的創(chuàng)建者移盆。

從感性角度看悼院,如果什么都不能改,智能合約那不是太不智能了咒循?

所以据途,開發(fā)者在開發(fā)智能合約的時候就需要好好考慮一下哪些參數(shù)是需要變動的,哪些參數(shù)不能變動叙甸。不然可以變動的參數(shù)太多颖医,機(jī)器倒是可以信任了,人還是不可信的裆蒸,用戶還怎么放心使用你的智能合約呢熔萧?

7 Gas

在Solidity中,你的用戶想要每次執(zhí)行你的DApp都需要支付一定的gas僚祷,gas可以用以太幣購買佛致。

你在進(jìn)行以太坊轉(zhuǎn)賬的時候需要花費(fèi)gas進(jìn)行交易打包,這動用了以太坊的節(jié)點(diǎn)的資源辙谜。同樣俺榆,你在運(yùn)行Dapp的時候也需要動用以太坊節(jié)點(diǎn)的資源,所以也需要花費(fèi)gas装哆。

所以以太坊上運(yùn)行的智能合約往往都是比較有經(jīng)濟(jì)價值的合約罐脊,畢竟誰也不會花著真金白銀去天天玩加密貓定嗓,僵尸大戰(zhàn)啥的。

8 可支付

為什么區(qū)塊鏈基本都需要發(fā)通證(token)爹殊,因為可支付性是智能合約的一個重要特點(diǎn)蜕乡。

payable是solidity中的一個修飾符,它是一種可以接收以太的特殊函數(shù)梗夸,這就讓以太坊變得很酷了。

當(dāng)你在調(diào)用一個普通網(wǎng)站服務(wù)器上的API函數(shù)的時候号醉,你無法用你的函數(shù)傳送美元反症,甚至你也不能傳送比特幣。

但是在以太坊中畔派, 因為錢 (以太坊)铅碍、數(shù)據(jù),以及合約代碼本身都存在于以太坊线椰。你可以在同時調(diào)用函數(shù)并付錢給另外一個合約胞谈。

至于怎么調(diào)用,嘿嘿憨愉,去cryptozombies試試看烦绳。

重要的網(wǎng)站推薦三遍。

9 應(yīng)用前端

DApp的前端和我們平時用的手機(jī)App或者網(wǎng)頁的使用體驗差別并不大配紫,主要的差別應(yīng)該就是你用著用著就會有一個環(huán)節(jié)提示你需要付款了——gas費(fèi)用径密,或者程序中約定需要支付的其他費(fèi)用。

10 小結(jié)

智能合約的應(yīng)用暫時還比較簡單躺孝,使用的方法也并沒有太多的神奇之處享扔。

就像我們平時刷App一樣,在DApp上進(jìn)行一項操作植袍,然后程序調(diào)用智能合約惧眠,智能合約根據(jù)代碼的規(guī)則給我們反饋,如此而已于个。

但是氛魁,智能合約的一些特點(diǎn)卻是極為重要和非常需要關(guān)心的地方:

1. 代碼和數(shù)據(jù)部署在以太坊區(qū)塊鏈系統(tǒng)中,沒有人可以更改览濒,但是開發(fā)者可以留有靈活調(diào)整的參數(shù)呆盖。

2. 智能合約之間可以方便的進(jìn)行錢(以太坊)的價值傳遞

了解了智能合約的關(guān)鍵點(diǎn)——贷笛,再去學(xué)習(xí)智能合約的細(xì)節(jié)——術(shù)应又,頓時感覺自己是個“專家”,就沒有那么困難了乏苦。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末株扛,一起剝皮案震驚了整個濱河市尤筐,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌洞就,老刑警劉巖盆繁,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異旬蟋,居然都是意外死亡油昂,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進(jìn)店門倾贰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來冕碟,“玉大人,你說我怎么就攤上這事匆浙“菜拢” “怎么了?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵首尼,是天一觀的道長挑庶。 經(jīng)常有香客問我,道長软能,這世上最難降的妖魔是什么迎捺? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任,我火速辦了婚禮埋嵌,結(jié)果婚禮上破加,老公的妹妹穿的比我還像新娘。我一直安慰自己雹嗦,他們只是感情好范舀,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著了罪,像睡著了一般锭环。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上泊藕,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天辅辩,我揣著相機(jī)與錄音,去河邊找鬼娃圆。 笑死玫锋,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的讼呢。 我是一名探鬼主播撩鹿,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼悦屏!你這毒婦竟也來了节沦?” 一聲冷哼從身側(cè)響起键思,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎甫贯,沒想到半個月后吼鳞,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡叫搁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年赔桌,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片常熙。...
    茶點(diǎn)故事閱讀 38,809評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡纬乍,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出裸卫,到底是詐尸還是另有隱情,我是刑警寧澤纽竣,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布墓贿,位于F島的核電站,受9級特大地震影響蜓氨,放射性物質(zhì)發(fā)生泄漏聋袋。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一穴吹、第九天 我趴在偏房一處隱蔽的房頂上張望幽勒。 院中可真熱鬧,春花似錦港令、人聲如沸啥容。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽咪惠。三九已至,卻和暖如春淋淀,著一層夾襖步出監(jiān)牢的瞬間遥昧,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工朵纷, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留炭臭,地道東北人。 一個月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓袍辞,卻偏偏與公主長得像鞋仍,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子革屠,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評論 2 351

推薦閱讀更多精彩內(nèi)容