Προγραμματισμός Blockchain: Στερεότητα. Προγραμματισμός των έξυπνων συμβάσεων

Σε πάνω από 10 χρόνια ανάπτυξης, το blockchain έχει επεκταθεί σημαντικά από ένα απλό σύστημα μεταφοράς αξίας μέσω νομισμάτων στη βάση για το Web 3.0 και τις αποκεντρωμένες εφαρμογές. Αυτό συνέβη κυρίως λόγω της εκδήλωσης νέων έργων μετά την εισαγωγή της Ethereum στο πρότυπο ERC20 και στις έξυπνες συμβάσεις.

Έξυπνα συμβόλαια χρησιμοποιήθηκαν ευρέως στη συγκέντρωση χρημάτων για ICO για να διασφαλιστεί η διαφάνεια για τους συμμετέχοντες. Αυτό τους έκανε διάσημους, αλλά αυτή δεν ήταν η μόνη εφαρμογή. Υπάρχουν επιτυχημένες περιπτώσεις έξυπνων συμβάσεων για τη δημιουργία κατανεμημένων αυτόνομων οργανισμών, τη διαχείριση δικαιωμάτων και τη διακυβέρνηση. Η ανάγκη για αυτά είναι τόσο προφανής που υπάρχουν ακόμη και προσπάθειες δημιουργίας έξυπνων συμβολαίων για το Bitcoin.

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

Πώς λειτουργεί το Ethereum?

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

Στον πυρήνα του, το Ethereum διαθέτει μια εικονική μηχανή. Πιθανότατα τα συναντήσατε νωρίτερα κατά την εκκίνηση παλιών παιχνιδιών σε έναν εξομοιωτή ή την εκτέλεση κάποιου λογισμικού ειδικά για λειτουργικό σύστημα στο μη εγγενές λειτουργικό σύστημα. Με απλά λόγια, μια εικονική μηχανή είναι ένας υπολογιστής μέσα σε έναν υπολογιστή, ο οποίος χρησιμοποιεί το υλικό του αρχικού μηχανήματος. Στην περίπτωση του Ethereum, το EVM χρησιμοποιεί πόρους υπολογιστών που είναι συνδεδεμένοι στο δίκτυο (κόμβοι). Όπως κάθε άλλο VM, το Ethereum έχει τη δική του μνήμη RAM και ROM, τα οποία χρησιμοποιούνται από προγράμματα που τρέχουν πάνω από αυτό. Η μόνη σημαντική εξαίρεση είναι ότι η μνήμη ROM της EVM είναι blockchain, οπότε μόλις φτάσει κάτι, δεν μπορεί να αφαιρεθεί.

Γιατί είναι σημαντικό? Η δημιουργία έξυπνων συμβάσεων αποτελεί απίστευτη ευθύνη, διότι σε περίπτωση ευπάθειας, τα χρήματα των χρηστών μπορούν να κλαπούν ή να χαθούν. Ενώ μπορείτε να τροποποιήσετε ή να αντικαταστήσετε πλήρως τον κώδικα σε έναν κεντρικό διακομιστή, δεν μπορείτε να το κάνετε σε αποκεντρωμένο VM. Επιπλέον, κάθε ενέργεια που εκτελείται με έξυπνο συμβόλαιο απαιτεί την καταβολή τελών στο δίκτυο. Γιατί; Επειδή το EVM πρέπει να επεξεργαστεί μια δεδομένη εργασία και μπορεί να το κάνει μόνο χρησιμοποιώντας την ισχύ επεξεργασίας κάποιων κόμβων. Τα τέλη ονομάζονται Gas και καταβάλλονται στο Gwei, τα οποία είναι παρόμοια με το Satoshi του Bitcoin.

Πώς λειτουργεί μια έξυπνη σύμβαση?

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

Μόλις δημιουργήσετε ένα πορτοφόλι, μπορείτε να το συνδέσετε σε οποιοδήποτε από τα διαθέσιμα δίκτυα και το μόνο πράγμα που θα αλλάξει είναι το υπόλοιπό σας. Αυτό συμβαίνει επειδή οι διευθύνσεις χρηστών δεν είναι εσωτερικές σε κανένα δίκτυο – υπάρχουν παράλληλα. Από την άλλη πλευρά, μια παρουσία ενός έξυπνου συμβολαίου περιλαμβάνεται σε ένα δεδομένο blockchain και δεν μπορεί να προβληθεί σε άλλη αλυσίδα. Για να μπορέσετε να ξεκινήσετε ένα συμβόλαιο στο Κύριο Δίκτυο αφού το δοκιμάσετε, ας πούμε Rinkeby, ο δημιουργός του θα πρέπει να αναπτύξει μια νέα παρουσία του συμβολαίου. Αυτό θα απαιτήσει ξανά τη σύνταξη του πηγαίου κώδικα. Ένας δημιουργός συμβολαίου μπορεί να κάνει όσες εμφανίσεις του κώδικα επιθυμεί, αρκεί να έχει αρκετό ETH για να πληρώσει το Gas για αλληλεπίδραση με το δίκτυο.

