Πώς να δημιουργήσετε μια εφαρμογή Blockchain

Ψάχνετε έναν οδηγό όπου μπορείτε να μάθετε πώς να δημιουργείτε μια εφαρμογή blockchain; Ακολουθεί ένας οδηγός που μπορεί να σας βοηθήσει να δημιουργήσετε μια εφαρμογή blockchain από το μηδέν.

Σε αυτό το άρθρο, θα δημιουργήσουμε την εφαρμογή blockchain. Πρόσφατα, καλύψαμε πώς να δημιουργήσουμε ένα blockchain. Ήταν ένας πλήρης οδηγός για τη δημιουργία ενός blockchain στη γλώσσα προγραμματισμού Python. Το κύριο επίκεντρο του σεμιναρίου είναι να μάθουμε για την τεχνολογία blockchain και τις εσωτερικές λειτουργίες της.

Αυτό το σεμινάριο, ωστόσο, αφορά τον τρόπο δημιουργίας μιας εφαρμογής χρησιμοποιώντας το blockchain. Η αποκεντρωμένη εφαρμογή (dApp) θα μπορεί να εκμεταλλευτεί τις ιδιότητες του blockchain.

Θα δημιουργήσουμε μια απλή εφαρμογή blockchain χρησιμοποιώντας το Ethereum. Το Ethereum είναι μια τεχνολογία blockchain δεύτερης γενιάς που παρέχει προηγμένες δυνατότητες, όπως έξυπνα συμβόλαια, Proof-of-Stake και, το πιο σημαντικό, τη δυνατότητα δημιουργίας αποκεντρωμένων εφαρμογών (dApps).

Ας αρχίσουμε λοιπόν με το μάθημα “Πώς να δημιουργήσουμε μια εφαρμογή blockchain”. Αυτό το σεμινάριο απευθύνεται επίσης σε όσους θέλουν να δημιουργήσουν μια απλή εφαρμογή blockchain. Για να δημιουργήσουμε μια απλή εφαρμογή blockchain, θα χρησιμοποιήσουμε το δίκτυο Ethereum.

Αλλά, πριν ξεκινήσουμε, ας πάρουμε τα βασικά μας σωστά.

Εγγραφείτε τώρα: Μάθημα Βασικών Αρχών για Επιχειρήσεις Blockchains

Contents

Τι είναι το dApp?

Το πρώτο βήμα που πρόκειται να κάνουμε στον τρόπο δημιουργίας ενός οδηγού εφαρμογής blockchain είναι πρώτα να μάθετε την έννοια της αποκεντρωμένης εφαρμογής (dApp).

Το dApp σημαίνει αποκεντρωμένη εφαρμογή. Είναι ένας διαφορετικός τύπος εφαρμογής που προσφέρει βασικά χαρακτηριστικά, συμπεριλαμβανομένης της δυνατότητας αυτόνομης λειτουργίας. Η εφαρμογή αποθηκεύει επίσης δεδομένα κρυπτογραφικά, έτσι ώστε κανένας μη εξουσιοδοτημένος φορέας να μπορεί να έχει πρόσβαση σε αυτήν χωρίς κατάλληλη εξουσιοδότηση.

Όλα αυτά τα χαρακτηριστικά καθιστούν τις αποκεντρωμένες εφαρμογές πολύ χρήσιμες στο τρέχον εταιρικό περιβάλλον. Οι εφαρμογές είναι επίσης σε θέση να χρησιμοποιούν διακριτικά που μπορούν να χρησιμοποιηθούν για να επωφεληθούν από τις δυνατότητες που προσφέρει η εφαρμογή. Επιπλέον, η εφαρμογή μπορεί επίσης να διανείμει διακριτικά για να δώσει κίνητρα στους κόμβους που συμμετέχουν στη λειτουργία του dApp.

Επιλογή πλατφόρμας – Γιατί επιλέγουμε την πλατφόρμα Ethereum

Αυτήν τη στιγμή, υπάρχουν πολλές πλατφόρμες που μπορείτε να επιλέξετε για να δημιουργήσετε το dApp σας. Περιλαμβάνουν δημοφιλείς πλατφόρμες blockchain όπως Ethereum, Hyperledger Fabric και Cardano. Από όλα αυτά, το Ethereum φαίνεται να είναι η καλύτερη επιλογή λόγω της ενεργού κοινότητας, των εργαλείων και των εκπαιδευτικών που διατίθενται στο διαδίκτυο.

