Beginner’s Guide to DApp Development

Ethereum har spilt en viktig rolle i å drive bredere adopsjon av blockchain-teknologien, med deres Ethereum Virtual Machine (EVM) og smarte kontrakter. Det er en plattform som lar utviklere lage og starte distribuerte apper (DApps), og utviklerne har svart med å bygge over 1500 DApps så langt! Er du en utvikler interessert i å bygge DApps? Denne utviklingsveiledningen for DApp på høyt nivå kan hjelpe deg i gang.

DApps-utvikling er ikke et enkelt plug-n-play-prosjekt, og det krever seriøs programmering. Denne utviklingsveiledningen for DApp har ikke til hensikt å dekke detaljer om den, men gir en høy oversikt over trinnene. Det gir også en ‘ressurs’ -del i den senere delen av artikkelen, som indikerer hvor du kan lære mer om et bestemt trinn.

DApp-utvikling: trinnene man trenger å gjennomføre

Her er en oversikt på høyt nivå av hva en utvikler trenger å gjøre, trinn for trinn, for å opprette og starte en Ethereum DApp:

1. Lær Ethereum:

En DApp trenger å følge et bestemt konseptuelt rammeverk og den eneste måten å forstå det er å lære Ethereum.

For eksempel må en DApp være åpen kildekode, og den må fungere autonomt uten at noen enhet kontrollerer flertallet av kryptotokenene. Endringer i en DApp må følge enighet i samfunnet. Backend-koden må inneholde smarte kontrakter og må kjøre på en desentralisert blockchain. DApp må bruke et kryptotoken generert ved hjelp av en standard kryptografisk algoritme, og dataene må lagres i en blockchain mens de følger kryptografiske standarder.

Læring av desentralisert konsensusbasert Ethereum blockchain-plattform er det første ikke-omsettelige trinnet for utvikleren å gjennomføre.

2. Få din blockchain:

Selv om det er mange klienter utvikleren kan velge mellom, anbefaler vi ‘testrpc’ for en ny DApp-utvikler. Dette verktøyet er nå en del av Truffle-pakke med verktøy, det er enkelt å bruke og enkelt å begynne å bruke et kommandolinjegrensesnitt (CLI).

Verktøyet utvinner ikke blokker som standard, men for utviklingsformålet kan blokkintervall spesifiseres ved hjelp av CLI.

3. Kommuniser med blockchain:

Det enkleste og vanligste verktøyet for å kommunisere med blockchain er ‘web3.js’. Det er enkelt å installere det, og det er spesifikke instruksjoner for å konfigurere de nødvendige parametrene, for eksempel:


  • Konfigurere acongig.js-filen;
  • Konfigurering av web3 API-funksjonene for kommunikasjon med blockchain.

4. Lær soliditet:

Soliditet er det proprietære språket til Ethereum for å skrive smarte kontrakter. Det er et funksjonsrikt språk spesielt designet for dette formålet, og dette programmeringsspråket på høyt nivå ble inspirert av C ++, Java, Python og JavaScript. En DApp kan ha sin frontend-kode på hvilket som helst språk, men backend-koden må inneholde smarte kontrakter, derfor er denne læringen også ikke omsettelig for en ny DApp-utvikler.

5. Kode smarte kontrakter:

En utvikler som koder for smarte kontrakter, må følge følgende brede retningslinjer for effektivitet:

  • Hold datalogikken og lagringskravene minimale, fordi utførelse av smarte kontrakter krever ‘gass’, dvs. et mål på datakraft. Det er ikke gratis, ‘gasspris’, dvs. et visst antall kryptotokener må betales. Det betyr at Ether (ETH), dvs. innfødt kryptovaluta fra Ethereum, må brukes på å utføre en smart kontrakt. Enkel databehandling krever mindre gass.
  • Koden må unngå kompleksitet, fordi jo mer kompleks koden er, jo større er sannsynligheten for feil. Resultatet av en smart kontrakt er irreversibel, og det er derfor viktig å kode enkle feilfrie smarte kontrakter.

6. Distribuer smarte kontrakter:

Verktøysuiten som anbefales for dette er ‘Truffle’. Det har følgende fordeler:

  • En katalog lar utvikleren opprettholde alle sine smarte kontrakter;
  • Verktøyet kan enkelt blandes inn i testrammeverket fordi skriptene kan distribuere kontraktene i testmiljøet, kjøre ‘trøffeltesten’ og kjøre vanlige tester.
  • Distribusjon ved hjelp av denne verktøypakken er enkel, og de nødvendige parametrene kan enkelt angis i config.js-filen. Testrpc må kjøre i et eget vindu distribusjonen skal fungere.

7. Påkalle smartkontrakten:

Anrop til smarte kontrakter må være i heksadesimale strenger, men det er Ethereum-kontrakts ‘applikasjons binært grensesnitt’ (ABI) biblioteker for å hjelpe med det.

8. Opprett en Ethereum-konto:

For å utføre smarte kontrakter, må utvikleren bruke Ether, og hun må opprette Ethereum-konto for det. ‘Eth-lightwallet’ anbefales fordi det er enkelt å generere offentlige og private nøkkelpar og administrere det. Utvikleren må oppdatere config.js-filen med nøkkelopplysningene. Utvikleren kan gå tilbake til trøffeltesten og se Ether bevege seg mellom kontoer.

Impotant bemerkning: Utvikleren må ikke dele sin private nøkkel med noen, eller offentliggjøre den i noe online forum.

9. Transaksjoner med den smarte kontrakten:

Etter å ha kjøpt noe Ether og lagret det på kontoen sin, må utvikleren ta det siste trinnet i DApp-utviklingen, som er å handle med Ether. Det er tre alternativer:

  1. Overfør til en annen adresse som en verdi;
  2. Ring en kontraktfunksjon som vil oppdatere nettverkets tilstand, og bruke Ether til å betale gebyrene til gruvearbeideren;
  3. Involver en kontrakt som oppdaterer nettverkets tilstand og godtar Ether som betaling. Utvikleren må også betale avgiftene til gruvearbeideren.

10. DApp-utvikling: nyttige ressurser

For en oversikt over DApp-utviklingstrinnene, kan utvikleren lese dette omfattende Hackernoon-artikkel. Følgende er ressursene for de enkelte trinnene:

  1. For å lære Ethereum: Ethereum utvikling tutorial, Hvitbok om Ethereum, og Ethereum gult papir.
  2. GitHub materiale for Testrpc.
  3. GitHub materiale for web3.js.
  4. på nett kurs for soliditet.
  5. GitHub materiale for Truffle tool suite.
  6. GitHub materiale for ABI bibliotek.
  7. GitHub materiale for eth-lightwallet.

I tillegg, ‘dappsforbeginners’Er et godt nettsted for en ny utvikler å få veiledning. Hvis du ikke er sikker på det, er det fem grunner til at du bør lære blockchain-utvikling. Fortsatt på jakt etter litt inspirasjon her er topp 10 dapps å følge i 2018.

Hvis du vil høre din opplevelse av din første opplevelse av dapputvikling i kommentarseksjonen nedenfor.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map