Ακριβώς όπως μια κεντρική εφαρμογή, ένα έξυπνο συμβόλαιο έχει έναν ειδικό χώρο για την αποθήκευση των πόρων του και ένα σύμβολο κράτησης θέσης για κώδικα (εικόνα ως ιστοσελίδα που κατεβάζετε από το Διαδίκτυο, θα έχει ένα αρχείο.html και μερικούς φακέλους με εικόνες και άλλα υλικό). Υπάρχει επίσης μια ένδειξη για το πόσο ETH έχει ένα συμβόλαιο στο υπόλοιπό του. Αυτό είναι ζωτικής σημασίας για διάφορες περιπτώσεις χρήσης, όπως συγκέντρωση χρημάτων, διαθήκες κ.λπ. Το πλήρες σχηματικό παρουσιάζεται στην παρακάτω εικόνα.

Ethereum EVM & amp; Σχηματικό πορτοφόλιΕικόνα από U. Σήμερα

Πώς να δημιουργήσετε ένα έξυπνο συμβόλαιο?

Τώρα που γνωρίζουμε τις αρχές του τρόπου λειτουργίας του Ethereum και του τρόπου λειτουργίας των έξυπνων συμβάσεων, μπορούμε να δημιουργήσουμε μόνοι μας. Πρώτον, θα πρέπει να δημιουργήσουμε το κατάλληλο περιβάλλον. Μπορείτε να ακολουθήσετε δύο διαδρομές, είτε γράφοντας τον κωδικό στο πρόγραμμα περιήγησης με το Remix IDE που παρέχεται από το Ethereum Foundation είτε κατεβάζοντας μια εφαρμογή κωδικοποίησης της επιλογής σας μαζί με ορισμένα πακέτα για αυτό. Για τους σκοπούς αυτού του σεμιναρίου, θα σας δείξουμε τόσο το Remix όσο και το Atom (μια καθολική εφαρμογή κωδικοποίησης για Mac & Windows).

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

Πριν από τη σύμβασή μας, θα βάλουμε μια γραμμή που καθορίζει την έκδοση γλώσσας, καθώς αυτό θα βοηθήσει τον μεταγλωττιστή να προσαρμόσει σωστά τον κώδικα. Η κατάρτιση του κώδικα είναι απαραίτητη γιατί μόλις φτάσουμε στο στάδιο ανάπτυξης, ο κώδικας θα προσαρμοστεί στον κώδικα του μηχανήματος που θα μπορεί να διαβάσει και να επεξεργαστεί το EVM. Επιπλέον, θα δημιουργηθεί μια δυαδική διεπαφή εφαρμογής που θα μπορούσε να χρησιμοποιηθεί περαιτέρω για τη δημιουργία μιας πλήρους αποκεντρωμένης εφαρμογής. Μπορείτε πάντα να ελέγξετε την τελευταία έκδοση του Solidity στον επίσημο ιστότοπό της. Για να το καθορίσετε, πληκτρολογήστε «pragma solidity» και την έκδοση μετά το σύμβολο «^».

Για να ορίσετε όρια για το συμβόλαιό μας, ας του δώσουμε ένα όνομα ακολουθούμενο από παρένθεση. Πρώτον, θα δηλώσουμε δύο μεταβλητές: «μοντέλο» και «HP». Η πρώτη θα είναι μια συμβολοσειρά που αντιπροσωπεύει ένα μοντέλο αυτοκινήτου και η δεύτερη θα είναι ένας ακέραιος που αντιπροσωπεύει την ιπποδύναμη ενός συγκεκριμένου μοντέλου αυτοκινήτου. Υπάρχουν δύο πράγματα που πρέπει να αναφέρουμε σχετικά με τις μεταβλητές από την άποψη της Στερεότητας. Το πρώτο είναι ότι πρέπει να δηλώσουμε εάν τρίτα μέρη θα πρέπει να μπορούν να τα δουν βάζοντας «δημόσια» ή «ιδιωτικά» δίπλα τους. Το τελευταίο είναι ότι οι ακέραιοι αριθμοί στο Solidity μπορούν να υπογραφούν ή να υπογραφούν. Ένας μη υπογεγραμμένος ακέραιος αριθμός είναι δυνατός μόνο και γράφεται ως «uint». Ένας υπογεγραμμένος ακέραιος αριθμός μπορεί να είναι και οι δύο θετικοί & αρνητικό και γράφεται ως «int».