Ένας άλλος λόγος για τον οποίο επιλέγουμε το Ethereum είναι ότι χρησιμοποιεί το Solidity. Η σταθερότητα δημιουργείται ρητά για την ανάπτυξη και τη δημιουργία dApps και έξυπνων συμβάσεων. Είναι εύκολο να μάθετε και σας δίνει την ευελιξία να πειραματιστείτε.


Πρακτικός οδηγός για τη δημιουργία μιας αποκεντρωμένης εφαρμογής Blockchain

Προτού προχωρήσουμε και βυθίσουμε βαθιά τον κώδικα, θα ήθελα να αναφέρω τα βήματα που περιγράφουν τη διαδικασία δημιουργίας μιας εφαρμογής blockchain. Ας το δούμε παρακάτω.

Βρείτε μια ιδέα

Το πρώτο βήμα είναι να βρείτε μια ιδέα για να εργαστείτε. Η αποκέντρωση είναι μια νέα ιδέα που μπορεί να έχει πολλές περιπτώσεις χρήσης. Ως μαθητευόμενος ή μηχανικός, θα πρέπει να βρείτε μια χρήσιμη ιδέα που μπορεί να ωφελήσει εσάς ή την εταιρεία σας. Επίσης, μην ανησυχείτε εάν δεν μπορείτε να έρθετε με μια ιδέα που αλλάζει το τοπίο. Είναι εντάξει η δημιουργία απλών dApps μόνο για λόγους μάθησης και πρακτικής.

Μπορείτε επίσης να αναζητήσετε ζητήματα που αντιμετωπίζετε με το blockchain και ίσως να προσπαθήσετε να τα λύσετε στην καλύτερη προσπάθειά σας. Το σημείο εδώ είναι να δείτε το πρόβλημα από το σημείο του πόνου σας και στη συνέχεια να προσπαθήσετε να το λύσετε.

Εάν προσπαθείτε να δημιουργήσετε ένα dApp για την επιχείρησή σας ή σύμφωνα με τις απαιτήσεις της επιχείρησής σας, τότε πρέπει να κάνετε μια σωστή ανάλυση κόστους / οφέλους. Πρέπει επίσης να διερευνήσετε τους κινδύνους που σχετίζονται με το έργο και να δείτε εάν η ομάδα της επιχείρησής σας μπορεί να διαχειριστεί την εφαρμογή με τη δέουσα επιμέλεια.

Σε κάθε περίπτωση, δεν πρέπει να λάβετε βιαστική απόφαση που θα μετανιώσετε αργότερα. Αυτό συμβαίνει επειδή η ανάπτυξη blockchain είναι δαπανηρή, ειδικά όταν πρόκειται για την εξεύρεση ταλέντων για την ανάπτυξη και τη διαχείρισή του. Επιπλέον, υπάρχει έλλειψη προγραμματιστών που εργάζονται στο blockchain. Εν ολίγοις, θα πρέπει να λάβετε τα κατάλληλα μέτρα όσον αφορά την ανάπτυξη εφαρμογών blockchain ή blockchain.

Ακολουθεί ένας οδηγός για την ανάπτυξη dApps που μπορείτε να κατανοήσετε τους μηχανισμούς πίσω από τη δημιουργία μιας νέας αποκεντρωμένης εφαρμογής.

Επιλέξτε μια μέθοδο συναίνεσης

Οποιαδήποτε αποκεντρωμένη εφαρμογή απαιτεί έναν κατάλληλο αλγόριθμο συναίνεσης για να λειτουργήσει. Διασφαλίζει ότι οι συναλλαγές επικυρώνονται και δεν μπορούν να πραγματοποιηθούν απάτες. Ως προγραμματιστής ή εκπαιδευόμενος, πρέπει να διαλέξετε οποιαδήποτε από τις διαθέσιμες μεθόδους συναίνεσης, όπως το Proof of Stake, το Delegated Proof of Stake, το Βυζαντινό ανθεκτικό σε σφάλματα και ούτω καθεξής! Η επιλογή πρέπει να εξαρτάται από την οικειότητα και τις απαιτήσεις της εφαρμογής σας.

Επιλέγοντας μια πλατφόρμα

