Co to jest solidność? Nasz przewodnik po języku inteligentnych kontraktów Ethereum

Solidność

Kiedy myślisz o Ethereum, prawdopodobnie myślisz o jego potężnym systemie inteligentnych kontraktów. Dla tych, którzy nie wiedzą, inteligentne kontrakty to zasadniczo programy istniejące w łańcuchu bloków Ethereum. Wykonują różne zadania, takie jak między innymi wysyłanie lub odbieranie tokenów Ether lub ERC-20.

Jednak możesz nie wiedzieć, w jaki sposób inteligentne kontrakty są faktycznie układane. Podobnie jak wszystkie programy komputerowe, umowy Ethereum są napisane w języku programowania. W tym przypadku ten język jest zwykle nazywany Solidność.

Chociaż istnieją inne języki programowania, które są kompatybilne z inteligentnymi kontraktami, Solidity jest obecnie językiem z wyboru. Więc czytaj dalej, gdy omawiamy niektóre podstawy Solidity i gdzie możesz znaleźć zasoby, jak się go nauczyć.

Solidność

Solidność jako język programowania

Większość profesjonalnych programistów korzysta obecnie z jednego lub więcej z puli popularnych nowoczesnych języków programowania. Kilka przykładów to C (i C ++, C # i tak dalej), Python, Java (i JavaScript), Perl lub kilka innych. Solidity został zaprojektowany tak, aby był łatwy do nauczenia dla programistów, którzy znają już jeden lub więcej nowoczesnych języków programowania.

Jeśli w liceum nauczyłeś się czegoś takiego jak Visual Basic, możesz mieć trudności ze zdobyciem Solidity. Natomiast jeśli znasz język taki jak Python lub C, Solidity wydaje się być stosunkowo znajomy.

Solidity wykorzystuje wiele koncepcji programowania, które istnieją w innych językach. Na przykład Solidity ma zmienne, funkcje, klasy, operacje arytmetyczne, operacje na łańcuchach i tak dalej. Podczas gdy w języku takim jak C programista prawdopodobnie utworzyłby jakąś formę funkcji „głównej”, np. „Int main (arg1, arg2) {// code}”, Solidity działa z „kontraktem”, który jest tworzony w podobny sposób sposób.

Kod solidności

Jak widać, kod Solidity wygląda zaskakująco podobnie do C ++, C # czy JavaScript. Programiści Pythona zauważą, że w Solidity zmienne wymagają między innymi deklaracji typu wprost.

Solidność jest wciąż całkiem nowa i ma ograniczone zasoby edukacyjne

Zwykle, chcąc nauczyć się nowego języka programowania, można kupić jedną z wielu dostępnych książek na ten temat. Na przykład, jeśli chcesz nauczyć się języka JavaScript, dostępne są dziesiątki lub setki książek, które mogą zapewnić niezbędne samodzielne szkolenie.

Ponieważ Solidity jest wciąż całkiem nowy, dostępnych jest tylko kilka książek, a format Opinie dla nich na Amazon.com wydają się być dość mieszane, jeśli nie wręcz negatywne.

Solidity oferuje dość obszerną dokumentację dotyczącą działania kodu. Jednak dla kogoś, kto jest zupełnie nowy w języku i nie jest jeszcze głównym programistą, zanurzenie się bezpośrednio w dokumentacji może być bardzo zniechęcające, jeśli nie prawie niemożliwe dla większości.

Idealnie byłoby, gdyby dokumentacja była używana bardziej jako odniesienie, w taki sam sposób, w jaki ktoś używa słownika do wyszukiwania słowa. Ale nikt nie czytałby słownika od deski do deski, próbując nauczyć się języka mówionego.

Jeśli jednak ktoś jest wystarczająco oddany i cierpliwy, może potencjalnie wykorzystać dostępną dokumentację do nauki Solidity bez rozległego zaplecza programistycznego. Z pewnością nie byłoby to jednak łatwe.

Szkolenia i kursy solidności

Dla tych, którzy mają podstawowe doświadczenie w programowaniu, jedną fajną opcją, aby zmoczyć stopy z programowaniem Solidity może być Crypto Zombies. Ta strona jest bardzo podobna do Codecademy, w którym dostajesz krótkie zadanie programistyczne i wykonujesz je bezpośrednio w przeglądarce, gdzie jest natychmiast sprawdzane. Jednak tematem Crypto Zombies jest tworzenie gry zombie za pomocą Solidity.

Wypróbowaliśmy pierwszy rozdział, który zajął niecałe dwie godziny. Było to dość trudne, ale przy wytrwałości i ostrożności można to zrobić. Jednak cały kurs nie jest jeszcze ukończony.

Twórcy zapowiedzieli, że nowe lekcje będą udostępniane co kilka tygodni. Po ukończeniu wszystkich lekcji wynikiem powinna być pełna gra wykonana w Solidity.

Crypto Zombies

Chociaż prawdopodobnie nie wystarczy, aby naprawdę uczynić kogoś profesjonalistą Solidity, Crypto Zombies zapewnia doskonałe wprowadzenie do wielu podstawowych koncepcji programowania inteligentnych kontraktów i składni Solidity.

Jeśli nie masz jeszcze doświadczenia w programowaniu, możesz wziąć udział w darmowym kursie na Codecademy. Znajomość podstaw Pythona lub JavaScript byłaby wystarczająca dla Crypto Zombies.

Dla bardziej zaawansowanych uczniów, którzy chcą wskoczyć od razu do podstaw, Block Geeks ma świetny, darmowy kierunek na swojej stronie internetowej.

Płatne szkolenia i certyfikaty online Solidity

W ostatnich latach pojawiło się kilka witryn oferujących płatne szkolenia z różnych dziedzin technologii. Przykładem tego jest BitDegree która ma być platformą edukacyjną zweryfikowaną za pomocą technologii blockchain, na której potencjalni studenci mogą uczyć się umiejętności technologicznych poprzez kursy online.

Po ukończeniu kursów otrzymają rodzaj stopnia online, który jest zarejestrowany na łańcuchu bloków Ethereum w celu weryfikacji. BitDegree wystartował na początku tego roku i oferuje kurs Solidity za jedyne 9,99 $.

Kurs solidności

Inną opcją dla niektórych jest udemy.com, witryna oferująca szkolenia online oparte na wideo. Ta strona oferuje obecnie solidność kierunek za 200 dolarów, chociaż wydaje się, że bardzo często, jeśli nie zawsze, jest on przeceniony o 90 lub więcej procent.

Inną opcję, która może być bardziej intensywna (i droższa) oferuje B9LAB.com. Oferują to, co nazywają certyfikowanym programistą online Ethereum kierunek. Ten kurs będzie wymagał dziewięciu tygodni od 6 do 10 godzin tygodniowo. Kosztuje również 1450 euro, czyli około 1750 dolarów. Oferują również bezpłatne Ethereum 101 kurs, abyś mógł przetestować ich metodę nauczania i sprawdzić, czy pasuje do Twojego stylu uczenia się.

Czy warto nauczyć się solidności?

Jeśli myślisz o nauce Solidity w swojej pracy, możesz rozważyć, jakich innych umiejętności będziesz również potrzebować. Chociaż nauka umiejętności związanych z blockchainem może być bardzo cenna, prawdopodobnie trzeba by najpierw zostać ekspertem w co najmniej jednym innym języku programowania. Na przykład to oferta pracy dla programisty Solidity w Bounty0x wymaga, aby każdy kandydat nie tylko rozumiał Solidity, ale także Truffle, NodeJS i GoLang.

Jeśli czujesz się pewnie, poświęcając kilka lat swojego życia na naukę Solidity, spróbuj. Jest całkiem możliwe, że będziesz miał stabilną karierę przez wiele lat.

Oprócz Solidity istnieje Serpent, który jest oparty na Pythonie. Ponieważ Python jest bardzo prostym i łatwym do zrozumienia językiem, w przyszłości może być łatwiejszy do nauczenia. I nie tylko Solidity lub Serpent mogą być używane na Ethereum, umiejętności te mogą natychmiast przełożyć się na przydatne umiejętności kodowania na RSK i Ethereum Classic, dwóch innych konkurencyjnych platformach inteligentnych kontraktów.

Na razie jednak Solidity jest królem. Dobre zrozumienie Solidity będzie bardzo przydatne podczas nauki innych języków inteligentnych kontraktów w przyszłości.

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