Sivu viimeksi päivitetty: September 3, 2020

Kehittäjäresurssit

Näin pääset alkuun

Jos olet uusi Ethereum-kehittäjä, olet oikeassa paikassa! Näillä Ethereumin yhteisön kirjoittamilla ohjeilla pääset tutustumaan Ethereumin pinoon ja pääkäsitteisiin, jotka saattavat olla erilaisia muusta tuntemastasi sovelluskehityksestä.

Haluatko aloittaa koodaamisen heti? Aloita rakentaminen täältä.

Tarvitsetko perusteellisempaa aloitusta? Katso oppimisresurssit.

Hyödyllisiä resursseja englanniksi

Kielet älysopimuksille

Mitä tahansa ohjelmaa, joka suoritetaan Ethereum Virtual Machine (EVM) -ympäristössä, kutsutaan yleisesti "älysopimukseksi". Suosituimmat ohjelmointikielet Ethereumin älysopimuksille ovat Solidity ja Vyper. Lisäksi kehityksen alla on muita kieliä.

Solidity - Ethereumin suosituin ohjelmointikieli C++:n, Pythonin ja JavaScriptin inspiroimana.

Vyper - Ethereumin tietoturvaan keskittyvä ohjelmointikieli, joka perustuu Pythoniin.

Etsitkö muita vaihtoehtoja?

Kielikohtaiset resurssit

Rakennamme kielikohtaisia aloitussivuja kehittäjille opettamaan lisää Ethereumista useilla suosituilla ohjelmointikielillä.

Kehitystyökalut

Ethereumilla on suuri ja kasvava määrä työkaluja, jotka auttavat kehittäjiä rakentamaan, testaamaan ja julkaisemaan sovelluksia. Alla on luettelo suosituimmista työkaluista, joilla pääset alkuun. Jos haluat sukeltaa aiheessa syvemmälle, katso tämä kattava lista.

Ohjelmistokehykset

Truffle - Kehitysympäristö, testauskehys, putkiliikenteen rakentaminen ja muita työkaluja.

Embark - Kehitysympäristö, testauskehys ja muita työkaluja integroituna Ethereumiin, IPFS:ään ja Whisperiin.

Waffle - Ohjelmistokehys edistyneelle älysopimuskehitykselle ja -testaukselle (pohjautuu ethers.js:ään).

Etherlime - Ethers.js:ään pohjautuva ohjelmistokehys dapp-kehitykselle (Solidity & Vyper), julkaisemiselle, debuggaukselle, testaukselle ja muihin tarkoituksiin.

Muut työkalut

Ethereum Grid - Työpöytäsovellus Ethereum-asiakasohjelmien ja -työkalujen lataamiseen, konfigurointiin ja ajamiseen.

Buidler - Tehtävänsuorittaja Ethereum-älysopimusten kehittäjille.

OpenZeppelin SDK - The Ultimate Smart Contract Toolkit: Kokoelma työkaluja, jotka helpottavat älysopimusten kehittämistä, kääntämistä, päivittämistä, julkaisemista ja käyttämistä.

The Graph - Protokolla Ethereumin ja IPFS-datan indeksöintiin ja tietokantakyselyihin käyttäen GraphQL:ää.

Tenderly - Alusta, jossa voit helposti monitoroida älysopimuksiasi virheen seurannalla, hälytyksillä, tehokkuusmittareilla ja yksityiskohtaisella sopimusanalyysillä.

Python-työkalut - Erinlaisia kirjastoja vuorovaikutukseen Ethereumilla Pythonin avulla.

Brownie - Python-pohjainen kehitysympäristö ja testauskehys.

web3j - Java/Android/Kotlin/Scala-integraatiokirjasto Ethereumille.

One Click Dapp - Luo frontend suoraan ABI:stä nopeaan kehitykseen ja testaukseen.

Etsitkö muita vaihtoehtoja?