Εδώ, πρέπει να επιλέξετε μια πλατφόρμα της επιλογής σας. Είναι σαφές ότι έχουμε ήδη καλύψει το παραπάνω σημείο. Έχετε κυρίως τρεις πλατφόρμες για να διαλέξετε, συμπεριλαμβανομένων των Ethereum, Hyperledger Fabric και Cardano.

Υπάρχουν πολλά εταιρικά πλαίσια blockchain που μπορείτε να χρησιμοποιήσετε για αυτό, αλλά θα ακολουθήσουμε το Ethereum.

Κονσόλα διαχειριστή και διεπαφή χρήστη

Οι εφαρμογές πρέπει να έχουν την κατάλληλη εμπειρία χρήστη. Γι ‘αυτό πρέπει να δημιουργήσετε μια εφαρμογή blockchain με ένα καλό περιβάλλον εργασίας χρήστη. Η εφαρμογή θα πρέπει επίσης να διαθέτει κονσόλα διαχειριστή, ώστε να μπορείτε να τη διαχειριστείτε χωρίς προβλήματα.

Κατανόηση των αρχών Blockchain

Είναι κοινό για τους προγραμματιστές να ξεκινούν το σεμινάριο ανάπτυξης εφαρμογών blockchain χωρίς να κατανοούν τις βασικές έννοιες και αρχές. Αυτός είναι ο λόγος για τον οποίο προτείνω τα βασικά στοιχεία του blockchain πριν ξεκινήσετε με τα σεμινάρια ανάπτυξης εφαρμογών. Ίσως θέλετε επίσης να διαβάσετε για το οικοσύστημά του, συμπεριλαμβανομένων εργαλείων blockchain, πλατφορμών και κρυπτονομισμάτων.

Πρακτική και ανάπτυξη

Εξασκηθείτε στις δεξιότητές σας όσο μπορείτε. Αυτό θα σας δώσει τις δεξιότητες για την ανάπτυξη πιο σύνθετων εφαρμογών στο μέλλον.

Πώς να δημιουργήσετε μια εφαρμογή Blockchain; Η εύκολη προσέγγιση

Ναι, το διαβάσατε σωστά. Σε αυτήν την ενότητα, η εστίασή μας θα ήταν να δημιουργήσουμε μια απλή εφαρμογή blockchain σε πέντε απλά βήματα. Εάν δεν έχετε δημιουργήσει ποτέ μια εφαρμογή blockchain, τότε αυτά τα πέντε βήματα θα σας βοηθήσουν να κατανοήσετε καλύτερα τη διαδικασία.

Τα πέντε βήματα έχουν ως εξής.

  • Εγκαταστήστε εξαρτήσεις και αποθετήρια κλώνων.
  • Εκτέλεση Ganache CLI
  • Σύνταξη συμβολαίων
  • Ανάπτυξη συμβολαίου
  • Αλληλεπίδραση συμβάσεων

Και αυτό είναι όλο. Μπορείτε να βρείτε πιο λεπτομερή βήματα στην ίδια την ανάρτηση. Είναι μια απλή εφαρμογή ψηφοφορίας στο blockchain.

Πώς να δημιουργήσετε μια εφαρμογή Blockchain; Η σκληρή προσέγγιση

Καλώς! Με έπιασες! Δεν θέλετε τον εύκολο τρόπο, αλλά θέλετε να μάθετε το blockchain με τον σκληρό τρόπο. Μην ανησυχείτε, καθώς, σε αυτήν την ενότητα, θα δημιουργήσουμε μια εφαρμογή todo list χρησιμοποιώντας έξυπνα συμβόλαια Ethereum.

Λειτουργία εφαρμογής Blockchain

Προτού εμβαθύνουμε στη δημιουργία μιας εφαρμογής blockchain, ας προσπαθήσουμε να καταλάβουμε πώς θα λειτουργούσε πρώτα μια εφαρμογή blockchain.

Για να το καταλάβετε, ας ρίξουμε μια ματιά στον τρόπο λειτουργίας μιας απλής εφαρμογής. Κάθε εφαρμογή που λειτουργεί στο Διαδίκτυο αποδίδεται στον υπολογιστή του χρήστη χρησιμοποιώντας ένα πρόγραμμα περιήγησης ή μια αποκλειστική εφαρμογή στα παράθυρα. Σε κάθε περίπτωση, ζητά από το διακομιστή τις σελίδες ή τις πληροφορίες, οι οποίες στη συνέχεια αποδίδονται στον υπολογιστή του χρήστη.

