Kuinka luoda Blockchain-sovellus

Etsitkö opasta, jossa voit oppia rakentamaan blockchain-sovelluksen? Tässä on opas, joka voi auttaa sinua rakentamaan blockchain-sovelluksen tyhjästä.

Tässä artikkelissa rakennamme blockchain-sovelluksemme. Viime aikoina käsittelimme kuinka blockchain rakennetaan. Se oli täydellinen opas lohkoketjun rakentamisesta Python-ohjelmointikielellä. Opetusohjelman pääpaino on oppia blockchain-tekniikasta ja sen sisäisestä toiminnasta.

Tämä opetusohjelma on kuitenkin siitä, miten sovellus rakennetaan blockchainilla. Hajautettu sovellus (dApp) pystyy hyödyntämään blockchain-ominaisuuksia.

Rakennamme yksinkertaisen blockchain-sovelluksen Ethereumin avulla. Ethereum on toisen sukupolven lohkoketjutekniikka, joka tarjoaa edistyneitä ominaisuuksia, kuten älykkäät sopimukset, Proof-of-Stake, ja mikä tärkeintä, kyvyn luoda hajautettuja sovelluksia (dApps).

Joten, aloitetaan “Kuinka luoda blockchain-sovellus” -opetusohjelma. Tämä opetusohjelma on tarkoitettu myös niille, jotka haluavat rakentaa yksinkertaisen blockchain-sovelluksen. Yksinkertaisen blockchain-sovelluksen rakentamiseksi aiomme käyttää Ethereum-verkkoa.

Mutta ennen kuin aloitamme, saamme perusasiat oikein.

Ilmoittaudu nyt: Enterprise Blockchains Fundamentals -kurssi

Mikä on dApp?

Ensimmäinen vaihe, jonka aiomme toteuttaa blockchain-sovelluksen opetusohjelman rakentamisessa, on ensin oppia hajautetun sovelluksen (dApp) käsite.

dApp tarkoittaa hajautettua sovellusta. Se on erityyppinen sovellus, joka tarjoaa tärkeimmät ominaisuudet, mukaan lukien kyky toimia itsenäisesti. Sovellus tallentaa myös tietoja salauksellisesti, jotta kukaan luvaton taho ei voi käyttää niitä ilman asianmukaista lupaa.

Kaikki nämä ominaisuudet tekevät hajautetuista sovelluksista erittäin hyödyllisiä nykyisessä yritysympäristössä. Sovellukset pystyvät myös käyttämään tunnuksia, joita voidaan käyttää hyödyntämään sovelluksen tarjoamia ominaisuuksia. Lisäksi sovellus voi myös jakaa tunnuksia kannustamaan solmuja, jotka osallistuvat dApp: n toiminnallisuuteen.

Alustan valinta – miksi valitsemme Ethereum-alustan

Tällä hetkellä on monia alustoja, joiden avulla voit rakentaa dApp-sovelluksesi. Ne sisältävät suosittuja blockchain-alustoja, kuten Ethereum, Hyperledger Fabric ja Cardano. Kaikista näistä Ethereum näyttää olevan paras valinta aktiivisen yhteisön, työkalujen ja opetusohjelmien takia verkossa.


Toinen syy, miksi valitsemme Ethereumin, on se, että se käyttää vakautta. Vakautta käytetään nimenomaan dApps: n ja älykkäiden sopimusten käyttöönottoon ja luomiseen. Se on helppo oppia ja antaa sinulle joustavuutta kokeilla.

Käytännön opas hajautetun blockchain-sovelluksen rakentamiseen

Kuinka rakentaa blockchain-sovellus

Ennen kuin siirrymme syvälle koodiin, haluaisin luetella vaiheet, jotka hahmottavat blockchain-sovelluksen rakentamisen prosessin. Käydään se läpi alla.

Löydä idea

Ensimmäinen askel on löytää idea, jonka parissa työskennellä. Hajauttaminen on hieno uusi käsite, jolla voi olla monia käyttötapoja. Opiskelijana tai insinöörinä sinun tulisi keksiä hyödyllinen idea, josta voi olla hyötyä sinulle tai yrityksellesi. Älä myöskään ole huolissasi, jos et voi tulla ajatukseen, joka muuttaa maisemaa. On hyvä rakentaa yksinkertaisia ​​dApps-ohjelmia vain oppimisen ja harjoittamisen vuoksi.

