Τι είναι το Solidity και πώς χρησιμοποιείται για την ανάπτυξη έξυπνων συμβάσεων;

Τι είναι το Solidity και πώς χρησιμοποιείται για την ανάπτυξη έξυπνων συμβάσεων;

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





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





πώς μπορώ να αλλάξω τον προεπιλεγμένο μου λογαριασμό Google στο chrome

Τι είναι η στερεότητα;

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





Η στερεότητα είναι παρόμοια με μία από τις πιο κοινές γλώσσες προγραμματισμού, την JavaScript. Μπορεί να θεωρηθεί ως διάλεκτος της JavaScript. Αυτό σημαίνει ότι αν κατανοείτε JavaScript, μπορεί να είναι εύκολο να παραλάβετε το Solidity. Το Solidity έχει επίσης παρόμοια χαρακτηριστικά με τις γλώσσες προγραμματισμού C ++ και Python.

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



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

Η κύρια διαφορά μεταξύ των τύπων τιμών και των τύπων αναφοράς εντοπίζεται στον τρόπο με τον οποίο εκχωρούνται σε μια μεταβλητή και αποθηκεύονται στο EVM (Ethereum Virtual Machine). Ενώ η αλλαγή της τιμής σε μια μεταβλητή ενός τύπου τιμής δεν επηρεάζει την τιμή σε μια άλλη μεταβλητή, οποιοσδήποτε αναφέρεται σε μεταβλητές τιμές σε μεταβλητές τύπου αναφοράς μπορεί να λάβει ενημερωμένες τιμές.





Πώς λειτουργεί το Solidity;

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

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





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

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

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

Δημόσιες και ιδιωτικές λειτουργίες

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

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

Σχετικά: Τι είναι το Blockchain και πώς λειτουργεί;

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

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

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

Πρότυπα και λογική κώδικα

Εμφανίζονται διαφορετικά πρότυπα που καθορίζουν τον τρόπο με τον οποίο τα έξυπνα συμβόλαια Solidity χρησιμοποιούνται για τη δημιουργία εφαρμογών στο Ethereum. Αυτά τα πρότυπα είναι γνωστά ως πρότυπα ERC (Ethereum Request for Comments). Τα πρότυπα βασίζονται σε ένα έγγραφο που περιέχει οδηγίες σχετικά με τις απαιτούμενες λειτουργίες και περιορισμούς σχετικά με τον τρόπο συμπεριφοράς του κώδικα.

Τα πρότυπα ERC που καθορίζουν τον τρόπο λειτουργίας του Solidity περιλαμβάνουν:

  • ERC20
  • ERC165
  • ERC721
  • ERC223
  • ERC621
  • ERC777
  • ERC827
  • ERC884
  • ERC865
  • ERC1155

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

Αμετάβλητο

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

Σχετικά: Πώς να γίνετε προγραμματιστής Blockchain και να ξεκινήσετε να κάνετε μεγάλα κέρδη

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

πώς να επιταχύνετε τη λήψη του xbox

Κόστος αερίου

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

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

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

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

Πώς μπορεί να χρησιμοποιηθεί η στερεότητα στο Ethereum;

Η στερεότητα χρησιμοποιείται για τη δημιουργία έξυπνων συμβάσεων για διακριτά μυστικά και μη διακριτικά μάρκες. Διαφορετικά πρότυπα χρησιμοποιούνται για τη δημιουργία μη-ανεπιθύμητων μαρκών και διακριτικών μαρκών στο οικοσύστημα Ethereum.

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

Οι αποκεντρωμένες αυτόνομες οργανώσεις (DAO) καθίστανται επίσης δυνατές μέσω της Solidity. Ένα DAO, το οποίο είναι ένας νέος τύπος διαδικτυακής οργανωτικής δομής, είναι γραμμένο κυρίως στο Solidity. Οι DAO επιτρέπουν σε διαφορετικά άτομα να συγκεντρωθούν ως μέλη σε μια διαδικτυακή πλατφόρμα όπου ψηφίζουν τις βασικές αποφάσεις της DAO.

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

Καθορισμός προτύπων για Blockchains

Η σταθερότητα είναι πολύ περισσότερο από μια γλώσσα προγραμματισμού. Καθορίζει πρότυπα για το μέλλον της τεχνολογίας blockchain.

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

Μερίδιο Μερίδιο Τιτίβισμα ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ Είναι δυνατό ένα πραγματικά αποκεντρωμένο Διαδίκτυο; Πώς θα μπορούσε να λειτουργήσει με το Blockchain

Είναι δυνατό ένα πραγματικά αποκεντρωμένο Διαδίκτυο; Τι σημαίνει αποκέντρωση και πώς θα σας κρατούσε ασφαλή;

Διαβάστε Επόμενο
Σχετικά θέματα
  • Η τεχνολογία εξηγείται
  • Προγραμματισμός
  • Ethereum
  • Blockchain
Σχετικά με τον Συγγραφέα Calvin Ebun-Amu(Δημοσιεύθηκαν 48 άρθρα)

Ο Calvin είναι συγγραφέας στο MakeUseOf. Όταν δεν παρακολουθεί τον Rick and Morty ή τις αγαπημένες του αθλητικές ομάδες, ο Calvin γράφει για νεοσύστατες εταιρείες, blockchain, κυβερνοασφάλεια και άλλα πεδία της τεχνολογίας.

Περισσότερα από τον Calvin Ebun-Amu

Εγγραφείτε στο newsletter μας

Εγγραφείτε στο ενημερωτικό μας δελτίο για τεχνικές συμβουλές, κριτικές, δωρεάν ebooks και αποκλειστικές προσφορές!

Κάντε κλικ εδώ για εγγραφή