Στην περίπτωση της διαδικτυακής εφαρμογής, όλα είναι συγκεντρωτικά. Αυτό προσφέρει ορισμένα οφέλη. Ωστόσο, αφήνει πολλά να είναι επιθυμητά όσον αφορά την ασφάλεια. Οι εφαρμογές Blockchain λειτουργούν εντελώς διαφορετικά. Όλα είναι αποκεντρωμένα, συμπεριλαμβανομένου του κώδικα και των δεδομένων που είναι αποθηκευμένα στην εφαρμογή.

Έξυπνες συμβάσεις

Το κλειδί εδώ είναι το έξυπνο συμβόλαιο. Ένα έξυπνο συμβόλαιο διευκολύνει την ίδια την εφαρμογή. Περιέχει όλο τον κώδικα που κάνει την εφαρμογή να λειτουργεί. Αυτοματοποιεί επίσης τη διαδικασία και διασφαλίζει ότι λειτουργεί όπως προορίζεται. Στο σεμινάριό μας, πρόκειται να χρησιμοποιήσουμε έξυπνα συμβόλαια για να γράψουμε τις διαφορετικές λειτουργίες της λίστας υποχρεώσεων.

Τα έξυπνα συμβόλαια χρησιμοποιούν τη γλώσσα προγραμματισμού Solidity. Είναι παρόμοιο με το JavaScript. Μόλις γραφτεί ένα έξυπνο συμβόλαιο, ο κώδικάς του γίνεται αμετάβλητος και αμετάβλητος. Είστε ελεύθεροι να αλλάξετε τον κωδικό κατά την ανάπτυξη. Ωστόσο, μόλις αναπτυχθεί η εφαρμογή, δεν θα μπορείτε να αλλάξετε τον κώδικα. Αυτό γίνεται για να φέρει την αξιοπιστία και την ασφάλεια στις εφαρμογές blockchain. Η προσέγγιση σημαίνει επίσης ότι πρέπει να είστε πολύ προσεκτικοί και να κάνετε όλες τις δοκιμές πριν από την ανάπτυξη του έξυπνου συμβολαίου. Επίσης, οι έξυπνοι κωδικοί συμβολαίου είναι δημόσιοι.

Θέλετε να μάθετε πώς να δημιουργήσετε ένα blockchain χρησιμοποιώντας το Python; Ακολουθεί ένα σεμινάριο για τη δημιουργία ενός blockchain με την Python που μπορείτε να ακολουθήσετε.

Δημιουργία της εφαρμογής λίστας υποχρεώσεων Blockchain

Για να βεβαιωθείτε ότι κατανοείτε την έννοια, πρέπει πρώτα να μάθετε πώς θα λειτουργεί η εφαρμογή blockchain Todo. Θα χρησιμοποιήσουμε το Ethereum για να φτιάξουμε την εφαρμογή. Η εφαρμογή μας θα χρησιμοποιεί έναν μόνο κόμβο Ethereum και θα έχει επίσης εφαρμογή από την πλευρά του πελάτη. Θα χρησιμοποιήσουμε το Solidity για να γράψουμε το έξυπνο συμβόλαιο και μετά να το αναπτύξουμε.

Ως προγραμματιστής, πρέπει να χρησιμοποιήσετε ένα πορτοφόλι Ethereum – το οποίο είναι εύκολο να φτιάξετε.

Ετοιμασία – Δημιουργία περιβάλλοντος

Για να δημιουργήσουμε ένα τοπικό περιβάλλον, θα χρειαστούμε πολλά εργαλεία και πακέτα. Ας τα περάσουμε ένα προς ένα.

Ganache

Ganache είναι ένα εργαλείο ανάπτυξης Ethereum. Σας επιτρέπει να διαχειριστείτε, να αναπτύξετε και να αναπτύξετε εφαρμογές, έξυπνα συμβόλαια και δοκιμές. Θα εκτελέσουμε την έκδοση των Windows για το σεμινάριο. Εάν έχετε διαφορετικό λειτουργικό σύστημα, μπορείτε επίσης να κάνετε λήψη της έκδοσης Mac ή Linux. Μόλις εγκατασταθεί, θα πρέπει να μπορείτε να το χρησιμοποιήσετε μέσω του εργαλείου γραμμής εντολών.

