Pagina laatst bijgewerkt: mrt. 06, 2020

Bronnen voor ontwikkelaars

Aan de slag

Is ontwikkelen met Ethereum nieuw voor je? Dan ben je op de juiste plaats. Deze handleidingen die deelnemers aan de Ethereum community hebben geschreven, geven je inzicht in de basisprincipes van de Ethereum-stack en de kernconcepten die wel eens heel anders kunnen zijn dan de app-ontwikkeling waar je vertrouwd mee bent.

Eerst een basisinleiding nodig? Ga naar ethereum.org/learn.

'Smart Contract'-talen

Elk programma dat op de Ethereum Virtual Machine (EVM) wordt uitgevoerd, noemen we meestal een 'Smart Contract'. De populairste talen voor het schrijven van 'Smart Contracts' op Ethereum zijn Solidity en Vyper, hoewel er ook andere talen worden ontwikkeld.

Solidity De meest populaire taal op Ethereum, geïnspireerd door C++, Python en Javascript

Vyper Een op Security gerichte taal voor Ethereum, gebaseerd op Python.

Op zoek naar andere opties?

Tools voor ontwikkelaars

Ethereum heeft een groot en groeiend aantal tools om ontwikkelaars te helpen hun toepassingen te bouwen, te testen en te implementeren. Hieronder vind je de populairste tools om aan de slag te gaan. Wil je meer weten? Bekijk dan deze uitgebreide lijst.

Truffle Een ontwikkelomgeving, testframework, build-pipeline en andere tools.

Embark Een ontwikkelomgeving, testframework en andere tools geïntegreerd met Ethereum, IPFS en Whisper.

Waffle Een framework voor het ontwikkelen en testen van geavanceerde Smart Contracts (op basis van ethers.js).

Etherlime Een op Ethers.js gebaseerd framework voor het ontwikkelen (Solidity en Vyper), installeren, debuggen, testen en meer van Dapps.

Buidler Een taskrunner voor ontwikkelaars van Ethereum Smart Contracts

ZeppelinOS Een ontwikkelframework voor het bouwen van upgradebare Smart Contracts en een veilig beheerssysteem voor Smart Contracts.

Op zoek naar andere opties?

Geïntegreerde ontwikkelomgevingen (IDE's)

Visual Studio Code Professionele IDE voor meerdere platforms met officiële Ethereum-ondersteuning.

Heriix Web-IDE met ingebouwde statistische analyse en een virtuele machine voor testblockchains.

Superblocks Web-IDE met ingebouwde virtuele machine voor browserblockchains, MetaMask-integratie, transactielogger en andere functies.

EthFiddle Web-IDE waarmee je Smart Contracts kunt schrijven, compileren en debuggen.

Op zoek naar andere opties?

Frontend Javascript-API's

Web3.js Ethereum Javascript-API

Ethers.js Volledige Ethereum-walletimplementatie en hulpprogramma's in JavaScript en TypeScript

light.js Een high-level reactieve JS-bibliotheek geoptimaliseerd voor light-clients.

Web3-wrapper Alternatief typescript voor Web3.js

Op zoek naar andere opties?

Backend API's

Infura De Ethereum-API als service

Beveiligingstools

Slither Statisch analyseframework voor Solidity, geschreven in Python 3

MythX Beveligingsanalyse-API voor Ethereum Smart Contracts

Manticore Een opdrachtregelinterface met een symbolische uitvoeringstool voor Smart Contracts en binaire bestanden.

Securify Beveiligingsscanner voor Ethereum Smart Contracts

Meer info over formele verificatie

Op zoek naar andere opties?

Tools voor testen

Solidity-Coverage Alternatieve tool voor Solidity-codedekking.

hevm Implementatie van het EVM dat specifiek is gemaakt voor unittesten en debuggen van Smart Contracts.

Whiteblock Genesis Een end-to-end sandbox voor ontwikkelaars en testplatform voor blockchain.

Op zoek naar andere opties?

Block explorers

Block explorers zijn diensten waarmee je in de Ethereum-blockchain (en bijbehorende testnets) kunt zoeken naar informatie over specifieke transacties, blocks, contracts en andere on-chain activiteiten.

Testnets en Faucets

De Ethereum-community onderhoudt meerdere testnets. Deze worden gebruikt door ontwikkelaars om hun toepassingen onder verschillende omstandigheden te testen voordat ze worden ingezet op het Ethereum-mainnet.

Ropsten Proof of Work-blockchain, test-ether kan worden gemined

Rinkeby Proof of Authority-blockchain, onderhouden door het Geth-ontwikkelteam

Goerli Cross-client Proof of Authority-blockchain, gebouwd en onderhouden door de Goerli-community

Clients en je eigen node uitvoeren

Het Ethereum-netwerk bestaat uit vele nodes die compatibele clientsoftware gebruiken. Op het merendeel van deze nodes wordt Geth of Parity uitgevoerd. Elk van deze nodes kan op verschillende manieren worden geconfigureerd volgens je eigen behoeften.

Geth Ethereum-clients geschreven in Go

Parity Ethereum-client geschreven in Rust

Ethnode Een Ethereum-node (Geth of Parity) uitvoeren voor lokale ontwikkeling.

Bronnen voor Ethereum-nodes

Op zoek naar andere opties?

Best-practices, patronen en anti-patronen

DappSys Veilige, eenvoudige, flexibele bouwstenen voor Smart Contracts.

OpenZeppelin Bibliotheek voor het ontwikkelen van veilige Smart Contracts.

aragonOS Patronen voor upgradebaarheid en machtigingsbeheer.

Register voor Smart Contract-weakness

Best-practices handleiding voor Smart Contracts-beveiliging

Op zoek naar andere opties?

Ondersteuning en training voor ontwikkelaars

Ethereum Stackexchange

Solidity Gitter Chatroom

Alle Ethereum Gitter Chatrooms

Cryptozombies Leer games te programmeren op Ethereum.

Chainshot Webtutorials voor Dapp-code.

Blockgeeks Online cursussen over blockchaintechnologie

DappUniversity Leer gedecentraliseerde toepassingen te bouwen op de Ethereum-blockchain

Ethernaut Een Solidity-wargame waar elk niveau een contract is dat moet worden gehackt

UI/UX

Standaarden

De Ethereum-community heeft een heleboel standaarden aangenomen die handig zijn voor ontwikkelaars. Meestal worden deze voorgesteld als Ethereum Improvement Proposals (EIP's), die door leden van de community worden besproken in een standaardproces.

Bepaalde EIP's hebben betrekking op de toepassingsstandaarden (bijv. een standaard Smart Contract-indeling), die worden voorgesteld als Ethereum Requests for Comment (ERC). Veel ERC's zijn kritieke standaarden die breed worden toegepast in het Ethereum-ecosysteem.