Voit myös etsiä ongelmia, joita kohtaat blockchainilla, ja ehkä yrittää ratkaista ne parhaalla mahdollisella tavalla. Tässä on tarkoitus tarkastella ongelmaa kipupisteestäsi ja yrittää sitten ratkaista se.

Jos yrität rakentaa dAppia yrityksellesi tai yrityksesi vaatimusten mukaan, sinun on tehtävä asianmukainen kustannus-hyötyanalyysi. Sinun on myös tutkittava projektiin liittyviä riskejä ja selvitettävä, pystyykö liiketoimintatiimisi hallitsemaan sovellusta huolellisesti.

Missään olosuhteissa, sinun ei pidä tehdä mitään kiireellistä päätöstä, jota valitat myöhemmin. Tämä johtuu siitä, että blockchain-kehitys on kallista, varsinkin kun on kyse kyvyn löytämisestä kehittää ja hallita sitä. Tämän lisäksi blockchainilla työskenteleviä kehittäjiä on niukasti. Lyhyesti sanottuna sinun on toteutettava asianmukaiset vaiheet blockchain- tai blockchain-sovelluskehityksessä.

Tässä on opas dApps-kehitykseen, josta ymmärrät uuden hajautetun sovelluksen luomisen mekanismit.

Valitse konsensusmenetelmä

Mikä tahansa hajautettu sovellus vaatii toimiakseen oikean konsensusalgoritmin. Se varmistaa, että liiketoimet validoidaan, eikä petoksia voi tapahtua. Kehittäjänä tai oppijana sinun on valittava jokin käytettävissä olevista yksimielisistä menetelmistä, mukaan lukien todistus vaarnasta, delegoitu panos todiste, bysanttilainen vikasietoinen ja niin edelleen! Valinnan tulisi riippua tuntemuksestasi ja sovelluksen vaatimuksista.

Alustan valitseminen

Täällä sinun on valittava valitsemasi foorumi. Selvästi olemme jo käsitelleet yllä olevaa asiaa. Sinulla on pääasiassa kolme alustaa, joista valita, mukaan lukien Ethereum, Hyperledger Fabric ja Cardano.

Tähän voit käyttää monia yrityslohkoketjuja, mutta aiomme mennä Ethereumin kanssa.

Hallintakonsoli ja käyttöliittymä

Sovelluksilla tulisi olla asianmukainen käyttökokemus. Siksi sinun pitäisi rakentaa blockchain-sovellus, jolla on hyvä käyttöliittymä. Sovelluksessa tulisi olla myös hallintakonsoli, jotta voit hallita sitä ongelmitta.

Blockchain-periaatteiden ymmärtäminen

Kehittäjien on tavallista aloittaa blockchain-sovelluskehitysopetus ymmärtämättä taustalla olevia käsitteitä ja periaatteita. Siksi suosittelen blockchain-perusteet kokonaan ennen kuin aloitan sovelluskehitysoppaiden kanssa. Saatat myös haluta lukea sen ekosysteemistä, mukaan lukien blockchain-työkalut, alustat ja kryptovaluutat.

Harjoittele ja kehity

Harjoittele taitojasi niin paljon kuin pystyt. Tämä antaa sinulle taitoja kehittää monimutkaisempia sovelluksia tulevaisuudessa.

Kuinka rakentaa Blockchain-sovellus? Helppo lähestymistapa

Kyllä, luit sen oikein. Tässä osiossa keskitymme luomaan suoraviivainen blockchain-sovellus vain viidessä yksinkertaisessa vaiheessa. Jos et ole koskaan rakentanut blockchain-sovellusta, nämä viisi vaihetta auttavat sinua ymmärtämään prosessia paremmin.

Viisi vaihetta ovat seuraavat.

  • Asenna riippuvuudet ja kloonivarastot.
  • Suoritetaan Ganache CLI
  • Sopimuksen laatiminen
  • Sopimusten käyttöönotto
  • Sopimusten vuorovaikutus

