Wie erstelle ich eine Dapp von Grund auf auf Ethereum?

Nehmen wir an, wir haben jemanden, der sich mit Blockchain auskennt, aber keinen Hintergrund in Blockchain-basierten Anwendungen hat. Diese Person möchte eine Ethereum-basierte Dapp (dezentralisierte Anwendung) als Proof of Concept codieren.

Wie man anfängt? Was wären die ersten Schritte? (Ratschläge, Best Practices, interessantes Material etc.)

Hier ist der interessante Beitrag: forum.ethereum.org/discussion/1402/…
Hier ist die aktuelle Version des vorherigen Links von @romanoza forum.ethereum.org/discussion/1634/…
Nur ein weiterer Artikel hier gefunden

Antworten (4)

Diese Frage ist zu weit gefasst, um einfach beantwortet zu werden, und es gibt mehrere gute vorhandene Tutorials , die online verfügbar sind. Aber hier sind die ersten Schritte, die Sie unternehmen könnten:

  • Informieren Sie sich über die grundlegenden Konzepte . Das Ethereum-Whitepaper ist kein schlechter Ausgangspunkt, und einige der Tutorials, die ich oben verlinkt habe, mischen konzeptionelle Erklärungen mit Schritt-für-Schritt-Tutorial-Anleitungen.

  • Wählen Sie eine Sprache aus . Es gibt mehrere Sprachoptionen für die Arbeit mit Ethereum, und es ist ratsam, entweder 1) diejenige auszuwählen, die einer Sprache, die Sie kennen, am ähnlichsten ist, oder 2) diejenige auszuwählen, die die umfangreichste Dokumentation und Unterstützung zu haben scheint (ich würde wahrscheinlich gehen mit Solidität basierend auf dieser Metrik).

  • Wählen Sie ein Framework aus und testen Sie rpc . Ich bin hauptsächlich mit den Solidity-Frameworks Embark und Truffle vertraut und verwende Ethersim als Test-RPC.

  • Sehen Sie sich Beispielprojekte an . Schauen Sie sich auf Github nach Projekten um, die Ethereum verwenden (ich habe mir die Open-Source-Projekte von ConsenSys angesehen), um zu sehen, welche Best Practices sich zu verschmelzen beginnen.

  • Treten Sie einer Community bei und stellen Sie Fragen . Die größten Fortschritte, die ich bei der Arbeit mit Ethereum gemacht habe, sind darauf zurückzuführen, dass ich Leute hatte, denen ich Fragen stellen konnte. Es gibt ein Forum, reddit, IRL-Treffen in einigen Städten und natürlich diese Seite.

Eines der wichtigsten Dinge, auf die Sie sich konzentrieren sollten, ist die Bestimmung, welcher Teil der Anwendung On-Chain sein muss und welcher Teil im Browser passieren könnte. Dies könnte die Anwendung in einige mögliche Gruppen aufteilen:

  1. Compute (In Solidity/Serpent geschriebene Logik, kompiliert zu EVM-Bytecode)
  2. Speicher (Statische Assets wie HTML/JS/CSS)
  3. Messaging (Ephemere Off-Chain-Kommunikation)

Ethereum stellt seine Funktionalität unter anderem über eine JavaScript-Bibliothek bereit, die als web3.js bekannt ist . Mit der JavaScript-API können Entwickler Funktionen einer herkömmlichen HTML-Anwendung durch von Ethereum unterstützte Funktionen hinzufügen oder ersetzen.

Wenn eine DApp vollständig für den dezentralen Betrieb konzipiert ist, benötigt sie keinen herkömmlichen Server, sondern läuft auf der Struktur mehrerer dezentraler Protokolle.

Ein Ausgangspunkt wäre Dapps für Anfänger , Sie könnten den Fortschritt über Einführung in die Entwicklung auf Ethereum und dann Einrichten Ihrer Entwicklungsumgebung verfolgen oder direkt zu springen;-

Dein erster Dapp

Das Tutorial konzentriert sich auf Ihre ersten Schritte mit Alethzero (dem Entwicklungsclient) und die Erstellung eines einfachen Münzvertrags – das Backend Ihrer DApp.

Der Bildungsbereich des Forums

Gleichzeitig wäre es nützlich, den Bildungsbereich des Forums zu lesen / zu verfolgen / daran teilzunehmen, da es nützliche Fragen und Antworten gibt, z. B. Datenspeicherung verstehen

„In Bezug auf die Speichergebühren zahlen Sie sowohl für die Größe des Tx in Bytes als auch für die Größe der neuen Daten, die in den Vertragsspeicher gestellt werden. Wenn Sie Daten aus dem Vertragsspeicher entfernen (d. h. nachdem Ihr tx ausgeführt wurde, ist der gesamte Vertragsspeicher kleiner) , erhalten Sie eine Rückerstattung bis zur Hälfte der Benzinkosten des Senders (Sie können kein Ether zurückgeschickt bekommen, aber Ihre Sendergebühr kann subventioniert werden).“

Das Gelbe Papier

Im Gelbbuch Anhang G ist die Gebührenordnung für die mit verschiedenen Berechnungen verbundenen Gebühren in Gaseinheiten angegeben.

Zustand der DAPPS

Wenn Sie schließlich nach interessantem Material suchen, ist State of the Dapps (eine dezentrale Anwendung (oder „Dapp“) eine Software, die aus einer Benutzeroberfläche (UI) und einem dezentralen Backend besteht; typischerweise werden Blockchain und Smart Contracts verwendet Die meisten der aufgeführten Projekte wurden mit Ethereum erstellt.

Ein weiteres gutes Tutorial, das Sie von Anfang bis Ende durch den Prozess führt, ist das NFT Minter Tutorial von Alchemy .

Es konzentriert sich besonders darauf, Sie durch die Front-End-Entwicklung zu führen, einschließlich der Verbindung zu MetaMask und der Interaktion mit On-Chain-Verträgen.

Wenn Sie dort beginnen, können Sie sich damit vertraut machen, wie Dapps strukturiert sind, ohne in die Entwicklung intelligenter Verträge eintauchen zu müssen (obwohl sie ein weiteres Tutorial speziell zur Entwicklung intelligenter Verträge haben).