Node.js

Το Node.js είναι το επόμενο εργαλείο μας που πρέπει να εγκατασταθεί. Για να εκτελέσετε το ιδιωτικό blockchain στο μηχάνημά σας, πρέπει να εγκαταστήσετε το Διαχειριστής πακέτων κόμβων.

Μόλις εγκατασταθεί, ανοίξτε το τερματικό σας και πληκτρολογήστε την παρακάτω εντολή. Εάν τρέχει, τότε είστε καλοί να πάτε.

$ node -v

Πορτοφόλι MetaMask Ethereum

Καθώς πρόκειται να δουλέψουμε στο blockchain Ethereum, χρειαζόμαστε ένα πορτοφόλι που μπορεί να λειτουργήσει από το πρόγραμμα περιήγησης. Μεταμασκ είναι ένα πορτοφόλι του προγράμματος περιήγησης ιστού που σας επιτρέπει να αλληλεπιδράτε με το blockchain Ethereum.

Πλαίσιο τρούφας

Το τελευταίο λογισμικό που πρόκειται να εγκαταστήσουμε είναι το Πλαίσιο τρούφας. Προσφέρει ένα ευρύ φάσμα εργαλείων που σας επιτρέπουν να εργάζεστε αποτελεσματικά στο dApp σας. Μπορείτε να χρησιμοποιήσετε τη γλώσσα προγραμματισμού Solidity για να αναπτύξετε ένα έξυπνο συμβόλαιο Ethereum.

Ορισμένες από τις βασικές δυνατότητες του Truffle Framework περιλαμβάνουν τα ακόλουθα

  • Σωστή διαχείριση έξυπνων συμβάσεων
  • Διαχείριση δικτύωσης
  • Αυτοματοποιημένες δοκιμές
  • Κονσόλα ανάπτυξης
  • Δρομέας σεναρίου
  • Ανάπτυξη και μετεγκαταστάσεις
  • Ανάπτυξη πελάτη.

Για εγκατάσταση, πρέπει να χρησιμοποιήσετε το εντολή npm. Απλώς εκτελέστε την ακόλουθη εντολή στη γραμμή εντολών.

$ npm install -g [email protected]

Θα χρειαστεί λίγος χρόνος για να ολοκληρωθεί η εγκατάσταση. Επίσης, σημειώστε ότι πρέπει να εγκαταστήσετε την ακριβή έκδοση για να ακολουθήσετε το σεμινάριο.

Θέλετε να γίνετε εξειδικευμένος επαγγελματίας blockchain; Εγγραφείτε στο πιστοποιημένο επαγγελματικό επαγγελματικό μάθημα blockchain τώρα!

Ρύθμιση του Έργου

Δροσερός! Έχουμε τώρα το αναπτυξιακό μας περιβάλλον έτοιμο για χρήση. Τώρα, το μόνο που πρέπει να κάνουμε είναι να δημιουργήσουμε το έργο μας. Για να γίνει αυτό, πρέπει να δημιουργήσουμε τον κατάλογο έργων. Ας το κάνουμε παρακάτω.

$ mkdir dapp-todo

$ cd dapp-todo

Μόλις βρεθείτε στο φάκελο, τότε πρέπει να ξεκινήσετε το έργο τρούφας εκτελώντας την παρακάτω εντολή.

$ τρούφα init

Μόλις τελειώσετε, θα εμφανιστεί ένα μήνυμα όπως παραπάνω. Αυτό σημαίνει ότι ο φάκελος και τα αρχεία έχουν δημιουργηθεί με επιτυχία. Τώρα, μπορείτε να ανοίξετε το φάκελο στον αγαπημένο σας επεξεργαστή κειμένου. Αλλά πριν το κάνετε αυτό, πρέπει να δημιουργήσετε το package.json αρχείο. Αυτό θα σας βοηθήσει να εγκαταστήσετε τις εξαρτήσεις που απαιτούνται για το έργο.

Μπορείτε να δημιουργήσετε με μη αυτόματο τρόπο το αρχείο και, στη συνέχεια, να αποθηκεύσετε τα περιεχόμενα που εμφανίζονται παρακάτω.

