Sidan uppdaterades senast: mar 06, 2020

Utvecklarresurser

Komma igång

Om du är ny på att utveckla med Ethereum, är du på rätt plats. Dessa guider skrivna av Ethereum-gemenskapen kommer att introducera dig till grunderna i Ethereum-stacken och introducera kärnkoncept som kan skilja sig från någon annan apputveckling du är bekant med.

Vill du börja koda på en gång? Börja här.

Behöver du en mer grundläggande introduktion först? Ta en titt på våra inlärningsresurser.

Hjälpsamma resurser

Smarta kontaktspråk

Alla program som körs på Ethereum Virtual Machine (EVM) benämns vanligtvis ett ”smart kontrakt”. De mest populära språken för att skriva smarta kontrakt på Ethereum är Solidity och Vyper, även om det finns andra under utveckling.

Solidity - Det populäraste språket för Ethereum, inspirerat av C ++, Python och Javascript.

Vyper - Säkerhetsfokuserat språk för Ethereum, baserat på Python.

Letar du efter andra alternativ?

Språkspecifikt material

Vi bygger en svit med språkspecifika sidor som utvecklare kan använda sig av för att lära sig om Ethereum i deras föredragna programmeringsspråk.

Utvecklarverktyg

Ethereum har ett stort och växande antal verktyg som hjälper utvecklare att bygga, testa och distribuera sina appar. Nedan finns de mest populära verktygen för att komma igång. Om du vill dyka djupare kan du ta en titt i den här omfattande listan.

Ramverk

Truffle - En utvecklingsmiljö, testramverk, bygger pipeline och andra verktyg.

Embark - En utvecklingsmiljö, testramverk och andra verktyg som är integrerade med Ethereum, IPFS och Whisper.

Waffle - Ett ramverk för utveckling och testning av avancerade smartkontrakt (baserat på ethers.js).

Etherlime - Ethers.js-baserat ramverk för dapp-utveckling (Solidity & Vyper), distribution, felsökning, testning med mera.

Andra verktyg

Ethereum Grid - En skrivbordsapp för att ladda ned, konfigurera och köra Ethereum-klienter och verktyg.

Buidler - En uppgiftskörare för utvecklare av Ethereums smarta kontrakt.

OpenZeppelin SDK - De ultimata verktygen för smarta kontrakt: Ett antal verktyg som hjälper dig utveckla, kompilera, uppgradera, distribuera och interagera med smarta kontrakt.

The Graph - Ett protokoll för att indexera Ethereum- och IPFS-data och avfråga det med GraphQL.

Tenderly - En plattform för att enkelt övervaka din smarta kontrakt med felspårning, larm, prestandavärden och detaljerad kontraktsanalys.

Python Tooling - Ett antal bibliotek för Ethereum-interaktion via Python.

Brownie - Python-baserad utvecklingsmiljö och testramverk.

web3j - Ett Java/Android/Kotlin/Scala-integrationsbibliotek för Ethereum.

One Click Dapp - Generera en klientdel direkt från ABI för snabb utveckling och testning.

Letar du efter andra alternativ?

Integrerade utvecklingsmiljöer (IDEs)

Ethereum Studio - Webbaserad IDE som är idealisk för nya utvecklare som vill experimentera med smarta kontrakt. Ethereum Studio har flera mallar, MetaMask-integration, transaktionslogg och en inbyggd webbläsare, Ethereum Virtual Machine (EVM), som hjälper dig komma igång med att bygga på Ethereum så fort som möjligt.

Visual Studio Code - Professionell flerplattforms-IDE med officiell Ethereum-support.

Remix - Webbaserad IDE med inbyggd statisk analys och en virtuell maskin för testblockkedjor.

EthFiddle - Webbaserad IDE som låter dig skriva, kompilera och felsöka ditt smarta kontrakt.

Letar du efter andra alternativ?

Klientdels Javascript APIs

Web3.js - Ethereum JavaScript API.

Ethers.js - Fullständig Ethereum-plånboksimplementering och verktyg i JavaScript och TypeScript

light.js - Ett reaktivt JS-bibliotek på hög nivå optimerat för lätta kunder

Web3-wrapper - Typescript-alternativ till Web3.js.

Letar du efter andra alternativ?

Serverdel-API:er

Infura - Ethereum API som en service.

Cloudflare Ethereum Gateway.

Nodesmith - JSON-RPC API-tillgång till Ethereum huvudnät och testnät.

Chainstack - Delade och dedikerade Ethereum-noder som en service.

Lagring

IPFS - InterPlanetary File System är ett decentraliserat lagrings- och filreferenssystem för Ethereum.

Swarm - En distribuerad lagringsplattform och innehållsdistributionstjänst för Ethereum web3-stack.