Ohjelmointiympäristöt (IDE)

Ethereum Studio - Web-pohjainen IDE, ideaalinen uusille kehittäjille, jotka haluavat kokeilla älysopimuksia. Ethereum Studio sisältää useita malleja, MetaMask-integraation, liiketapahtumien kirjauksen ja sisäänrakennetun selaimen Ethereum Virtual Machine (EVM) -ympäristön, jotka auttavat pääsemään alkuun mahdollisimman nopeasti Ethereumilla rakentamisessa.

Visual Studio Code - Ammattitason alustariippumaton IDE, Ethereumin virallisella tuella.

Remix - Web-pohjainen IDE sisäänrakennetulla staattisella analyysillä ja testilohkoketjussa toimivalla virtuaalikoneella.

EthFiddle - Web-pohjainen IDE, joka mahdollistaa älysopimuksen kirjoittamisen, kääntämisen ja debuggauksen.

Etsitkö muita vaihtoehtoja?

Frontend JavaScript API

Web3.js - Ethereum JavaScript API.

Ethers.js - Kokonainen Ethereum-lompakkototeutus ja työkalut JavaScriptillä ja TypeScriptillä.

light.js - Korkean tason reaktiivinen JS-kirjasto, joka on optimoitu kevyille asiakasohjelmille.

Web3-wrapper - Typescript vaihtoehto Web3.js:lle.

Etsitkö muita vaihtoehtoja?

Backend API

Infura - Ethereum API palveluna

Cloudflaren Ethereum-yhdyskäytävä.

Nodesmith - JSON-RPC API-pääsy Ethereumin pää- ja testiverkkoihin.

Chainstack - Jaetut ja dedikoidut Ethereum-solmut palveluina.

Tallennustila

IPFS - InterPlanetary File System on hajautettu varasto- ja tiedostoviittauksiin käytettävä järjestelmä Ethereumissa.

Swarm - Hajautettu varastojärjestelmä ja sisällönjakelupalvelu Ethereumin web3 stackille.

OrbitDB - Hajautettu vertaisverkon tietokanta IPFS:n päällä.

Turvallisuustyökalut

Älysopimusten turvallisuus

Slither - Solidityn staattinen analyysikehys, kirjoitettu Python 3:lla.

MythX - Tietoturva-analyysi API Ethereumin älysopimuksille.

Mythril - Tietoturva-analyysityökalu EVM-tavukoodille.

SmartContract.Codes - Hakukone vahvistetuille solidity-lähdekoodeille.

Manticore - Komentoliittymä, joka käyttää symbolista suoritustyökalua älysopimuksissa ja binäärijärjestelmissä.

Securify - Turvallisuustutkain Ethereumin älysopimuksille.

ERC20 Verifier - Vahvistustyökalu, jolla varmistetaan, että sopimus kääntyy ERC20-standardin mukaisesti.

Muodollinen vahvistus

Tietoa muodollisesta vahvistuksesta englanniksi

Etsitkö muita vaihtoehtoja?

Testaustyökalut

Solidity-Coverage - Vaihtoehtoinen Solidity-koodin kattavuustyökalu.

hevm - Toteutus EVM:stä, tarkoitettu erityisesti älysopimusten yksikkötestaukseen ja debuggaukseen.

Whiteblock Genesis - End-to-end sandbox-kehitysympäristö ja testausalusta lohkoketjuille.

Etsitkö muita vaihtoehtoja?

Lohkoselaimet

Lohkoselaimet ovat palveluita, joilla voi selata Ethereumin lohkoketjua (ja sen testiverkkoja) etsimällä informaatiota tietyistä liiketapahtumista, lohkoista, sopimuksista ja muista ketjunsisäisistä tapahtumista.

Testiverkot ja faucetit

Ethereumin yhteisö ylläpitää useita testiverkkoja. Nämä on tarkoitettu kehittäjille sovellusten testaamiseen eri olosuhteissa ennen Ethereumin pääverkkoon lähettämistä.