Αφού καθορίσουμε τις μεταβλητές μας, ήρθε η ώρα να γράψουμε ορισμένες λειτουργίες που θα εκτελέσει το έξυπνο συμβόλαιό μας. Πρώτον, πρέπει να κάνουμε placeholder για το μοντέλο και την HP μας. Θα χρησιμοποιήσουμε μερικές δημόσιες λειτουργίες και θα επισυνάψουμε τις μεταβλητές μας σε αυτές. Δεύτερον, πρέπει να περιγράψουμε μερικές δημόσιες λειτουργίες που θα επιστρέψουν μια είσοδο. Ρίξτε μια ματιά στο πώς φαίνεται το έξυπνο συμβόλαιό μας.

Μοντέλο οχήματος & amp; έξυπνη σύμβαση ιπποδύναμηςΕικόνα από U. Σήμερα

Πώς να δημιουργήσετε ένα διακριτικό στο Ethereum?

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

Η δημιουργία ενός διακριτικού σημαίνει τη χρήση του προτύπου ERC20, το οποίο μπορεί γρήγορα να γίνει Google. Μην ξεχάσετε να ορίσετε την έκδοση του Solidity πριν από το ίδιο το πρότυπο. Θα υπάρχει ένα σύνολο λειτουργιών και δύο γεγονότων που υποτίθεται ότι καταγράφουν ενέργειες στο καθολικό του Ethereum. Μεταξύ των συναρτήσεων, θα βρείτε το σύνολο των απαραίτητων: ένα για τον καθορισμό της συνολικής προσφοράς, ένα για τον έλεγχο του υπολοίπου ενός συγκεκριμένου πορτοφολιού και ένα για τη μεταφορά μαρκών μεταξύ των πορτοφολιών. Καθώς το Ethereum επιτρέπει τον έλεγχο πορτοφολιών από άλλα πορτοφόλια, θα βρείτε επίσης λειτουργίες που ορίζουν ένα πορτοφόλι στόχο και επιτρέπουν το υπόλοιπο για μεταφορά και έγκριση μιας συναλλαγής. Αποθηκεύστε το σε ξεχωριστό αρχείο.

Ήρθε η ώρα να περιγράψουμε το δικό μας διακριτικό. Ξεκινήστε με τις προδιαγραφές της έκδοσης του Solidity. Στη συνέχεια, εισαγάγετε τη διεπαφή και επισυνάψτε την σε ένα νέο έξυπνο συμβόλαιο μέσω «is». Προχωρώντας περαιτέρω:

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

  • Δεύτερον, θα καθορίσουμε τη συνολική προσφορά. Στην περίπτωση αυτού του σεμιναρίου, θα είναι σταθερό και ίσο με ένα δισεκατομμύριο.

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

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

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

Διακριτικό UTD ERC20Εικόνα από U. Σήμερα

Πώς να ξεκινήσετε ένα έξυπνο συμβόλαιο?

Τώρα ξέρετε πώς να κωδικοποιήσετε απλά έξυπνα συμβόλαια για το Solidity. Ας προσπαθήσουμε να κατανοήσουμε πώς μπορούν να κυκλοφορήσουν στο δίκτυο Ethereum. Πρώτον, πρέπει να συντάξουμε τον κώδικα. Για το σκοπό αυτό, μπορείτε είτε να χρησιμοποιήσετε τον ενσωματωμένο μεταγλωττιστή του Remix είτε να το κάνετε στον υπολογιστή σας με τη βοήθεια του Truffle framework. Ας ξεκινήσουμε πρώτα την εύκολη διαδρομή.