Ja siinä kaikki. Löydät tarkemmat vaiheet itse viestistä. Se on yksinkertainen äänestysohjelma blockchainissa.

Kuinka rakentaa Blockchain-sovellus? Kova lähestymistapa

Hyvä on! Sait minut! Et halua helppoa tapaa, mutta haluat oppia blockchainin vaikeasti. Älä huoli, sillä tässä osiossa aiomme luoda todellinen luettelosovelluksen käyttämällä Ethereumin älykkäitä sopimuksia.

Blockchain-sovelluksen toiminta

Ennen kuin sukelamme syvälle blockchain-sovelluksen luomiseen, yritetään ymmärtää, miten blockchain-sovellus toimisi ensinnäkin.

Tämän ymmärtämiseksi katsotaanpa, kuinka yksinkertainen sovellus toimii. Kaikki Internetissä toimivat sovellukset hahmonnetaan käyttäjän tietokoneella selaimella tai Windows-sovelluksella. Joka tapauksessa se pyytää palvelimelta sivuja tai tietoja, jotka sitten renderöidään käyttäjän tietokoneelle.

Verkkosovelluksen tapauksessa kaikki on keskitetty. Tämä tarjoaa joitain etuja; se jättää kuitenkin paljon toivomisen varaa turvallisuuden suhteen. Blockchain-sovellukset toimivat täysin eri tavalla. Kaikki on hajautettu, mukaan lukien koodi ja sovellukseen tallennetut tiedot.

Älykkäät sopimukset

Tärkeintä tässä on älykäs sopimus. Älykäs sopimus helpottaa itse sovellusta. Se sisältää kaiken koodin, joka saa sovelluksen toimimaan. Se myös automatisoi prosessin ja varmistaa, että se toimii tarkoitetulla tavalla. Opetusohjelmassa aiomme käyttää älykkäitä sopimuksia tehtäväluettelon eri toimintojen kirjoittamiseen.

Älykkäät sopimukset käyttävät Solidity-ohjelmointikieltä. Se on samanlainen kuin JavaScript. Kun älykäs sopimus on kirjoitettu, sen koodi muuttuu muuttumattomaksi ja muuttumattomaksi. Voit vapaasti muuttaa koodia asennuksen aikana. Kun sovellus on kuitenkin otettu käyttöön, et voi muuttaa koodia. Tämä tehdään tuomaan luotettavuus ja turvallisuus blockchain-sovelluksiin. Lähestymistapa tarkoittaa myös sitä, että sinun on oltava erityisen varovainen ja tehtävä kaikki testit ennen älykkään sopimuksen käyttöönottoa. Älykkäät sopimuskoodit ovat myös luonteeltaan julkisia.

Haluatko oppia rakentamaan lohkoketjun Pythonilla? Tässä on opetusohjelma lohkoketjun rakentamiseen Pythonilla, jota voit seurata.

Blockchainin tehtäväluettelosovelluksen tekeminen

Jotta ymmärrät käsitteen, sinun on ensin opittava, kuinka Todo blockchain -sovellus toimii. Käytämme sovelluksen tekemiseen Ethereumia. Sovelluksemme käyttää yhtä Ethereum-solmua ja sillä on myös asiakaspuolen sovellus. Aiomme käyttää Solidityä älykkään sopimuksen kirjoittamiseen ja sitten sen käyttöönottoon.

Kehittäjänä sinun on käytettävä Ethereum-lompakkoa, joka on helppo tehdä.

Valmistautuminen – ympäristön luominen

Paikallisen ympäristön luomiseen tarvitaan useita työkaluja ja paketteja. Käydään läpi ne yksi kerrallaan.

Ganache

Ganache on Ethereumin kehitystyökalu. Sen avulla voit hallita, ottaa käyttöön ja kehittää sovelluksia, älykkäitä sopimuksia ja testejä. Suoritamme opetusohjelman Windows-version. Jos sinulla on eri käyttöjärjestelmä, voit myös ladata Mac- tai Linux-version. Asennuksen jälkeen sinun pitäisi pystyä käyttämään sitä komentorivityökalun avulla.

Node.js

Node.js on seuraava asennettava työkalumme. Jotta yksityinen lohkoketju toimisi koneellasi, sinun on asennettava Node Package Manager.