{

  “Όνομα”: “dapp-todo”,

  “Έκδοση”: “1.0.0”,

  “Περιγραφή”: “Λίστα υποχρεώσεων που λειτουργεί με Ethereum”,

  “Main”: “truffle-config.js”,

  “Κατάλογοι”: {

    “Test”: “test”

  },

  “Σενάρια”: {

    “Dev”: “διακομιστής lite”,

    “Test”: “echo \” Σφάλμα: δεν έχει καθοριστεί δοκιμή \ ” && σεξουαλικό 1 ″

  },

  “Συγγραφέας”: “[email protected]”,

  “Άδεια”: “ISC”,

  “DevDependencies”: {

    “Bootstrap”: “4.1.3”,

    “Chai”: “^ 4.1.2”,

    “Chai-όπως υποσχέθηκε”: “^ 7.1.1”,

    “Chai-bignumber”: “^ 2.0.2”,

    “Lite-server”: “^ 2.3.0”,

    “Nodemon”: “^ 1.17.3”,

    «Τρούφα»: «5.0.2»,

    «Τρούφα-σύμβαση»: «3.0.6»

  }

}

Μόλις τελειώσετε, εκτελέστε τώρα την ακόλουθη εντολή για να εγκαταστήσετε τις εξαρτήσεις.

Εγκατάσταση $ npm

Κατανόηση της δομής καταλόγου

Η δομή του καταλόγου θα μοιάζει παρακάτω.

Ας κατανοήσουμε κάθε φάκελο ένα προς ένα.

  • Συμβάσεις: Ο κατάλογος περιέχει όλα τα έξυπνα συμβόλαια. Η σύμβαση migrations.sol χειρίζεται τις μετακινήσεις στο blockchain.
  • Μετεγκαταστάσεις: Ο κατάλογος μετεγκατάστασης περιέχει τα δεδομένα μετεγκατάστασης. Από εδώ γίνονται οι μεταναστεύσεις.
  • node_modules: Περιέχει όλες τις ενότητες κόμβων / εξαρτήσεις.
  • Δοκιμή: Αυτός ο κατάλογος περιέχει τα δοκιμαστικά αρχεία.
  • truffle-config.js: Αυτό το αρχείο περιέχει τη διαμόρφωση του έργου τρούφας.

Δημιουργία έξυπνης σύμβασης

Ήρθε η ώρα να ξεκινήσουμε με το δικό μας δημιουργία έξυπνων συμβάσεων. Τα έξυπνα συμβόλαιά μας θα αποθηκευτούν στο φάκελο συμβάσεων. Ας δημιουργήσουμε ένα έξυπνο αρχείο συμβολαίου που ονομάζεται todo.sol

Μόλις τελειώσετε, πρέπει τώρα να γράψετε τον κωδικό όπως παρακάτω.

σταθερότητα πραγμάτων ^ 0,5,0;

σύμβαση Todo {

// Κωδικός εδώ

}

Η πρώτη γραμμή κώδικα καθορίζει ποια έκδοση του Solidity χρησιμοποιούμε για τη σύνταξη του έξυπνου συμβολαίου. Στη συνέχεια, πρέπει να χρησιμοποιήσουμε τη λέξη-κλειδί της σύμβασης και να δημιουργήσουμε μια σύμβαση Todo. Αυτό θα περιέχει τον κωδικό για το έξυπνο συμβόλαιο.

Τώρα, ας προσθέσουμε μια μεταβλητή για να δούμε αν όλα λειτουργούν όπως προορίζεται.

σταθερότητα πραγμάτων ^ 0,5,0;

σύμβαση Todo {

uint Tasks = 0;

}

Εδώ, ορίζουμε τη μεταβλητή εργασιών που θα μετράει τον αριθμό των εργασιών που έχουμε στην εφαρμογή Todo.

Σύνδεση στο Ganache

Με το έξυπνο συμβόλαιό μας που έχει ρυθμιστεί σωστά στο Truffle, πρέπει τώρα να συνδεθούμε με το ιδιωτικό blockchain Ganache που δημιουργήσαμε. Για να γίνει αυτό, ορισμένα αρχεία διαμόρφωσης πρέπει να ενημερωθούν. Πρέπει επίσης να δημιουργήσουμε ένα σενάριο μετεγκατάστασης και να το τρέξουμε έτσι ώστε να μπορούμε να συνδεθούμε με το προσωπικό δίκτυο blockchain.

