Nybörjarguide för DApp-utveckling

Ethereum har spelat en viktig roll i att driva bredare antagande av blockchain-tekniken med deras Ethereum Virtual Machine (EVM) och smarta kontrakt. Det är en plattform som gör det möjligt för utvecklare att skapa och starta distribuerade appar (DApps), och utvecklarna har svarat med att bygga över 1 500 DApps hittills! Är du en utvecklare intresserad av att bygga DApps? Denna utvecklingsguide för DApp på hög nivå kan hjälpa dig att komma igång.

DApps-utveckling är inte ett enkelt plug-n-play-projekt, och det kräver seriös programmering. Den här utvecklingsguiden för DApp har inte för avsikt att täcka detaljer om den, utan ger en överblick över stegen på hög nivå. Det innehåller också ett ”resurs” -avsnitt i den senare delen av artikeln, som anger var du kan lära dig mer om ett visst steg.

DApp-utveckling: stegen man behöver ta

Här är en översikt på hög nivå av vad en utvecklare behöver göra, steg för steg, för att skapa och starta en Ethereum DApp:

1. Lär dig Ethereum:

En DApp behöver följa en specifik konceptuell ram och det enda sättet att förstå det är att lära sig Ethereum.

Till exempel måste en DApp vara öppen källkod och den måste fungera autonomt utan att någon enhet kontrollerar majoriteten av kryptotoken. Ändringar i en DApp måste följa ett samförstånd i samhället. Backend-koden måste innehålla smarta kontrakt och måste köras på en decentraliserad blockchain. DApp måste använda en kryptotoken genererad med hjälp av en standardkryptografisk algoritm, och data måste lagras i en blockchain medan de följer kryptografiska standarder.

Att lära sig decentraliserad konsensusbaserad Ethereum blockchain-plattform är det första icke-förhandlingsbara steget för utvecklaren att genomföra.

2. Skaffa din blockchain:

Även om det finns många klienter som utvecklaren kan välja mellan, rekommenderar vi ”testrpc” för en ny DApp-utvecklare. Det här verktyget är nu en del av Truffle-verktyget, det är enkelt att använda och lätt att börja använda ett kommandoradsgränssnitt (CLI).

Verktyget bryter inte block som standard, men för utvecklingsändamålet kan blockintervall anges med CLI.

3. Kommunicera med blockchain:

Det enklaste och vanligaste verktyget för att kommunicera med blockchain är ‘web3.js’. Det är enkelt att installera det och det finns specifika instruktioner för att konfigurera nödvändiga parametrar, till exempel:

  • Konfigurera acongig.js-filen;
  • Konfigurera web3 API-funktionerna för att kommunicera med blockchain.

4. Lär dig soliditet:

Soliditet är Ethereums eget språk för att skriva smarta kontrakt. Det är ett funktionsrikt språk som är särskilt utformat för detta ändamål, och det här programmeringsspråket på hög nivå inspirerades av C ++, Java, Python och JavaScript. En DApp kan ha sin frontend-kod på vilket språk som helst, men backend-koden måste innehålla smarta kontrakt, därför är denna inlärning inte förhandlingsbar för en ny DApp-utvecklare.

5. Koda smarta kontrakt:

En utvecklare som kodar smarta kontrakt måste följa följande allmänna riktlinjer för effektivitet:

  • Håll datalogiken och lagringskraven minimala, för att utföra smarta kontrakt kräver “gas”, dvs ett mått på datorkraft. Det är inte gratis, ”gaspris”, det vill säga ett visst antal kryptotoken måste betalas. Det betyder att Ether (ETH), det vill säga inbyggd kryptovaluta i Ethereum, måste spenderas på att genomföra ett smart kontrakt. Enkel datalogik kräver mindre gas.
  • Koden måste undvika komplexitet, för ju mer komplex koden är, desto högre är sannolikheten för fel. Resultatet av ett smart kontrakt är oåterkalleligt, och det är därför absolut nödvändigt att koda enkla felfria smarta kontrakt.

6. Distribuera smarta kontrakt:

Den verktygssvit som rekommenderas för detta är ”Truffle”. Det har följande fördelar:

  • En katalog tillåter utvecklaren att behålla alla sina smarta kontrakt;
  • Verktyget kan enkelt smälta in i testramverket eftersom manusen kan distribuera kontrakten i testmiljön, köra tryffeltestet och köra regelbundna tester.
  • Det är enkelt att distribuera med den här verktyget och de nödvändiga parametrarna kan enkelt ställas in i config.js-filen. Testrpc måste köras i ett separat fönster för distributionen för att fungera.

7. Åkalla det smarta kontraktet:

Samtal till smarta kontrakt måste vara i hexadecimala strängar, men det finns Ethereum-kontrakts ‘applikations binärt gränssnitt’ (ABI) bibliotek som hjälper till med det.

8. Skapa ett Ethereum-konto:

För att utföra smarta kontrakt måste utvecklaren spendera Ether, och hon måste skapa ett Ethereum-konto för det. “Eth-lightwallet” rekommenderas eftersom det är enkelt att skapa offentliga och privata nyckelpar och hantera det. Utvecklaren behöver uppdatera config.js-filen med nyckelinformationen. Utvecklaren kan gå tillbaka till tryffeltestet och se Ether flytta mellan konton.

Viktigt anmärkning: Utvecklaren får inte dela sin privata nyckel med någon eller publicera den i något onlineforum.

9. Transakera med det smarta kontraktet:

Efter att ha köpt lite Ether och lagrat det på sitt konto måste utvecklaren ta det sista steget i DApp-utvecklingen, det vill säga transaktioner med Ether. Det finns tre alternativ:

  1. Överför till en annan adress som ett värde;
  2. Ring en kontraktsfunktion som uppdaterar nätverkets tillstånd och spenderar Ether för att betala avgifterna till gruvarbetaren;
  3. Delta i ett kontrakt som uppdaterar nätverkets tillstånd och accepterar Ether som betalning. Utvecklaren måste också betala avgifterna till gruvarbetaren.

10. Utveckling av DApp: användbara resurser

För en översikt över utvecklingsstegen för DApp kan utvecklaren läsa detta omfattande artikel om Hackernoon. Följande är resurserna för de enskilda stegen:

  1. Att lära dig Ethereum: Handledning för utveckling av Ethereum, Vitbok om Ethereum, och Ethereum gult papper.
  2. GitHub material för Testrpc.
  3. GitHub material för web3.js.
  4. Uppkopplad kurs för fasthet.
  5. GitHub material för Truffle tool suite.
  6. GitHub material för ABI-biblioteket.
  7. GitHub material för eth-lightwallet.

Dessutom, ”dappsför nybörjareÄr en bra webbplats för en ny utvecklare att få vägledning. Om du inte är säker, här är 5 skäl till varför du bör lära dig blockchain-utveckling. Letar du fortfarande efter lite inspiration här är topp 10 dapps att följa 2018.

Skulle älska din hör din upplevelse av din första dapp-utvecklingsupplevelse i kommentarsektionen nedan.

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