10-minutna orientacija Ethereum

Namen tega priročnika je, da se čim hitreje potopite v Web3, tako da imate kontekst in osnovno razumevanje, potrebno za začetek učenja in začetek razvoja.

Zakaj Blockchain?

Če ste nov v vesolju, morda ne bo jasno, kaj »decentralizirani internet« ponuja razvijalcu. Javni blockchain, kot je Ethereum, si omislite kot jasno “državo” – in vir resnice – za vse, ki v njem sodelujejo, do katerega dostopa vsak, ki ima internetno povezavo, sistem, ki uporablja moč odprtokodnega protokola in odvečnost. medsebojnega povezovanja, da ostane zanesljivo in varno. Namesto da bi od vsakega razvijalca aplikacij zahtevali, da ustvari in vzdržuje celotno stanje svoje aplikacije na zasebnih strežnikih, se lahko veliko shrani v javni blokchain in pridobi iz njega. Pogost, zaupanja vreden, varen zaledni del.

Razlog, da je to mogoče, je zaradi edinstvenih značilnosti baze podatkov blockchain. Samo za pisanje: kadar lahko tipična zbirka podatkov dodaja in odstranjuje zapise, podatki verige blokov obstajajo za vedno in jih ni mogoče odstraniti. Mreža vozlišč vzdržuje to bazo podatkov kot “razdeljeno knjigo” in ima stroge protokole, kdo ima dovoljenje za pisanje v določenem trenutku. Eden od zanimivih vidikov tehnologije je, kako se dovoljenja za zapis razdelijo med vozlišča, ki morda ne potrebujejo posebnega dovoljenja za pridružitev. Če bi zavrteli svoje javno vozlišče Ethereum, bi imeli dostop do pisanja do celotnega omrežja: pod pogojem, da ste izpolnili “dokaz o delu”, ki je potreben za privilegij pisanja vozlišča, preden to stori katero koli drugo vozlišče.. 

Glavni in tipičen primer delovanja blockchain tehnologije je enostavnost pošiljanja in prejemanja kriptovalut. Javna knjiga Ethereum razvijalcu omogoča, da izvede plačilne prehode brez bank, računov ali drugih posrednikov. 

Razvijalec bi lahko ustvaril lasten žeton Ethereum, ne da bi mu bilo treba ustvariti infrastrukturo, potrebno uporabnikom, da z njimi trgujejo. Spletna igralna platforma lahko označuje predmete v igrah, uporabniki pa jih lahko kupijo in trgujejo zunaj platforme ter jih imajo v lasti ločeno od same igralne platforme. Poleg trgovanja s predmeti za uporabo v igri imajo digitalni zbirateljski predmeti velik potencial v prihodnosti. Ko je e-šport vse bolj priljubljen, imate morda digitalno tokeniziran ekvivalent “domače žoge”.

Z vsakim uporabnikom, ki ima svoj par javnih / zasebnih ključev, je preverjanje pristnosti uporabnika poenostavljeno, saj morajo aplikacije samo preveriti, ali lahko uporabnik podpiše transakcije s svojim zasebnim ključem..

Pametne pogodbe lahko uporabimo za ustvarjanje programabilnega denarja. Razmislite o osnovni uporabi programabilne pametne pogodbe za reševanje situacije, ko hočeta dva lastnika stanovanja najemniku razdeliti plačilo najemnine 50/50. Običajno bi moral najemnik plačati vsakemu lastniku posebej ali pa enemu lastniku ali agentu, lastnik ali agent pa bi denar izplačal. Čeprav ta situacija ni posebej problematična, upoštevajte implicitno zaupanje, ki ga potrebuje en posameznik, da drugemu zagotovi svoj delež. Primerjajte to s preprosto pametno pogodbo, ki programsko razdeli vsa dohodna sredstva in jih pošlje na naslov vsakega lastnika. Najemnik mora najemnino poslati le na ta naslov in vsak lastnik bo takoj prejel svoj delež. Zaradi varnosti in nespremenljivosti verige blokov, kot je Ethereum, je lahko vsakemu lastniku zagotovljeno, da bo pametna pogodba delovala po želji, in lahko revidira njeno kodo. 

Ko imamo digitalno hrbtenico zaupanja, ki jo zagotavlja blockchain, lahko prednosti programiranja uporabimo tudi za pomembne družbene probleme. Bančno storitev lahko ponudimo v nekaj vrsticah kode. Identiteto lahko potrdimo z nekaj kliki. Vse s protokolom, ki se lahko izvaja na skoraj vseh računalnikih kjer koli na svetu.