Kun olet asentanut, avaa päätelaite ja kirjoita alla oleva komento. Jos se toimii, olet hyvä mennä.

$ solmu -v

MetaMask Ethereum -lompakko

Kun aiomme työskennellä Ethereum-lohkoketjun parissa, tarvitsemme lompakon, joka voi toimia selaimella. Metamask on verkkoselaimen lompakko, jonka avulla voit olla vuorovaikutuksessa Ethereumin estoketjun kanssa.

Tryffeli kehys

Viimeinen ohjelmisto, jonka aiomme asentaa, on Tryffeli kehys. Se tarjoaa laajan joukon työkaluja, joiden avulla voit työskennellä tehokkaasti dApp-sovelluksessasi. Voit käyttää Solidity-ohjelmointikieltä Ethereumin älykkään sopimuksen kehittämiseen.

Jotkut tryffelin kehyksen tärkeimmistä ominaisuuksista sisältävät seuraavat

  • Oikea älykäs sopimusten hallinta
  • Verkostojen hallinta
  • Automaattinen testaus
  • Kehityskonsoli
  • Script Runner
  • Käyttöönotto ja muuttoliikkeet
  • Asiakaspuolen kehitys.

Asentaaksesi sinun on käytettävä npm-komento. Suorita yksinkertaisesti seuraava komento komentorivillä.

$ npm asennus -g [sähköposti suojattu]

Kuinka rakentaa blockchain-sovellus

Asennuksen suorittaminen kestää jonkin aikaa. Huomaa myös, että sinun on asennettava tarkka versio seurataksesi opetusohjelmaa.

Haluatko tulla asiantuntijaksi blockchain-ammattilaiseksi? Ilmoittaudu sertifioidulle yrityksen blockchain-ammattikurssillemme nyt!

Projektin perustaminen

Viileä! Kehitysympäristö on nyt käyttövalmis. Nyt meidän tarvitsee vain luoda projekti. Tätä varten meidän on luotava projektihakemisto. Tehdään se alla.

$ mkdir dapp-todo

$ cd dapp-todo

Rakenna yksinkertainen blockchain-sovellus

Kun olet kansiossa, sinun on aloitettava tryffeliprojekti suorittamalla alla oleva komento.

$ tryffeli-init

Rakenna sovellus blockchainin avulla

Kun olet valmis, sinulle näytetään yllä olevan kaltainen viesti. Tämä tarkoittaa, että kansio ja tiedostot on luotu onnistuneesti. Nyt voit avata kansion suosikkitekstieditorissasi. Mutta ennen kuin teet sen, sinun on luotava package.json tiedosto. Tämä auttaa asentamaan projektille tarvittavat riippuvuudet.

Voit luoda tiedoston manuaalisesti ja tallentaa sitten alla olevan sisällön.

{

“Nimi”: “dapp-todo”,

“Version”: “1.0.0”,

“Description”: ”Ethereumilla toimiva tehtävälista”,

“Main”: “tryffeli-config.js”,

“Hakemistot”: {

“testi testi”

},

“Skriptit”: {

“Dev”: “lite-palvelin”,

“Test”: “echo” Virhe: testiä ei määritetty \ ” && sexit 1 ″

},

“Kirjailija”: “[sähköposti suojattu]”,

“Lisenssi”: “ISC”,

“DevDependencies”: {

“Bootstrap”: “4.1.3”,

“Chai”: “^ 4.1.2”,

“Chai-kuten luvattu”: “^ 7.1.1”,

“Chai-bignumber”: “^ 2.0.2”,

“Lite-server”: ”^ 2.3.0”,

“Nodemon”: “^ 1.17.3”,

“Tryffeli”: “5.0.2”,

“Tryffelisopimus”: “3.0.6”

}

}

Kun olet valmis, asenna riippuvuudet suorittamalla seuraava komento.

$ npm asennus

Hakemistorakenteen ymmärtäminen

Hakemistorakenne näyttää alla olevalta.

