suchen
HeimTechnologie-PeripheriegeräteIT IndustrieEinführung von Trüffel, eine Blockchain Smart Contract Suite

Introducing Truffle, a Blockchain Smart Contract Suite

TRUFFL: Ein leistungsstarkes Tool zur Vereinfachung der Entwicklung von Smart Contracts

TRUFFL ist eine beliebte Blockchain -Smart Contract -Suite, mit der die Entwicklung, das Testen und die Bereitstellung von intelligenten Verträgen zu vereinfachen und zu standardisieren. Es unterstützt mehrere Versionen des Solc-Compilers, ermöglicht eine umweltspezifische Konfiguration, integriert die Web3.JS-Schnittstelle für eine einfache Kommunikation mit intelligenten Verträgen und verfügt über ein integriertes Testframework.

TRUFFL -Installation und -vorbereitung

Die beste Möglichkeit, TRUFFL zu installieren, besteht darin, den Node Package Manager (NPM) zu verwenden. Sobald die Installation abgeschlossen ist, kann der Entwickler ein Demo -Projekt einrichten, um zu verstehen, wie es funktioniert. TRUFFL bietet auch eine strukturierte Projektumgebung mit bestimmten Ordnern für Verträge, Migrationen und Tests sowie eine Konfigurationsdatei zur Verwaltung der Umgebung, der Projektstruktur, der Compiler -Versionen und der Einstellungen.

TRUFFS -Kernfunktionen

Hauptmerkmale der TRUFFL sind: Automatische Vertragstests, skriptierbare Bereitstellungs- und Migrations -Frameworks, interaktive Konsolen für die Direktvertragskommunikation und die Integration mit Ganache für die Vertragsbereitstellung und -prüfung. Es integriert sich auch in Nieselregen, um das Schreiben von DApp Front-End einfacher und vorhersehbarer zu machen.

Herausforderungen der frühen intelligenten Vertragsentwicklung

In den frühen Tagen der intelligenten Vertragsentwicklung (ca. 2016) schrieben Entwickler häufig intelligente Verträge mit ihren bevorzugten Texteditoren und bereiteten sie mit direktem Ruf von Geth und Solc bereit. Um die Benutzerfreundlichkeit zu verbessern, schreiben Entwickler Bash -Skripte, kompilieren zuerst und stellen dann Verträge ein. Dies ist jedoch noch relativ einfach, fehlt die Standardisierung und verfügt über schlechte Benutzererfahrung.

Trüffel und Einschiffe entstanden, um diese Probleme zu lösen, und Trüffel wurde aufgrund seiner höheren Penetration zum Schwerpunkt dieses Artikels.

TRUFFS zielt darauf ab, die folgenden Probleme zu lösen:

  • Zusammenstellung: Unterstützen Sie gleichzeitig mehrere Versionen des Solc -Compilers und geben Sie klar an, welche Version verwendet werden soll.
  • Umgebung: Verträge müssen Entwicklungs-, Integrations- und Produktionsumgebungen haben. Jede Umgebung verfügt über eine eigene Ethereum -Knotenadresse, Konto usw.
  • Test: Verträge müssen prüfbar sein. Die Bedeutung der Testsoftware kann nicht überbewertet werden. Testen Sie also Ihren Vertrag!
  • Konfiguration: Entwicklungs-, Integrations- und Produktionsumgebungen sollten in Konfigurationsdateien eingekapselt werden, damit sie von den Teammitgliedern an Git übermittelt und wiederverwendet werden können.
  • Web3JS -Integration: Web3.js ist ein JavaScript -Framework, mit dem die Kommunikation von Webanwendungen zu intelligenten Verträgen vereinfacht wird. TRUFFL geht noch einen Schritt weiter und ermöglicht die Verwendung der Web3.js -Schnittstelle in der Trüffelkonsole, um Webfunktionen im Entwicklungsmodus (außerhalb des Browsers) aufzurufen.

TRUFF -Projektstruktur

Eine typische Trüffelprojektstruktur lautet wie folgt:

<code>.
├── contracts
│   ├── ConvertLib.sol
│   ├── MetaCoin.sol
│   └── Migrations.sol
├── migrations
│   ├── 1_initial_migration.js
│   └── 2_deploy_contracts.js
├── test
│   ├── TestMetacoin.sol
│   └── metacoin.js
├── truffle-config.js
└── truffle.js</code>

Die Funktionen jedes Ordners sind:

  • Verträge Ordner: Speicher aller intelligenten Verträge. Die Datei der Migrations.sol ist eine spezielle Datei für die Vertragsmigration.
  • Migrationsordner: enthält Skripte, die definieren, wie Verträge in der Blockchain bereitgestellt werden.
  • Testordner: enthält Vertragstestfälle, die mit Solidity oder JavaScript geschrieben werden können.
  • truffle-config.js oder truffel.js Datei: Konfigurationsdatei, definiert die Umgebung, die Projektstruktur, die Compiler-Version und die Einstellungen usw.

