Ethereum je imel pomembno vlogo pri spodbujanju širše uporabe tehnologije blockchain z navideznim računalnikom Ethereum (EVM) in pametnimi pogodbami. To je platforma, ki razvijalcem omogoča ustvarjanje in zagon distribuiranih aplikacij (DApps), razvijalci pa so se do zdaj odzvali z izdelavo več kot 1500 DApps! Ste razvijalec, ki vas zanima izdelava DApps? Ta razvojni vodnik za DApp na visoki ravni vam lahko pomaga pri začetku.
Razvoj DApps ni preprost projekt plug-n-play in zahteva resno programiranje. Ta razvojni priročnik za DApp ne namerava podrobno opisovati, temveč vsebuje pregled korakov na visoki ravni. V nadaljevanju članka vsebuje tudi razdelek z viri, ki navaja, kje lahko izveste več o določenem koraku.
DApp razvoj: koraki, ki jih je treba izvesti
Tu je pregled na visoki ravni, kaj mora razvijalec narediti, korak za korakom, da ustvari in zažene Ethereum DApp:
1. Naučite se Ethereum:
DApp mora slediti določenemu konceptualnemu okviru in edini način, da to razume, je učenje Ethereuma.
Na primer, DApp mora biti odprtokoden in mora delovati neodvisno, ne da bi entiteta nadzorovala večino kriptožetonov. Spremembe DApp-ja morajo slediti soglasju v skupnosti. Zaledna koda mora vsebovati pametne pogodbe in mora delovati na decentralizirani verigi blokov. DApp mora uporabljati kripto žeton, ustvarjen s standardnim kriptografskim algoritmom, podatke pa je treba hraniti v verigi blokov, ob upoštevanju kriptografskih standardov.
Učenje decentralizirane platforme Ethereum blockchain, ki temelji na konsenzu, je prvi korak, o katerem se razvijalec ne more pogajati.
2. Pridobite svojo verigo blokov:
Čeprav obstaja veliko strank, med katerimi lahko razvijalec izbira, priporočamo “testrpc” za novega razvijalca DApp. To orodje je zdaj del nabora orodij Truffle, je enostavno za uporabo in enostaven za začetek z uporabo vmesnika ukazne vrstice (CLI).
Orodje privzeto ne rudari blokov, vendar je za razvojni interval mogoče določiti interval bloka s pomočjo CLI.
3. Komunicirajte z verigo blokov:
Najlažje in najpogostejše orodje za komunikacijo z verigo blokov je ‘web3.js’. Namestitev je enostavna in obstajajo posebna navodila za konfiguriranje potrebnih parametrov, na primer:
- Konfiguriranje datoteke acongig.js;
- Konfiguriranje funkcij web3 API za komunikacijo z verigo blokov.
4. Naučite se trdnosti:
Solidity je lastniški jezik Ethereuma za pisanje pametnih pogodb. Je jezik, bogat z lastnostmi, posebej zasnovan v ta namen, ta programski jezik na visoki ravni pa je navdihnil C ++, Java, Python in JavaScript. DApp ima lahko svojo čelno kodo v katerem koli jeziku, vendar mora zaledna koda vsebovati pametne pogodbe, zato o tem učenju ni mogoče pogajati tudi za novega razvijalca DApp.
5. Kodiranje pametnih pogodb:
Razvijalec, ki kodira pametne pogodbe, mora upoštevati naslednje splošne smernice za učinkovitost:
- Računalniška logika in zahteve za shranjevanje naj bodo minimalne, saj je za izvajanje pametnih pogodb potreben “plin”, to je merilo računalniške moči. Ni zastonj, ‘cena plina’, torej treba je plačati določeno število kriptožetonov. To pomeni, da je Ether (ETH), torej domačo kriptovaluto Ethereum, treba porabiti za izvajanje pametne pogodbe. Preprosta računalniška logika zahteva manj plina.
- Koda se mora izogibati zapletenosti, kajti bolj ko je koda zapletena, večja je verjetnost napak. Rezultat pametne pogodbe je nepopravljiv, zato je nujno kodiranje preprostih pametnih pogodb brez napak.
6. Uvedite pametne pogodbe:
Za to priporočena zbirka orodij je „Tartuf“. Ima naslednje prednosti:
- Imenik omogoča razvijalcu, da vzdržuje vse svoje pametne pogodbe;
- Orodje se lahko zlahka vključi v preskusni okvir, ker lahko skripti uvedejo pogodbe v testno okolje, zaženejo “test tartufov” in izvajajo redne teste.
- Uvajanje s pomočjo tega nabora orodij je enostavno, zahtevane parametre pa lahko enostavno nastavite v datoteki config.js. Testrpc mora delovati v ločenem oknu, da bo razmestitev delovala.
7. Prikličite pametno pogodbo:
Klici pametnih pogodb morajo biti v šestnajstiških nizih, vendar obstajajo knjižnice Ethereum pogodbe »binarni vmesnik aplikacij« (ABI), ki pomagajo pri tem.
8. Nastavite račun Ethereum:
Za izvedbo pametnih pogodb mora razvijalec porabiti Ether, za to pa mora ustvariti račun Ethereum. Priporočljiva je ‘eth-lightwallet’, ker je s tem enostavno ustvariti par javnih in zasebnih ključev ter upravljati z njo. Razvijalec mora posodobiti datoteko config.js s ključnimi podrobnostmi. Razvijalec se lahko vrne na test tartufov in vidi, kako se Ether premika med računi.
Pomembna opomba: razvijalec ne sme nikomur deliti svojega zasebnega ključa ali ga objaviti na katerem koli spletnem forumu.
9. Transakcija s pametno pogodbo:
Ko kupi nekaj etra in ga shrani v svoj račun, mora razvijalec narediti zadnji korak v razvoju DApp, to je transakcije z uporabo etra. Obstajajo 3 možnosti:
- Prenos na drug naslov kot vrednost;
- Pokličite pogodbeno funkcijo, ki bo posodobila stanje omrežja in porabila Eter za plačilo pristojbin rudarju;
- Vključite pogodbo, ki posodablja stanje omrežja in sprejema Ether kot plačilo. Razvijalec mora rudarju plačati tudi pristojbine.
10. Razvoj DApp: koristni viri
Za pregled korakov za razvoj DApp lahko razvijalec prebere to izčrpen članek o Hackernoonu. Sledijo viri za posamezne korake:
- Če se želite naučiti Ethereuma: Vadnica za razvoj Ethereuma, Ethereum whitepaper, in Ethereum rumeni papir.
- GitHub material za Testrpc.
- GitHub material za web3.js.
- Na spletu seveda za trdnost.
- GitHub material za zbirko orodij Tartufi.
- GitHub material za knjižnico ABI.
- GitHub material za eth-lightwallet.
Poleg tega „dappsforbeginners‘Je dobro spletno mesto za novega razvijalca, da dobi navodila. Če še niste prepričani, je tukaj pet razlogov, zakaj bi se morali naučiti razvoja verige blokov. Še vedno iščem nekaj navdiha, tukaj je top 10 datotek, ki jih bomo spremljali v letu 2018.
Želim, da v spodnjem oddelku za komentarje slišite svoje izkušnje s svojo prvo razvojno izkušnjo dapp.