Ethereum - solidność do pisania umów
Solidity to język zorientowany obiektowo, opracowany specjalnie do pisania umów. Jest to język wysokiego poziomu, który dziedziczy cechy z C ++, Pythona i JavaScript. Kompilator Solidity kompiluje kod źródłowy do kodu bajtowego, który działa na maszynie wirtualnej Ethereum (EVM).
Aby szybko zrozumieć składnię Solidity, spójrz na przykładowy kod w środowisku IDE.
pragma solidity >=0.4.22 <0.6.0;
contract Ballot {
Pierwsza linia to dyrektywa dla kompilatora. Drugi wiersz rozpoczyna definicję kontraktu. W ramach kontraktu deklarujesz zmienne, takie jak -
address chairperson;
Możesz także zdefiniować struktury, takie jak Proposali utwórz tablicę tych elementów struktury. Sprawdź to w oknie kodu.
Następnie możesz zdefiniować konstruktora, który jest wywoływany w momencie tworzenia wystąpienia kontraktu.
constructor(uint8 _numProposals) public {
Po konstruktorze zdefiniujesz kilka metod, które są metodami kontraktowymi. W przykładowej umowiegiveRightToVote jest jedną z takich metod o następującej składni -
function giveRightToVote(address toVoter) public {
Plik public słowo kluczowe sprawia, że ta metoda jest publicznie wywoływana przez każdego klienta, który ma dostęp do kontraktu.
Podobnie przykładowa umowa definiuje trzy dodatkowe metody o nazwie delegate, vote, i winningProposal. Sprawdź je, aby zrozumieć składnię Solidity. Są to warunki wstępne do napisania własnej umowy. Wyjaśnienie pełnej składni Solidity wykracza poza zakres tego samouczka.