Ymmärretään jokainen kansio yksitellen.

  • Sopimukset: Hakemisto sisältää kaikki älykkäät sopimukset. Migrations.sol-sopimus käsittelee siirrot estoketjuun.
  • Siirtymät: Siirtohakemisto sisältää siirtotiedot. Sieltä muuttoliikkeet tapahtuvat.
  • solmu_moduulit: Se sisältää kaikki solmumoduulit / riippuvuudet.
  • Testata: Tämä hakemisto sisältää testitiedostot.
  • tryffeli-config.js: Tämä tiedosto sisältää tryffeliprojektin kokoonpanon.

Älykkään sopimuksen luominen

Nyt on aika aloittaa älykkään sopimuksen luominen. Älykkäät sopimuksemme tallennetaan sopimusten kansioon. Luodaan älykäs sopimustiedosto nimeltä todo.sol

Kun olet valmis, sinun on nyt kirjoitettava koodi alla.

käytännön kiinteys ^ 0,5,0;

sopimus Todo {

// Koodi tähän

}

Ensimmäinen koodirivi määrittää, mitä Solidity-versiota käytämme älykkään sopimuksen kirjoittamiseen. Seuraavaksi meidän on käytettävä sopimuksen avainsanaa ja luotava Todo-sopimus. Tämä sisältää älykkään sopimuksen koodin.

Lisätään nyt muuttuja, jotta voimme nähdä, toimiiko kaikki tarkoitetulla tavalla.

käytännön kiinteys ^ 0,5,0;

sopimus Todo {

uint Tehtävät = 0;

}

Tässä määritellään tehtävämuuttuja, joka laskee Todo-sovelluksessamme olevien tehtävien määrän.

Yhdistetään Ganacheen

Kun älykäs sopimuksemme on määritetty oikein Trufflessa, meidän on nyt yhdistettävä luomamme Ganache-yksityinen lohkoketju. Tätä varten jotkut määritystiedostot on päivitettävä. Meidän on myös luotava siirtymiskomentosarja ja suoritettava se, jotta voimme muodostaa yhteyden henkilökohtaiseen blockchain-verkkoon.

Aloittamiseksi meidän on päivitettävä truffle-config.json-tiedosto. Sen pitäisi olla ydinprojektihakemistossa. Kun avaat sen, kopioi ja liitä seuraava koodi.

module.exports = {

verkot: {

kehitys: {

isäntä: “127.0.0.1”,

portti: 7545,

network_id: “*” // Verkkotunnuksen vastaavuus

}

},

solc: {

optimoija: {

käytössä: tosi,

juoksu: 200

}

}

}

Kun truffle-config.js-tiedosto on luotu, on nyt aika luoda siirtymiskomentosarja, jotta luomamme älykäs sopimus voidaan siirtää henkilökohtaiseen blockchain-verkkoon.

Tallennamme nimen nimellä 2_deploy_contracts.js

Siirtymät ovat erittäin kriittisiä Todo-sovelluksellemme. Koska estoketju on tietyntyyppinen tietokanta, meidän on vaihdettava se tilasta toiseen. Siellä muuttoliikkeet auttavat.

Siirtotiedostojen linkittämiseksi meidän on päivitettävä lisäämällä seuraava koodi vasta luotuun siirtotiedostoon.

var Todo = artefaktit.vaativat (“./ Todo.sol”);

module.exports = function (käyttöönottaja) {

deployer.deploy (Todo)

}

Ensimmäinen koodirivi luo yksinkertaisesti muuttujan, joka viittaa älykkääseen sopimukseemme. Kun se on valmis, otamme sen käyttöön.

Suoritetaan nyt ja suoritetaan sitten siirtokomento.

$ Truffle siirtyy

Voit käyttää konsolia myös alla olevan komennon avulla.

$ tryffelikonsoli

Todo List -sovelluksen kehittäminen

Nyt kun olemme onnistuneesti suorittaneet ensimmäisen Ethereum-älykkään sopimuksemme, on nyt aika lisätä ominaisuuksia dApp-sovellukseemme. DApp on yksinkertainen. Siinä luetellaan tehtävät Todo-luettelossamme. Meidän on käytettävä älykästä sopimusta sen toteuttamiseksi.

Tehdään se alla.

käytännön kiinteys ^ 0,5,0;

