Hypen kring blockkedjeteknologi, känt som blockchain är praktiskt taget oundviklig nuförtiden – och oavsett om du är helt med på decentraliserade mjukvarans etos eller förblir skeptisk om Web3 kanske du undrar vilken typ av tekniska färdigheter och programmeringsspråk som kommer att vara värdefulla i det nya ”vilda västern” på internet.
De goda nyheterna är många kodningsspråk som du redan vet kan användas i blockkedjeutveckling (mer om det senare). Och även de nyare språken som är specifika för smarta kontrakt, de väsentliga byggstenarna i den programmerbara blockkedjan, är relativt lätta att plocka upp om du har lite grundläggande kodningskunskaper.
Men innan du börjar lära dig ett språk bör du göra lite research och bestämma vilken blockchain-plattform som intresserar dig mest. Det finns massor av dem just nu, vilket är lite överväldigande. Och de hävdar alla att de gör olika saker på bästa sättet.
Till exempel kanske ditt Twitter-flöde är fullt av Ethereum-nyheter, eller så ser du hela tiden jobbannonser för Web3-utvecklare som känner till Solana. När du väl har avgränsat vilken blockchain-plattform du ska fokusera på kan du gräva in och se de specifika programmeringsspråken de använder.
Här är de programmeringsspråk som används mest i blockchain-utveckling, och vad du behöver veta om vart och ett av dem.
Solidity
Solidity är det vanligaste språket för att skriva och distribuera smarta kontrakt på Ethereum-kedjan. Det är ett statiskt skrivet programmeringsspråk med lockiga hängslen som har välbekanta funktioner som du kanske känner igen från andra språk.
Solidity ser ganska hög nivå ut men är fortfarande väldigt nära. Samtidigt förstår personer med viss bakgrund i programmering vanligtvis vad Solidity-kod handlar om.
Soliditys huvudsakliga influenser är JavaScript, C++ och Python. Om du har en god förståelse för dessa språk, är det relativt enkelt att lära sig Solidity.
C++
Känd för sin snabbhet och effektivitet, C++ är ett kraftfullt objektorienterat programmeringsspråk som ofta kommer upp i Web3. Bitcoin skrevs i C++, vilket C++-skaparen Bjarne Stroustrup inte var förtjust i.) C++ kan användas för smart kontraktsutveckling på EOS blockchain.
Det finns naturligtvis många andra skäl att lära sig C++ som inte är direkt relaterade till blockkedjan. C++ är ett allmänt bruksspråk som på ett tillförlitligt sätt kan köra stor mjukvaruinfrastruktur och applikationer på få resurser, vilket gör det till det bästa för prestandakritiska applikationer. C++ används för allt från spel till finansiell programvara till AR/VR-applikationer.
Lär dig ett av världens mest använda programmeringsspråk med vår nybörjarvänliga kurs Lär dig C++. Om du redan är bekant med grunderna i kodning eller behöver en C++ syntaxuppfräschning, kolla in vår C++ for Programmers-kurs.
Rust
Rust är konsekvent rankat som det mest älskade programmeringsspråket i Stack Overflows utvecklarundersökning, där 87 % av utvecklarna säger att de vill fortsätta använda det. En anledning till att Rust är älskad är att den är typ- och minnessäker, och dessa säkerhetsfunktioner är varför den är att föredra för blockchain-utveckling. Rust används för att bygga smarta kontrakt på kedjor som Solana och NEAR.
Om du känner till Rust, beroende på vilken blockkedja du väljer att arbeta i, kan du med stor sannolikhet på ett meningsfullt sätt bidra både till själva blockkedjearbetet och även smart kontraktsutveckling.
JavaScript
Goda nyheter för JavaScript-fans: För både Web3 och Web 2.0 är JavaScript det viktigaste att lära sig om du inte redan kan det. Om du från början lärde dig JavaScript för att bygga webbplatser och appar, kan den kunskapen fortfarande tjäna dig i Web3 och blockchain-utrymmet.ännu, har vi massor av JavaScript-kurser på alla nivåer för dig att utforska.)
Låt oss säga att du är en Front- Slutingenjör som bygger en app med JavaScript. Du kan få din applikation att interagera med befintliga smarta kontrakt eller själva blockkedjan utan att behöva lära dig ett annat språk från grunden. NEAR, till exempel, är ett populärt protokoll som är satt upp så att utvecklare kan skriva smarta kontrakt direkt i JavaScript eller Rust. Du kan komma riktigt långt bara med JavaScript och sedan förgrena dig till de andra språken beroende på vad dina mål är och vilken kedja du vill arbeta i.
Clarity
Detta nyare smarta språk är specifika för Stacks blockchain och har några utmärkande egenskaper och skyddsräcken som gör den extra säker.
Till att börja med är Clarity avgörbar, vilket innebär att det finns ett begränsat antal steg för varje inmatning och du vet var koden kommer att sluta. Clarity tillåter inte looping, och det är målmedvetet, så du kan vara säker på att en programkörning kommer att sluta någon gång, vilket eliminerar risken för ett stoppproblem – en värdefull egenskap att ha i en oföränderlig, globalt distribuerad systemet. Språket förbjuder också återinträde, vilket är när ett smart kontrakt ringer in i ett annat och sedan ringer tillbaka till det första kontraktet – en situation som kan utsätta kontrakt för attacker.
En annan anledning till varför du bör överväga att kolla in Clarity? Det finns en efterfrågan på att anställa utvecklare som känner till Clarity. Vi är vid den här konstiga punkten där det inte finns många Clarity-utvecklare, så det råder en viss brist just nu.
Go
Googles statiskt skrivna öppna -källspråket Go (eller ”Golang”) används ofta för utveckling av backend och för att skapa högpresterande applikationer. Geth, förkortning för ”Go-Ethereum”, är en Ethereum-klient som är skriven i Go.
Jämfört med andra språk är Go snabbt och smidigt och låter dig köra flera processer med flera uppgifter utan att offra minnesresurser. Med Go kan du bygga applikationer från dess robusta bibliotek med funktioner och paket.
Python
Många människor är det fans av Pythons engelska-liknande syntax och plattformsoberoende mångsidighet, och det allmänna språket kan också användas för blockchain-utveckling.