Για να ξεκινήσουμε, πρέπει να ενημερώσουμε το αρχείο truffle-config.json. Θα πρέπει να βρίσκεται στον βασικό κατάλογο έργων. Μόλις το ανοίξετε, αντιγράψτε-επικολλήστε τον ακόλουθο κώδικα.

module.exports = {

δίκτυα: {

ανάπτυξη: {

κεντρικός υπολογιστής: “127.0.0.1”,

λιμάνι: 7545,

network_id: “*” // Αντιστοίχιση αναγνωριστικού δικτύου

}

},

solc: {

βελτιστοποιητής: {

ενεργοποιημένο: true,

τρέχει: 200

}

}

}

Με το αρχείο truffle-config.js που δημιουργήθηκε, είναι πλέον καιρός να δημιουργήσουμε το σενάριο μετεγκατάστασης, έτσι ώστε το έξυπνο συμβόλαιο που δημιουργούμε να μπορεί να μεταφερθεί στο προσωπικό δίκτυο blockchain.

Θα αρχειοθετήσουμε το όνομα ως 2_deploy_contracts.js

Οι μετεγκαταστάσεις είναι πολύ κρίσιμες για την εφαρμογή Todo. Καθώς το blockchain είναι ένας τύπος βάσης δεδομένων, πρέπει να το αλλάξουμε από τη μία κατάσταση στην άλλη. Εδώ βοηθούν οι μεταναστεύσεις.

Για να συνδέσουμε τα αρχεία μετεγκατάστασης, πρέπει να ενημερώσουμε την προσθήκη του ακόλουθου κώδικα στο πρόσφατα δημιουργημένο αρχείο μετεγκατάστασης.

var Todo = artifacts.require (“./ Todo.sol”);

module.exports = function (deployer) {

deployer.deploy (Todo)

}

Η πρώτη γραμμή κώδικα δημιουργεί απλά μια μεταβλητή που αναφέρεται στο έξυπνο συμβόλαιό μας. Μόλις τελειώσουμε, το αναπτύξουμε.

Μόλις τελειώσετε, ας τρέξουμε την εντολή μετεγκατάστασης.

Μετεγκατάσταση $ Truffle

Μπορείτε επίσης να εκτελέσετε την κονσόλα χρησιμοποιώντας την παρακάτω εντολή.

$ truffle κονσόλα

Ανάπτυξη της εφαρμογής μας Todo List

Τώρα που εκτελέσαμε με επιτυχία το πρώτο μας έξυπνο συμβόλαιο Ethereum, ήρθε η ώρα να προσθέσουμε χαρακτηριστικά στο dApp μας. Το dApp μας είναι απλό. Θα αναφέρει τις εργασίες στη λίστα Todo. Πρέπει να χρησιμοποιήσουμε το έξυπνο συμβόλαιο για να το κάνουμε πραγματικότητα.

Ας το κάνουμε παρακάτω.

σταθερότητα πραγμάτων ^ 0,5,0;

σύμβαση Todo {

uint δημόσια καθήκοντα = 0;

 

δομή εργασίας {

uint id;

περιεχόμενο χορδών;

ολοκληρώθηκε το bool.

}

}

Εδώ χρησιμοποιήσαμε μια λέξη-κλειδί struct για να δημιουργήσουμε μια νέα εργασία Tas. Το χρησιμοποιούμε για να καθορίσουμε τη δομή της Εργασίας μας, η οποία περιέχει το αναγνωριστικό, το περιεχόμενο και την ολοκληρωμένη δυαδική τιμή.

Στη συνέχεια, πρέπει τώρα να χαρτογραφήσουμε τη δομή των εργασιών μας και να τη δημοσιοποιήσουμε, ώστε να είναι προσβάσιμη από το blockchain. Για να γίνει αυτό, πρέπει να προσθέσουμε την ακόλουθη γραμμή κώδικα.

Ο έξυπνος κωδικός συμβολαίου θα μοιάζει τώρα παρακάτω.

σταθερότητα πραγμάτων ^ 0,5,0;

σύμβαση Todo {

uint δημόσια καθήκοντα = 0;

δομή εργασίας {

uint id;

περιεχόμενο χορδών;

ολοκληρώθηκε το bool.

}

χαρτογράφηση (uint => Εργασία) δημόσια καθήκοντα ·

}