sopimus Todo {

uint julkiset tehtävät = 0;

struct Tehtävä {

uint id;

merkkijonon sisältö;

bool valmis;

}

}

Tässä käytimme struktura-avainsanaa uuden strukturitehtävän luomiseen. Käytämme sitä tehtävän rakenteen määrittelemiseen, joka sisältää id: n, sisällön ja valmiin loogisen arvon.

Seuraavaksi meidän on nyt kartoitettava Tasks-rakenteemme ja tehtävä siitä julkinen, jotta estoketju voi käyttää sitä. Tätä varten meidän on lisättävä seuraava koodirivi.

Älykäs sopimuskoodi näyttää nyt alla olevalta.

käytännön kiinteys ^ 0,5,0;

sopimus Todo {

uint julkiset tehtävät = 0;

struct Tehtävä {

uint id;

merkkijonon sisältö;

bool valmis;

}

kartoitus (uint => Tehtävä) julkiset tehtävät;

}

Viimeiseksi meidän on nyt luotava toiminto, joka hoitaa tehtävät.

function createTask (merkkijono muistin _sisältö) public {

taskCount ++;

task [taskCount] = Tehtävä (taskCount, _content, false)

}

Toiminto on pääosin itsestään selvä. Olemme luoneet toiminnon, jotta se voi laskea Todo dApp -sovelluksessa lueteltujen tehtävien määrän.

Lopuksi meidän on luotava konstruktori Todo-luokan alustamiseksi.

rakentaja () public {

createTask (“Tämä on ensimmäinen tehtävämme”)

}

Todo.sol-tiedostomme pitäisi nyt näyttää alla olevalta.

käytännön kiinteys ^ 0,5,0;

sopimus Todo {

uint julkiset tehtävät = 0;

struct Tehtävä {

uint id;

merkkijonon sisältö;

bool valmis;

}

rakentaja () public {

createTask (“Tämä on ensimmäinen tehtävämme”)

}

kartoitus (uint => Tehtävä) julkiset tehtävät;

function createTask (merkkijono muistin _sisältö) public {

taskCount ++;

task [taskCount] = Tehtävä (taskCount, _content, false)

}

}

Luo Tehtävät

Voimme myös luoda tehtäviä Todo dApp -sovelluksessamme. Tätä varten meidän on luotava liipaisin, kun uusi tehtävä luodaan. Lähestymistapamme on luoda uusi tapahtuma TaskCreated ja lisätä se sitten olemassa olevaan createTask () -funktioon.

tapahtuma TaskCreated (

uint id;

merkkijonon sisältö,

bool valmis

);

Lisää nyt seuraava rivi createTask () -funktioon.

lähettää TaskCreated (taskCount, _content, false);

Tehtävien suorittaminen

Suoritetut tehtävät voidaan lisätä myös tapahtuman avulla. Sinun on lisättävä seuraava tapahtuma Todo-sopimukseen.

tapahtuma TaskCompleted (

uint id,

bool valmis

);

Jotta se toimisi, sinun on myös lisättävä uusi toiminto.

function toggleCompleted (uint _id) public {

Tehtävämuisti _task = tehtävät [_id];

_task.completed =! _task.completed;

tehtävät [_id] = _task;

lähettää TaskCompleted (_id, _task.completed)

}

Onnittelut! Olet luonut ensimmäisen Todo-luettelosi dApp: n Ethereumin lohkoketjussa.

Loppuhuomautus

Tämä johtaa meidät myös blockchain-sovelluksen opetusohjelman rakentamiseen. Näin rakennat build blockchain -sovelluksen tyhjästä.

Sieltä sinun on testattava sopimus kunnolla, ennen kuin siirrät sen lopulta lohkoketjuun. Voit myös luoda sovelluksen käyttöliittymän ja testata sitä. Jos et ole kiinnostunut siitä, voit käynnistää konsolin ja käyttää muuttujia ja toimintoa testataksesi asioita!

Mutta jos et vieläkään ole tietoinen blockchainin seurauksista, kehotamme sinua aloittamaan ilmaisen blockchain-kurssimme saadaksesi lisätietoja siitä. Ohjelmoinnin ymmärtäminen on sinulle todella vaikeaa ilman, että opit tai ymmärrät sen toimintaa.

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