Ker je prostor nov in se razvija, je razvijalcem na voljo veliko možnosti za izdelavo novih vrst orodij, aplikacij in sistemov ter za pripravo novih primerov uporabe te tehnologije..

Rešitev v iskanju težave?

Pogost refren pri kritikah tehnologije veriženja blokov je, da gre za rešitev v iskanju problema. Lahko se trdi, da je bila digitalna valuta prva aplikacija za ubijanje blokov, Distributed Finance ali DeFi pa se oblikuje v naslednjo, celotni obseg uporabe te tehnologije je trenutno neznan in je eden od glavnih razlogov za razvoj v vesolju se mi zdi razburljivo biti del. Že več kot desetletje laserska tehnologija ni imela očitne uporabe, dokler je raziskovalci, eksperimentatorji in podjetniki niso mogli uporabiti na povsem nepričakovane načine. Čeprav bi lahko isti argument uporabili za katero koli novo tehnologijo, je množično sprejemanje digitalne valute in več kot 350 milijard dolarjev, ki jih trenutno vsebuje distribuirane, neupravljane in decentralizirane verige blokov, precej izjemno. 

Osnovna porazdeljena struktura aplikacij 

Razdeljena aplikacija je na splošno tista, ki se poveže z verigo blokov nekje v njenem paketu in je verjetno na nek način bistvenega pomena za njeno delovanje. Distribuirane aplikacije so mešanica običajnih prednjih in zalednih sistemov, ki jih najdete v spletni aplikaciji, vendar bodo za povezavo z omrežjem Ethereum uporabljale knjižnico, kot je web3.js. Nekatere porazdeljene aplikacije so popolnoma porazdeljene: v celoti živijo v porazdeljenih omrežjih.

Na koncu uporabnika, MetaMask je priljubljen vtičnik, ki upravlja Ethereum denarnico uporabnikov. MetaMask ponuja vmesnik za uporabnika za podpisovanje transakcij in dokazovanje njihove “identitete”.

Dana porazdeljena aplikacija se lahko za preverjanje pristnosti poveže z verigo blokov Ethereum in tudi z denarnico uporabnikov MetaMask (ali drugo denarnico).. 

Povezava z Ethereumom 

Za interakcijo z Ethereumom običajno potrebujete vozlišče. Vozlišče je temeljni del strukture verige blokov, vrstnik, ki se poveže z drugimi vrstniki in tvori decentralizirano strukturo. Protokol je glavni v javnem omrežju: ni osrednjega strežnika, pooblastila in omejitev glede tega, kdo lahko upravlja vozlišče. Za vsa sodelujoča vozlišča obstaja le skupni protokol.

Mnogi razvijalci aplikacij raje ne bi zagnali lastnega vozlišča Ethereum, zato so storitve na primer Infura obstajajo za zagotavljanje prehoda in API-ja za Ethereum, ki jih lahko razvijalci uporabijo namesto tega.

Pametne pogodbe

Medtem ko je Bitcoin omrežje ena najbolj znanih verig blokov, ima Ethereum nabor funkcij, ki je za razvijalce bolj razburljiv, saj vključuje Turingov popoln virtualni stroj, ki lahko izvaja majhne programe, imenovane pametne pogodbe. Kot rezultat ima Ethereum najmočnejšo in najbolj aktivno skupnost razvijalcev med katerim koli ekosistemom blockchain. 

Pametne pogodbe delujejo na vozliščih in uporabljajo transakcije za njihov vhod in izhod. Pametne pogodbe so na naslovih v verigi blokov, enako kot naslov uporabniškega računa. Za interakcijo s pametno pogodbo ji morate poslati samo transakcijo skupaj z vhodnimi podatki. 

Plin

Za vodenje pametne pogodbe je potreben plin, majhen strošek, ki operaterjem vozlišč kompenzira storitev izvrševanja pametne pogodbe, hkrati pa zmanjša pojavnost neželene pošte (tako da draži neželeno pošto) in prepreči, da bi se šifrirane pametne pogodbe neskončno zankale in zataknile omrežje..

Mainnet, Testnet, druga omrežja