Ropsten - Proof of Work -lohkoketju, louhittavissa testi-etheriä.

Rinkeby - Proof of Authority -lohkoketju, Gethin kehitystiimin ylläpitämä.

Goerli - Asiakasohjelmariippumaton Proof of Authority -lohkoverkko, Goerli-yhteisön rakentama ja ylläpitämä

Asiakasohjelmat ja oman solmun ajaminen

Ethereumin tietoverkko on rakennettu useista solmuista, joissa suoritetaan niille sopivia asiakasohjelmistoja. Useimmissa solmuissa ajetaan Gethiä tai Parityä, joista kumpikin voidaan konfiguroida eri tavoilla tarpeen mukaan.

Asiakasohjelmat

Geth - Ethereum-asiakasohjelma, kirjoitettu Golla.

Parity - Ethereum-asiakasohjelma, kirjoitettu Rustilla.

Pantheon - Ethereum-asiakasohjelma, kirjoitettu Javalla.

Nethermind - Ethereum-asiakasohjelma, kirjoitettu C# .NET Corella.

Oman solmun ajaminen

Ethnode - Ethereum-solmun ajaminen (Geth tai Parity) paikallista kehitystä varten.

Ethereum-solmujen resurssit

Etsitkö muita vaihtoehtoja?

Parhaat käytännöt, suunnittelumallit ja antisuunnittelumallit

Älysopimukset

DappSys - Turvallista, yksinkertaista, joustavaa lohkojen rakentamista älysopimuksille.

OpenZeppelin Contracts - Kirjasto turvallisille älysopimuksille.

aragonOS - Suunnittelumallit päivitettävyydelle ja käyttöoikeuksien hallinnalle.

Smart Contract Weakness Registry

Turvallisuus

Parhaat käytännöt älysopimusten turvallisuudelle

Smart Contract Security Verification Standard (SCSVS)

Etsitkö muita vaihtoehtoja?

Tuki ja koulutukset kehittäjille

Yleinen oppiminen

Ethereum Stackexchange

ConsenSys Academy - End-to-end-kurssi Ethereum-kehittäjille, jonka voi suorittaa omalla tahdilla ja on avoin ympäri vuoden.

Solidity Gitter chat-huone

Kaikki Ethereum Gitter chat-huoneet

Chainshot - Web-pohjaiset dapp-koodausoppaat.

Blockgeeks - Verkkokursseja lohkoketjuteknologiasta.

DappUniversity - Opi rakentamaan hajautettuja sovelluksia Ethereumin lohkoketjuun.

B9lab Academy - Vanhin ammattitason Ethereum dapp-kehittäjäkurssi sekä syvempää oppimista auditoijille ja laadunvarmistajille. Sis. mentoroinnin ja koodin katselmoinnin.

Pelipohjaista oppimista

Cryptozombies - Opi koodaamaan pelejä Ethereumilla.

Ethernaut - Solidity-pohjainen sotapeli, jossa jokainen taso on hakkeroitava sopimus.

Capture the Ether - Peli Ethereumin älysopimusten turvallisuudesta.

UI/UX-suunnittelu

Rimble UI - Muokattavia komponentteja ja suunnittelustandardeja hajautetuille sovelluksille.

Standardit

Ethereum-yhteisö on ottanut käyttöön useita standardeja, jotka ovat hyödyllisiä kehittäjille. Tyypillisesti nämä esitetään nimellä Ethereum Improvement Proposals (EIPs), joista käydään keskuteluja yhteisön jäsenien kesken standardiprosessin avulla.

Tietyt EIP:t vastaavat sovellustason standardeja (esim. standardi älysopimusformaatti), jotka esitetään nimellä Ethereum Requests for Comment (ERC). Monet ERC:t ovat kriittisiä standardeja, joita käytetään yleisesti Ethereum-ekosysteemissä.