Προτού ξεκινήσουμε, είναι απαραίτητο να δημιουργήσετε έναν λογαριασμό Ethereum εάν δεν το έχετε κάνει μέχρι τώρα. Για αυτό, σας προτείνουμε να χρησιμοποιήσετε την επέκταση Metamask η οποία μπορεί να εγκατασταθεί σε προγράμματα περιήγησης Chrome, Opera, Firefox και Brave. Μόλις δημιουργήσετε ένα πορτοφόλι, βεβαιωθείτε ότι έχετε αποθηκεύσει τη φράση σπόρου, επειδή θα είναι ο μόνος τρόπος πρόσβασης σε ένα πορτοφόλι από άλλα μηχανήματα ή σε περίπτωση που πρέπει να εγκαταστήσετε ξανά την επέκταση. Το πλεονέκτημα του Metamask είναι ότι μπορείτε να κάνετε εναλλαγή μεταξύ διαφόρων δικτύων. Αυτό θα είναι χρήσιμο καθώς πρόκειται να χρησιμοποιήσουμε ένα δοκιμαστικό δίκτυο για τα πειράματά μας. Ανοίξτε την επέκταση και επιλέξτε Ropsten δίκτυο. Στη συνέχεια, πηγαίνετε στη βρύση και ζητήστε λίγο ETH, θυμηθείτε ότι κάθε λειτουργία με το EVM κοστίζει Wei.

Ανοίξτε το remix.ethereum.org. Θα δείτε έναν κωδικό για την ψηφοφορία – κλείστε την καρτέλα μαζί του. Το Remix έχει ένα ειδικό πρόγραμμα περιήγησης για αρχεία .ol και έναν ενσωματωμένο μεταγλωττιστή. Στο επάνω μέρος του προγράμματος περιήγησης, υπάρχει ένα σταυρό εικονίδιο που επιτρέπει τη δημιουργία νέων αρχείων. Ας δημιουργήσουμε ένα αρχείο και αντιγράψτε το πρώτο μας έξυπνο συμβόλαιο με οχήματα και ιπποδύναμη τους. Στο δεξί μέρος της οθόνης, θα δείτε τον μεταγλωττιστή με μερικές καρτέλες. Στην πρώτη καρτέλα επιλέξτε μια έκδοση μεταγλωττιστή που αντιστοιχεί στην έκδοση του Solidity που καθορίσατε και ξεκινήστε τη διαδικασία σύνταξης. Εάν δεν υπάρχουν σφάλματα, θα εμφανιστεί ένα μήνυμα «επιτυχίας». Επιλέξτε τη δεύτερη καρτέλα και θα δείτε μια ενότητα όπου θα πρέπει να καθορίσετε ένα κατάλληλο περιβάλλον (στην περίπτωσή μας Web3) και να ελέγξετε ότι η διεύθυνσή σας είναι σωστή (θα πρέπει να κατέβει από το Metamask). Εάν τα πάντα είναι σωστά, πατήστε «ανάπτυξη» και θα λάβετε ένα αναδυόμενο παράθυρο από το Metamask με μια συναλλαγή. Επιβεβαιώστε το και voila, το έξυπνο συμβόλαιό σας έχει αναπτυχθεί στο δίκτυο.

Τώρα σε κάτι πιο ενδιαφέρον. Εάν χρησιμοποιήσατε ένα πρόγραμμα επεξεργασίας κειμένου στον υπολογιστή σας για να γράψετε τον κώδικα, μπορείτε να τον αναπτύξετε τοπικά χρησιμοποιώντας το Node.js. Αρχικά, πραγματοποιήστε λήψη από τον επίσημο ιστότοπο ή εγκαταστήστε μέσω γραμμής εντολών (Windows) ή τερματικού (OSX). Στην περίπτωσή μας, θα χρησιμοποιήσουμε το OSX, αλλά η διαδικασία είναι παρόμοια.

Εγκατάσταση Node.js.Εικόνα από U. Σήμερα

Δεύτερον, εγκαταστήστε το Solidity framework Truffle μέσω «εγκατάστασης npm».

Εγκατάσταση τρούφαςΕικόνα από U. Σήμερα

Τρίτον, δημιουργήστε έναν νέο φάκελο και δημιουργήστε ένα repo μέσω της εντολής “init”.

Δημιουργία repo TruffleΕικόνα από U. Σήμερα

Τέταρτον, εγκαταστήστε το HDWalletProvider σε αυτό το repo μέσω του Node.js επίσης.

Εγκατάσταση του HDWalletProviderΕικόνα από U. Σήμερα

Πέμπτον, αντιγράψτε αρχεία με τη διεπαφή ERC20 και το συμβόλαιο διακριτικών σας στο φάκελο «συμβάσεις» στο repo σας. Έκτον, δημιουργήστε το ακόλουθο αρχείο JavaScript στο φάκελο “Μετεγκαταστάσεις” στο repo.