Mainnet v jeziku blockchain se nanaša na primarno aktivno omrežje za dani protokol. V primeru Ethereuma je mainnet mesto, kjer se izmenjuje resnična vrednost, in velja za vir resnice. Toda katera koli skupina vozlišč lahko tvori svoje omrežje. Testnet služi skupnosti razvijalcev tako, da ponuja veliko manjša omrežja, kjer sta Eth in gas brezplačna, zato lahko razvijalci svoje projekte in kode preizkušajo brez tveganja. Testne mreže Ethereum se imenujejo Ropsten, Kovan, Rinkeby in Görli.

Omrežja Ethereum se uporabljajo tudi za poslovne aplikacije: omrežja po meri, ki delujejo na podlagi dovoljenj (v primerjavi z omrežjem in testnimi mrežami brez dovoljenj), da olajšajo transakcije in druge operacije med majhno skupino organizacij (na primer). Ta omrežja imajo veliko manj vozlišč in običajno služijo določenemu namenu. Na primer, velike banke lahko uporabljajo verigo blokov za medbančno poravnavo.

Razvoj v Ethereumu

Razvoj v Ethereumu na splošno najprej poteka na lokalnih, doma vrtetih verigah blokov. Razvijalci lahko prosto uporabljajo nekaj, kot je geth, programska oprema ukazne vrstice, ki vam omogoča ustvarjanje omrežij Ethereum. Toda to je kot programiranje v nizkorazrednem jeziku: paket Truffle, ki olajša stvari, ustreza številnim potrebam razvijalcev. Ganache, del paketa, razvijalcem olajša zagon lokalnega omrežja verig blokov za preizkušanje svojih aplikacij, za razvojne namene pa ponuja tudi “verigo blokov” z orodji ukazne vrstice. Drizzle pomaga pri front-end razvoju, sam Truffle pa je okvir, ki olajša razvoj in uvajanje pametnih pogodb.

Za interakcijo s samo verigo blokov je potrebna uporaba API-ja (na primer web3.js) in dostop do vozlišča; namesto da bi upravljali svoja vozlišča, bodo mnogi razvijalci uporabili takšno storitev Infura kot Ethereum API.

Pametni pogodbeni jeziki

Trenutno je najbolj priljubljen jezik za kodiranje pametnih pogodb Trdnost. Ta jezik, podoben javascriptu, je dokaj enostaven za nove razvijalce, zlasti tiste z izkušnjami spletnega kodiranja. Remix je spletna IDE, ki razvijalcem omogoča eksperimentiranje z ustvarjanjem pametnih pogodb. Za programerje pametnih pogodb se je treba naučiti veliko pomembnih podrobnosti, saj pametne pogodbe v glavnem omrežju delujejo resnično in so po uvedbi nespremenljive (čeprav obstajajo programske metodologije, ki pri tem pomagajo).

Celoten kup

Tako kot pri vsakem sodobnem spletnem razvoju obstaja veliko možnosti za uporabo komponent na različnih ravneh sklada. Več podrobnosti lahko dobite v vedno posodobljenem bloku verig blokov.

Preprost sklad projektov

Tu je tipičen nabor razvojnih orodij, ki jih lahko uporabite v preprostem projektu:

NPM 

Upravitelj paketov vozlišč, del node.js

Okvir za tartufe

Paket orodij za lažji razvoj

Ganache

Iz okvira Truffle, ki se uporablja za zagon zasebne verige blokov na vašem računalniku

MetaMask

Blockchain uporabniški vmesnik in prehod v Ethereum; gre za vtičnik za brskalnik in mobilno aplikacijo, s katerima se vaša aplikacija lahko poveže in uporabnikom omogoča podpisovanje transakcij in izvajanje drugih nalog.

Trdnost

Priljubljen programski jezik za pametne pogodbe

HTML / CSS / JS

Za vaš front-end

Web3.js

Knjižnica API Ethereum, ki vam omogoča povezavo in interakcijo z omrežjem Ethereum

Infura

Storitev API Ethereum, ki razvijalcem omogoča dostop do omrežja Ethereum, ne da bi morali sami zagnati svoje vozlišče

Če ste pripravljeni za začetek, bo naš vodnik v treh korakih podrobneje opisan, da vas bo hitro sprehodil in zagnal v blockchainu s sprehodom.

    Vključevanje razvijalcev: 1. korakRazvijalčev vstop 1. korak

    Vključevanje razvijalcev: 1. korak

    Vključitev razvijalcev: 2. korak2. korak vdelave za razvijalce

    Vključitev razvijalcev: 2. korak

    Vključevanje razvijalcev: 3. korakKorak 3 za vgrajevanje razvijalcev

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