Τέλος, πρέπει τώρα να δημιουργήσουμε μια συνάρτηση που χειρίζεται τις εργασίες.

function createTask (string memory _content) δημόσια {

taskCount ++;

task [taskCount] = Εργασία (taskCount, _content, false)

}

Η συνάρτηση είναι αυτονόητη ως επί το πλείστον. Δημιουργήσαμε τη συνάρτηση έτσι ώστε να μπορεί να μετρήσει τον αριθμό των εργασιών που παρατίθενται στο Todo dApp.

Τέλος, πρέπει να δημιουργήσουμε έναν κατασκευαστή για να αρχικοποιήσουμε την τάξη Todo.

κατασκευαστής () δημόσιος {

createTask (“Αυτή είναι η πρώτη μας εργασία”)

}

Το αρχείο todo.sol θα πρέπει τώρα να είναι όπως παρακάτω.

σταθερότητα πραγμάτων ^ 0,5,0;

σύμβαση Todo {

uint δημόσια καθήκοντα = 0;

δομή εργασίας {

uint id;

περιεχόμενο χορδών;

ολοκληρώθηκε το bool.

}

κατασκευαστής () δημόσιος {

createTask (“Αυτή είναι η πρώτη μας εργασία”)

}

χαρτογράφηση (uint => Εργασία) δημόσια καθήκοντα ·

function createTask (string memory _content) δημόσια {

taskCount ++;

task [taskCount] = Εργασία (taskCount, _content, false)

}

}

Δημιουργία εργασιών

Μπορούμε επίσης να δημιουργήσουμε εργασίες στο Todo dApp. Για να το κάνουμε αυτό, πρέπει να δημιουργήσουμε μια σκανδάλη όταν δημιουργείται μια νέα εργασία. Η προσέγγισή μας είναι να δημιουργήσουμε ένα νέο συμβάν TaskCreated και στη συνέχεια να το προσθέσουμε στην υπάρχουσα συνάρτηση createTask ().

συμβάν TaskCreated (

uint id;

περιεχόμενο συμβολοσειράς,

το bool ολοκληρώθηκε

);

Τώρα, προσθέστε την ακόλουθη γραμμή στη συνάρτηση createTask ().

emit TaskCreated (taskCount, _content, false);

Ολοκλήρωση εργασιών

Η ολοκλήρωση εργασιών μπορεί επίσης να προστεθεί χρησιμοποιώντας το συμβάν. Πρέπει να προσθέσετε το ακόλουθο συμβάν στο συμβόλαιο Todo.

Εργασία εκδήλωσης ολοκληρώθηκε (

uint id,

το bool ολοκληρώθηκε

);

Για να λειτουργήσει, πρέπει επίσης να προσθέσετε μια νέα λειτουργία.

function toggleCompleted (uint _id) δημόσια {

Μνήμη εργασιών _task = εργασίες [_id];

_task.completed =! _task.completed;

εργασίες [_id] = _task;

emit TaskCompleted (_id, _task.completed)

}

Συγχαρητήρια! Έχετε δημιουργήσει την πρώτη σας λίστα εφαρμογών Todo στο blockchain Ethereum.

Τελική σημείωση

Αυτό μας οδηγεί επίσης στο τέλος του τρόπου δημιουργίας ενός οδηγού εφαρμογής blockchain. Έτσι δημιουργείτε μια εφαρμογή blockchain από το μηδέν.

Από εκεί, πρέπει να δοκιμάσετε σωστά το συμβόλαιο προτού το μεταφέρετε τελικά στο blockchain Μπορείτε επίσης να δημιουργήσετε τη διεπαφή της εφαρμογής και να τη δοκιμάσετε. Εάν δεν σας ενδιαφέρει, τότε μπορείτε να ενεργοποιήσετε την κονσόλα και να αποκτήσετε πρόσβαση στις μεταβλητές και να λειτουργήσετε για να δοκιμάσετε τα πράγματα!

Αλλά αν δεν γνωρίζετε ακόμα τις επιπτώσεις του blockchain, σας παροτρύνουμε να ξεκινήσετε το δωρεάν μάθημα blockchain για να μάθετε περισσότερα σχετικά με αυτό. Χωρίς να μάθετε ή να καταλάβετε πώς λειτουργεί, η κατανόηση της ιδέας προγραμματισμού θα είναι πολύ δύσκολη για εσάς.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map