Pagina laatst bijgewerkt: November 13, 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.
- Getting up to speed on Ethereum Aug 7, 2017 - Matt Condon
- Ethereum In Depth, Part 1 May 11, 2018 - Facu Spagnuolo
- Ethereum In Depth, Part 2 July 24, 2018 - Facu Spagnuolo
- Ethereum Development Walkthrough, Parts 1-5 Jan 14, 2018 - dev_zl
- Ethereum 101, Parts 1-7 Feb 13, 2019 - Wil Barnes
- Full Stack Hello World Voting Ethereum Dapp Tutorial Jan 18, 2017 - Mahesh Murthy
- Mastering Ethereum - A comprehensive textbook available for free online Dec 1, 2018 - Andreas Antonopoulos & Gavin Wood
- Ethereum Developer Portal - Everything you need to get started building on Ethereum Updated often - ConsenSys
- Deconstructing a Solidity Contract Aug 13, 2018 - Alejandro Santander & Leo Arias
- Full Stack Dapp Tutorial Series Updated Often - Joshua Cassidy
'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.
Hardhat 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
- How formal verification of smart-contacts works July 20, 2018 - Brian Marick
- How Formal Verification Can Ensure Flawless Smart Contracts Jan 29, 2018 - Bernard Mueller
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
- Node Configuration Cheat Sheet Jan 5, 2019 - Afri Schoeden
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
- consensys.github.io/smart-contract-best-practices/
- GitHub
- Geaggregeerde collectie van beveiligingsaanbevelingen en best-practices
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
- Challenge of UX in Ethereum June 25, 2018 - Anna Rose
- Designing for blockchain: what’s different and what’s at stake March 22, 2018 - Sarah Baker Mills
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.
- Lijst van EIP's
- EIP github repo
- EIP-discussieforum
- Ethereum Governance Overview March 31, 2019 - Boris Mann
- Afspeellijst van alle Ethereum Core Dev-meetings (YouTube-afspeellijst)
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.