Seite zuletzt aktualisiert: März 06, 2020
↳ Informationen für Entwickler
↳ Erste Schritte
Wenn du in die App-Entwicklung mit Ethereum einsteigen möchtest, bist du hier genau richtig. Diese von der Ethereum-Community verfassten Anleitungen (meist in englischer Sprache) werden dich in die Grundlagen der Ethereum-Architektur und in die entsprechenden Kernkonzepte einführen. Du erfährst, wie sie sich von herkömmlicher App-Entwicklung unterscheiden.
Brauchst du zuerst einen grundsätzlichen Einstieg? Schau dir ethereum.org/de/learn an.
- 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 oft aktualisiert – ConsenSys
- Deconstructing a Solidity Contract Aug 13, 2018 - Alejandro Santander & Leo Arias
- Full Stack Dapp Tutorial Series oft aktualisiert – Joshua Cassidy
↳ Smart-Contract-Sprachen
Jedes Programm, das auf der Ethereum Virtual Machine (EVM) läuft, wird allgemein als „Smart Contract“ bezeichnet. Die beliebtesten Sprachen für das Schreiben von Smart Contracts auf Ethereum sind Solidity und Vyper, jedoch gibt es noch weitere in Entwicklung.
↳ Solidity: die beliebteste Sprache für Ethereum, inspiriert von C++, Python und Javascript
↳ Vyper: eine sicherheitsorientierte Sprache für Ethereum, basierend auf Python
↳ Suchst du nach weiteren Optionen?
↳ Entwicklertools
Ethereum verfügt über eine große und wachsende Anzahl von Tools, um Programmierern beim Entwickeln, Testen und Bereitstellen von Anwendungen zu helfen. Nachfolgend sind die beliebtesten Tools aufgeführt, mit denen du direkt loslegen kannst. Wenn du tiefer eintauchen möchtest, schau dir diese umfassende Liste an.
↳ Truffle: Entwicklungsumgebung, Test-Framework, Build-Pipeline und weitere Tools
↳ Embark: Entwicklungsumgebung, Test-Framework und weitere Tools, die in Ethereum, IPFS und Whisper integriert sind
↳ Waffle: ein Framework für fortgeschrittene Smart-Contract-Entwicklungen und Tests (basierend auf ethers.js)
↳ Etherlime: Ethers.js-basiertes Framework für dapp-Entwicklung (Solidity und Vyper), Bereitstellung, Debugging, Tests und mehr
↳ Buidler: ein Task-Runner für Smart-Contract-Entwickler für Ethereum
↳ ZeppelinOS: ein Entwicklungs-Framework für den Aufbau von aktualisierbaren Smart Contracts und die sichere Verwaltung von Smart-Contract-Anwendungen
↳ Suchst du nach weiteren Optionen?
↳ Integrierte Entwicklungsumgebungen (IDEs)
↳ Visual Studio Code: professionelle plattformübergreifende IDE mit offizieller Ethereum-Unterstützung
↳ Remix: webbasierte IDE mit integrierter Code-Analyse und einer Test-Blockchain-VM
↳ Superblocks: webbasierte IDE mit integrierter Browser-Blockchain-VM, MetaMask-Integration, Transaktions-Logger und weiteren Funktionen
↳ EthFiddle: webbasierte IDE, mit der du deinen Smart Contract schreiben, kompilieren und debuggen kannst
↳ Suchst du nach weiteren Optionen?
↳ Frontend-Javascript-APIs
↳ Web3.js: Ethereum-Javascript-API
↳ Ethers.js: vollständige Ethereum-Wallet-Implementierung und Utilities in JavaScript und TypeScript
↳ light.js: eine reaktive High-Level-JS-Bibliothek, die für Light Clients optimiert wurde
↳ Web3-Wrapper: Typescript-Alternative zu Web3.js
↳ Suchst du nach weiteren Optionen?
↳ Backend-APIs
↳ Infura: die Ethereum-API als Service
↳ Sicherheitstools
↳ Slither: statisches Analyse-Framework für Solidity, geschrieben in Python 3
↳ MythX: Sicherheitsanalyse-API für Ethereum-Smart-Contracts
↳ Manticore: eine Befehlszeilenschnittstelle, die ein symbolisches Ausführungswerkzeug für Smart Contracts und Binärdaten verwendet
↳ Securify: Sicherheits-Scanner für Ethereum-Smart-Contracts
↳ Mehr zur formalen Verifikation
- 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
↳ Suchst du nach weiteren Optionen?
↳ Testtools
↳ Solidity-Coverage: alternatives Tool zur Erfassung der Testabdeckung in Solidity Code
↳ hevm: Implementierung der EVM speziell zur Einheitenprüfung und zum Debugging von Smart Contracts
↳ Whiteblock Genesis: eine End-to-End-Entwicklungs-Sandbox und -Testplattform für Blockchains
↳ Suchst du nach weiteren Optionen?
↳ Block-Explorer
Block-Explorer sind Dienste, mit denen du die Ethereum-Blockchain (und ihre Testnetzwerke) durchsuchen kannst, indem sie Informationen über spezifische Transaktionen, Blöcke, Smart Contracts und andere On-Chain-Aktivitäten liefern.
↳ Testnetzwerke und Faucets
Die Ethereum-Community betreibt mehrere Testnetzwerke. Diese werden von Entwicklern verwendet, um ihre Anwendungen unter verschiedenen Bedingungen zu testen, bevor sie im Ethereum-Hauptnetzwerk (Mainnet) eingesetzt werden.
↳ Ropsten: Proof-of-Work-Blockchain, Test-Ether kann gemined werden
↳ Rinkeby: Proof-of-Authority-Blockchain, gepflegt vom Geth-Entwicklungsteam
↳ Görli: clientübergreifende Proof-of-Authority-Blockchain, entwickelt und betrieben von der Görli-Community
↳ Clients und Starten deiner eigenen Node
Das Ethereum-Netzwerk besteht aus vielen Nodes (Knotenpunkten), die kompatible Client-Software ausführen. Die Mehrheit dieser Nodes nutzen Geth oder Parity. Beide können je nach Bedarf auf unterschiedliche Weise konfiguriert werden.
↳ Geth: in Go geschriebener Ethereum-Client
↳ Parity: in Rust geschriebener Ethereum-Client
↳ Ethnode: startet eine Ethereum-Node (Geth oder Parity) für die lokale Entwicklung
↳ Informationen zu Ethereum Nodes
- [Node Configuration Cheat Sheet](https://dev. to/5chdn/ethereum-node-configuration-modes-cheat-sheet-25l8) Jan 5, 2019 - Afri Schoedon
↳ Suchst du nach weiteren Optionen?
↳ Best Practices, Pattern und Anti-Pattern
↳ DappSys: sichere, einfache und flexible Bausteine für Smart Contracts
↳ OpenZeppelin: Bibliothek für sichere Smart-Contract-Entwicklung
↳ aragonOS: Muster zur Upgradeverwaltung und Berechtigungskontrolle
↳ Smart-Contract-Schwachstellenregister
↳ Best-Practices für die Smart-Contract-Sicherheit
- consensys.github.io/smart-contract-best-practices/
- GitHub
- Sammlung von Sicherheitsempfehlungen und Best Practices
↳ Suchst du nach weiteren Optionen?
↳ Support und Training für Entwickler
↳ Ethereum Stack Exchange
↳ Solidity-Gitter-Chatraum
↳ Alle Ethereum-Gitter-Chaträume
↳ Cryptozombies: Spieleentwicklung auf Ethereum lernen
↳ Chainshot: webbasierte Tutorials zur dapp-Programmierung
↳ Blockgeeks: Online-Kurse über Blockchain-Technologie
↳ DappUniversity: dezentralisierte Anwendungsentwicklung auf der Ethereum-Blockchain lernen
↳ Ethernaut: Solidity-basiertes Kriegsspiel, in dem jeder Level ein Vertrag ist, der gehackt werden muss
↳ 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
↳ Standards
Die Ethereum-Community hat viele Standards übernommen, die für Entwickler hilfreich sind. Normalerweise werden diese als Ethereum Improvement Proposals (EIPs) eingeführt, die von Community-Mitgliedern über einen Standardprozess diskutiert werden.
- Liste der EIPs
- EIP-github-Repo
- EIP-Diskussionsforum
- Ethereum Governance Overview March 31, 2019 - Boris Mann
- Playlist aller Ethereum Core Dev Meetings (YouTube Playlist)
Bestimmte EIPs beziehen sich auf Anwendungs-Level-Standards (z. B. ein Standard-Smart-Contract-Format), die als Ethereum Requests for Comment (ERC) eingeführt werden. Viele ERCs sind essenzielle Standards, die im Ethereum-Ökosystem weitverbreitet sind.