Αρχείο ανάπτυξης JSΕικόνα από U. Σήμερα

Έβδομο, πρέπει να τροποποιήσετε το αρχείο διαμόρφωσης Truffle. Ωστόσο, απαιτείται ένα επιπλέον βήμα πριν το κάνετε. Θα εισαγάγετε το μνημονικό του πορτοφολιού σας (το οποίο αποθηκεύσατε νωρίτερα) και ένα API για το δοκιμαστικό δίκτυο Ropsten. Για να λάβετε το τελευταίο, μεταβείτε στην Infura και καταχωρίστε ένα έργο. Στη σελίδα του έργου, θα δείτε το αναγνωριστικό του. Χρησιμοποιήστε το ως API.

Διαμόρφωση τρούφαςΕικόνα από U. Σήμερα

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

Έξυπνη σύμβαση αναπτύσσεται τοπικάΕικόνα από U. Σήμερα

Τι μπορείτε να κάνετε με ένα έξυπνο συμβόλαιο?

Καλή δουλειά, έχετε αναπτύξει τα πρώτα δύο έξυπνα συμβόλαια. Και τώρα τι? Για αρχάριους, πρέπει να τα επαληθεύσετε και να τα δημοσιεύσετε. Ας τα βρούμε πρώτα σε οποιονδήποτε από τους εξερευνητές μπλοκ του Ethereum. Θα χρησιμοποιούμε Ethercan.

Ο γρηγορότερος τρόπος πρόσβασης στα συμβόλαιά σας είναι μέσω των συναλλαγών από το πορτοφόλι σας. Αποκτήστε πρόσβαση στο Metamask, πατήστε τρεις τελείες και θα σας επιτρέψει να δείτε τον λογαριασμό σας στο Ethercan. Η διεύθυνσή σας έχει τώρα τουλάχιστον μία συναλλαγή για τη δημιουργία συμβολαίου. Πρόσβαση σε μια συναλλαγή, θα βρείτε μια διεύθυνση προορισμού, η οποία είναι ουσιαστικά η διεύθυνση μιας σύμβασης. Μόλις καταλήξετε στη σελίδα του συμβολαίου, θα δείτε μερικές καρτέλες. Μεταβείτε στην καρτέλα «Κωδικός» και προχωρήστε στη σελίδα επαλήθευσης. Εδώ εισαγάγετε όλες τις σχετικές πληροφορίες και πατήστε το κουμπί για να ξεκινήσει η διαδικασία επαλήθευσης.

Επαλήθευση κωδικούΕικόνα από U. Σήμερα

Αφού επαληθεύσετε το πρώτο έξυπνο συμβόλαιο που δημιουργήσαμε, μπορείτε πλέον να αλληλεπιδράσετε με αυτό. Μεταβείτε στην καρτέλα “Σύνταξη σύμβασης” και θα δείτε τα σύμβολα κράτησης θέσης που καθορίσαμε. Ας συνδέσουμε το Etherscan με το Metamask και εισάγουμε το Toyota Soarer και 280 HP. Ανανεώστε τη σελίδα και θα δείτε τα δεδομένα στην ενότητα «Ανάγνωση».

Η έξυπνη σύμβαση λειτουργείΕικόνα από U. Σήμερα

Περίληψη

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

Τα έξυπνα συμβόλαια είναι απλώς προγράμματα, αλλά έχουν διακριτικά χαρακτηριστικά που πρέπει να λαμβάνει υπόψη κάθε προγραμματιστής. Για παράδειγμα, επειδή τα έξυπνα συμβόλαια λειτουργούν πάνω από ένα αποκεντρωμένο VM, τα δεδομένα τους καταγράφονται αμετάβλητα στο blockchain. Ως εκ τούτου, δεν υπάρχει χώρος για λάθη και ο έλεγχος ενός έξυπνου συμβολαίου είναι ζωτικής σημασίας προτού αναπτυχθεί στο Κύριο Δίκτυο. Ένα άλλο χαρακτηριστικό ενός έξυπνου συμβολαίου είναι ότι κάθε ενέργεια γίνεται μέσω συναλλαγών, οι οποίες απαιτούν την επεξεργαστική ισχύ της EVM. Κατά συνέπεια, η ανάπτυξη έξυπνων συμβάσεων και η αλληλεπίδρασή τους κοστίζει χρήματα.

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