Vertragsmigration und Test

Migrationsskripte definieren den Prozess der Vertragsbereitstellung in der Blockchain, sodass das maximale Gas festgelegt wird, die Sendeadresse der Bereitstellung geändert und die Vertragsfunktion aufgerufen wird. Die erste Migration (1_initial_Migration.js) setzt den Migrationsvertrag für die Blockchain ein.

integriertes Testframework mit Trüffel, sodass Entwickler Soliditäts- oder JavaScript-Testfälle schreiben können.

Konfigurationsdatei (truffle.js/truffle-config.js)

Die Konfigurationsdatei definiert Folgendes:

  • Umgebung: Entwicklung, Testnetzwerk, Produktionsumgebung. Die Geth -Knotenadresse, die Netzwerk -ID, der maximale Gas und der Gaspreis für die Bereitstellung können definiert werden.
  • Projektstruktur: Sie können den Dateikonstruktions- und Speicherort ändern, jedoch wird keine Änderung empfohlen.
  • Compiler -Version und Einstellungen: SELC -Version und Optimierungsparameter.
  • Paketverwaltung: kann mit ETHPM (Ethereum Paket Manager) verwendet werden, um ETHPM -Abhängigkeiten festzulegen.
  • Projektbeschreibung: Projektersteller, Projektname, Kontaktadresse usw.
  • Grenze: Zum Beispiel GPLV3.

Code ausführen

  • Kompilierungsvertrag: truffle compile
  • Führen Sie die Migration aus: truffle migrate oder truffle migrate --network live (angegebene Umgebung)
  • Test: truffle test oder truffle test ./path/to/FileTest.sol (Testdatei angeben)

Zusammenfassung

TRUFFL ist ein sehr bequemes Werkzeug, das die Entwicklung in diesem neuen Ökosystem erleichtert. Ziel ist es, Standards und gemeinsame Praktiken aus anderen Entwicklungsbereichen in den Bereich des Blockchain -Experimentierens einzuführen.

FAQ

In diesem Artikel wurden die Kernfunktionen und Verwendungsmethoden der TRUFFL im Detail eingeführt und Antworten auf gemeinsame Fragen enthält. Um Trüffel tiefer zu verstehen, wird die Leser empfohlen, das eigentliche Projekt zu üben.

Das obige ist der detaillierte Inhalt vonEinführung von Trüffel, eine Blockchain Smart Contract Suite. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Top 21 Entwickler -Newsletter, die sich 2025 abonnieren könnenTop 21 Entwickler -Newsletter, die sich 2025 abonnieren könnenApr 24, 2025 am 08:28 AM

Bleiben Sie über die neuesten technischen Trends mit diesen Top -Entwickler -Newsletters informiert! Diese kuratierte Liste bietet für jeden etwas, von KI -Enthusiasten bis hin zu erfahrenen Backend- und Frontend -Entwicklern. Wählen Sie Ihre Favoriten und sparen Sie Zeit, um nach REL zu suchen

Serverlose Bildverarbeitungspipeline mit AWS ECS und LambdaServerlose Bildverarbeitungspipeline mit AWS ECS und LambdaApr 18, 2025 am 08:28 AM

Dieses Tutorial führt Sie durch das Erstellen einer serverlosen Bildverarbeitungspipeline mit AWS -Diensten. Wir werden ein Next.JS -Frontend erstellen, der in einem ECS -Fargate -Cluster eingesetzt wird und mit einem API -Gateway, Lambda -Funktionen, S3 -Eimer und DynamoDB interagiert. Th

CNCF ARM64 Pilot: Impact and InsightsCNCF ARM64 Pilot: Impact and InsightsApr 15, 2025 am 08:27 AM

Dieses Pilotprogramm, eine Zusammenarbeit zwischen CNCF (Cloud Native Computing Foundation), Ampere Computing, Equinix Metal und betätigten, rationalisiert ARM64 CI/CD für CNCF -Github -Projekte. Die Initiative befasst sich mit Sicherheitsbedenken und Leistung

Erstellen eines Netzwerksanfälligkeitsscanners mit GoErstellen eines Netzwerksanfälligkeitsscanners mit GoApr 01, 2025 am 08:27 AM

Dieser GO-basierte Netzwerkanfälligkeitsscanner identifiziert potenzielle Sicherheitsschwächen effizient. Es nutzt die Parallelitätsfunktionen von GO und beinhaltet die Erkennung und Anfälligkeitserkennung. Erforschen wir seine Fähigkeiten und ethisch

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

PHPStorm Mac-Version

PHPStorm Mac-Version

Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SecLists

SecLists

SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.