Solidity to język programowania używany przez inteligentne kontrakty na blockchainie Ethereum. Jest to statyczny, zorientowany obiektowo język programowania.
Solidity używa semantycznego schematu wersjonowania, a w chwili pisania tego artykułu najnowsza wersja to 0.8.9. Jak ty widać, język używa semantycznego formatu wersjonowania X.Y.Z, który wskazuje, jak szybkie tempo jego zmian są.
Języki programowania, takie jak C++ i JavaScript, zainspirowały język Solidity. W tym przewodniku dowiesz się, jak napisać i skompilować swój pierwszy inteligentny kontrakt.
Edytor remiksów
Istnieje wiele edytorów tekstu i kompilatorów, których można użyć do napisania kodu Solidity, ale najłatwiej jest Remiks. Remix to internetowe IDE, które umożliwia pisanie i debugowanie kodu Solidity. Kiedy po raz pierwszy odwiedzasz Remix, powinieneś zobaczyć stronę docelową podobną do poniższej.
Pisanie pierwszej inteligentnej umowy
Najpierw kliknij Utwórz nowy plik ikonę na karcie Eksploratory plików. Ikona wygląda jak kartka papieru z zagiętym rogiem. Nazwij nowy plik
helloWorld.sol. Użyj .sol rozszerzenie, aby pokazać, że plik zawiera kod Solidity.Możesz teraz skopiować poniższy kod do nowego pliku. Poniżej znajduje się wyjaśnienie dla każdej linii.
// SPDX-Identyfikator licencji: GPL-3.0
pragma solidność ^0,8.1;
umowa pierwsza umowa {
uint zm1;
zestaw funkcji (uint x) public {
zm1 = x;
}
function get() widok publiczny zwraca (uint) {
zwróć zm1;
}
}
Pierwsza linia pokazuje licencję, na podstawie której ktoś może używać i rozpowszechniać oprogramowanie. Kod w powyższym przykładzie używa GPL w wersji 3.0. Możesz ją zastąpić dowolną inną licencją, taką jak Licencja MIT.
Druga linia pokazuje a pragma dyrektywa, która mówi kompilatorowi, aby używał dowolnej wersji Solidity od 0.8.1 do 0.9.0, ale nie zawiera 0.9.0. To znaczy >= 0,8,1 do <0,9.
Ważne jest również uwzględnienie tego wiersza, aby uniknąć niezgodności między kodem a wersją kompilatora.
Związane z: Co to jest solidność i jak jest wykorzystywana do opracowywania inteligentnych kontraktów?
Zwykle są drobne zmiany lub poprawki w x.y.Z wersje. Przełamujące zmiany są zwykle obecne w x.Takwersje .z. Dlatego pragma dyrektywa nie zawiera wersji 0.9.0 w powyższym kodzie.
Solidność jest językiem zorientowanym obiektowo. ten kontrakt słowo kluczowe w wierszu czwartym jest podobne w użyciu do klasa słowo kluczowe w innych językach obiektowych.
Kontrakty mogą zawierać funkcje, zmienne stanu i inne zaawansowane typy. Umowa Pierwsza umowa zawiera liczbę całkowitą bez znaku (jednostka) nazywa zmienna1.
Dwie funkcje nazwane ustawić() oraz dostwać() są odpowiednio funkcjami ustawiającymi i pobierającymi dla zmiennej zmienna1. Możesz zdefiniować funkcję za pomocą słowa kluczowego funkcjonować po którym następuje nazwa funkcji i nawiasy.
W nawiasach możesz zadeklarować parametry, które przyjmie Twoja funkcja. Należy je pisać podobnie do definicji zmiennych: należy podać typ danych, a następnie nazwę parametru.
Związane z: Co to jest Monero i jak chroni Twoją prywatność?
Zauważ, że definicje ustawić() oraz dostwać() funkcje zawierają słowo kluczowe publiczny. To deklaruje, że każdy inny kontrakt może je wywołać.
Kompiluj i wdrażaj
Aby skompilować kod, kliknij Kompilator solidności przycisk. Po najechaniu kursorem na przyciski po lewej stronie edytora powinieneś zobaczyć nazwę przycisku.
Teraz kliknij przycisk z napisem Skompiluj helloWorld.sol. Jeśli kompilator nie napotka żadnych błędów, oznacza to, że pomyślnie skompilowałeś swój pierwszy inteligentny kontrakt.
Aby wdrożyć swój kod, kliknij Wdrażaj i uruchamiaj transakcje przycisk. Ten przycisk znajduje się tuż pod Kompilator solidności w menu po lewej stronie. Na tej stronie upewnij się, że nazwa Twojej umowy wyświetla się poprawnie nad Wdrożyć przycisk.
Po potwierdzeniu możesz teraz kliknąć Wdrożyć uruchomić kod w bieżącej lokalnej sieci testowej, bez opłat transakcyjnych.
Tworzenie aplikacji DApp w sieci Ethereum
Po nauczeniu się, jak tworzyć inteligentne kontrakty, następnym przystankiem powinna być nauka tworzenia zdecentralizowanych aplikacji (DApps). Są to aplikacje oparte na blockchain, które działają w sieci bez uprawnień. Na tym polega piękno inteligentnych kontraktów Ethereum.
Będziesz mieć możliwość tworzenia potężnych aplikacji P2P w Ethereum.
Marzysz o byciu kolejnym Vitalikiem Buterinem? To jest punkt wyjścia, którego potrzebujesz.
Czytaj dalej
- Programowanie
- Programowanie
- Ethereum
- Blockchain
Jerome jest pisarzem sztabowym w MakeUseOf. Zajmuje się artykułami na temat programowania i systemu Linux. Jest także entuzjastą kryptowalut i zawsze śledzi branżę kryptograficzną.
Zapisz się do naszego newslettera
Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Kliknij tutaj, aby zasubskrybować