OrbitDB - En decentraliserad peer-to-peer-databas ovanpå IPFS.

Säkerhetsverktyg

Säkerhet för smarta kontrakt

Slither - Statiskt analysramverk för Solidity, skrivet i Python 3.

MythX - Säkerhetsanalys-API för Ethereum smarta kontrakt.

Mythril - Säkerhetsanalysverktyg för EVM bytecode.

SmartContract.Codes - Sökmotor för verifierade källkoder för soliditet.

Manticore - Ett kommandoradsgränssnitt som använder ett symboliskt körningsverktyg på smarta kontrakt och binärfiler.

Securify - Säkerhetsskanner för Ethereum smarta kontrakt.

ERC20 Verifier - Ett verifieringsverktyg som används för att kontrollera om ett kontrakt uppfyller ERC20-standarden.

Formell verifiering

Information om formell verifiering

Letar du efter andra alternativ?

Testverktyg

Solidity-Coverage - Alternativt verktyg för kodtäckning av Solidity-kod.

hevm - Implementering av EVM som framtagits specifikt för enhetstester och felsökning av smarta kontrakt.

Whiteblock Genesis - En end-to-end-utvecklingssandlåda och testplattform för blockkedja.

Letar du efter andra alternativ?

Blockutforskare

Blockutforskare är tjänster som låter dig bläddra i Ethereum blockchain (och dess testnät), genom att hitta information om specifika transaktioner, block, kontrakt och annan aktivitet i kedjan.

Testnät och kranar

Ethereum-gemenskapen upprätthåller flera testnät. Dessa används av utvecklare för att testa sina program under olika förhållanden innan de implementeras på Ethereum-huvudnätet.

Ropsten - Proof of Work-blockchain, test-ether kan utvinnas.

Rinkeby - Proof of Authority-blockchain, underhållen av Geth utvecklingsteam.

Goerli - Flerklients Proof of Authority-blockchain, skapad och underhållen av Goerli-gemenskapen

Klienter och Kör din egen nod

Ethereum-nätverket består av många noder, som alla kör kompatibel klientprogramvara. Majoriteten av de här noderna kör Geth eller Parity, som var och en kan konfigureras på olika sätt beroende på dina behov.

Klienter

Geth - Ethereum-klienter skrivna i Go.

Parity - Ethereum-klient skriven i Rust.

Pantheon - Ethereum-klient skriven i Java.

Nethermind- Ethereum-klient skriven i C# .NET Core.

Kör din egen nod

Ethnode - Kör en Ethereum-nod (Geth eller Parity) för lokal utveckling.

Nodresurser för Ethereum

Letar du efter andra alternativ?

Bästa praxis, mönster och anti-mönster

Smarta kontrakt

DappSys - Säkra, enkla, flexibla byggstenar för smarta kontrakt.

OpenZeppelin-kontrakt - Bibliotek för säker utveckling av smarta kontrakt.

aragonOS - Mönster för uppgraderings- och behörighetskontroll.

Svaghetsregister för smarta kontrakt

Säkerhet

Bästa säkerhetspraxis-guide för smarta kontrakt

Standard för säkerhetsverifikation av smarta kontrakt (SCSVS)

Letar du efter andra alternativ?

Utvecklarsupport och Utbildning

Allmänt lärande

Ethereum Stackexchange

ConsenSys Academy - En omfattande Ethereum utvecklarkurs som du gör i din egen takt, och som är öppen året runt.

Solidity Gitter Chatroom

Alla Ethereum Gitter-chattrum

Chainshot - Webbaserade handledningar för dappkodning.

Blocknördar - Onlinekurser om blockchain-teknik.

DappUniversity - Lär dig att bygga decentraliserade program på Ethereum-blockchain.

B9lab Academy - Hem för den äldsta professionella Ethereum dapp-utvecklarkursen och ytterligare lärande för granskare och QA. Inkl. mentorskap och kodgranskning.

Spelbaserat lärande

Cryptozombies - Lär dig att koda spel på ethereum.

Ethernaut - Solidity-baserat krigsspel där varje nivå är ett kontrakt som ska hackas.

Capture the Ether - Ethereum-spel om smart kontraktssäkerhet.

UI/UX design

Rimble UI - Anpassningsbara komponenter och designstandarder för decentraliserade program.

Standarder

Ethereum-gemenskapen har antagit många standarder som är till hjälp för utvecklare. Vanligtvis introduceras de som Ethereum Improvement Proposals (EIPs), som diskuteras av gemenskapsmedlemmar genom en standardprocess.

Vissa EIPs avser standarder på tillämpningsnivå (t.ex. ett standardformat för smarta kontrakt), som införs som Ethereum Requests for Comment (ERC). Många ERC: er är kritiska standarder som används i stor utsträckning i Ethereums ekosystem.