Padėkite atnaujinti šį puslapį

🌏

Jau yra nauja šio puslapio versija, bet kol kas tik anglų kalba. Padėkite mums išversti naujausią versiją.

Puslapis paskutinį kartą atnaujintas: December 17, 2020

Ištekliai kūrėjams

Įvadas

Jei norite pradėti programuoti su Ethereum, esate tinkamoje vietoje. Šie vadovai, parašyti Ethereum bendruomenės, supažindins su Ethereum pagrindais ir kertiniais programų kūrimo principais, kurie gali skirtis nuo kitų jums jau žinomų.

Norite pradėti programuoti tuoj pat? Pradėkite čia.

Norėtumėte pradėti nuo ko nors paprastesnio? Susipažinkite su mūsų mokymosi ištekliais.

Naudingi ištekliai

Išmaniųjų sutarčių kalbos

Bet kuri programa, kuri veikia Ethereum virtualiojoje mašinoje (EVM), dažnai vadinama „išmaniąja sutartimi“. Populiariausios išmaniųjų sutarčių rašymo kalbos Ethereum platformoje yra Solidity ir Vyper, tačiau kuriamos ir kitos.

Solidity – pati populiariausia kalba naudojant Ethereum, paremta C++, Python ir JavaScript.

Vyper – į saugumą orientuota Ethereum kalba, paremta Python.

Ieškote alternatyvų?

Su konkrečia kalba susiję ištekliai

Kuriame tam tikrų kalbų nukreipimo puslapių komplektą kūrėjams, norintiems išmokti apie Ethereum jų pasirinkta programavimo kalba.

Kūrėjo įrankiai

Ethereum rasite vis daugiau įrankių, kuriuos naudodami galėsite kurti, testuoti ir diegti savo programas. Žemiau pateikti populiariausi įrankiai, su kuriais galite pradėti darbą. Jei ieškote išsamesnės informacijos, žvilgelėkite į šį išsamų sąrašą.

Sistemos

Truffle – kūrimo aplinka, testavimo ir segmentacijos sistemos ir kiti įrankiai.

Embark – kūrimo aplinka, testavimo sistema ir kiti įrankiai, integruoti Ethereum, IPFS ir Whisper.

Waffle – pažangių išmaniųjų sutarčių kūrimo ir testavimo (pagal ethers.js) sistema.

Etherlime – dApp kūrimo (Solidity ir Vyper), diegimo, riktų šalinimo, testavimo ir kt. sistema, paremta ethers.js.

Kiti įrankiai

Ethereum Grid – darbalaukio programa, skirta atsisiųsti, konfigūruoti ir paleisti Ethereum klientus ir įrankius.

Buidler – užduočių valdyklė Ethereum išmaniųjų sutarčių kūrėjams.

OpenZeppelin SDK – didžiausias išmaniųjų sutarčių programuotojo paketas: įrankių komplektas, skirtas kurti, kaupti, gerinti, diegti ir sąveikauti su išmaniosiomis sutartimis.

The Graph – protokolas, skirtas indeksuoti Ethereum ir IPFS duomenis ir teikti užklausas naudojant GraphQL.

Tenderly – platforma, kurioje galima lengvai stebėti savo išmaniąsias sutartis. Apima klaidų sekimą, įspėjimus, našumo parametrus ir išsamią sutarčių analitiką.

Python Tooling – įvairios bibliotekos Ethereum sąveikai naudojant Python.

Brownie – Python paremta kūrimo aplinka ir testavimo sistema.

web3j – Java/Android/Kotlin/Scala integracijos biblioteka, skirta Ethereum.

One Click Dapp – frontend generavimas tiesiogiai iš programos dvejetainės sąsajos (ABI) greitam kūrimui ir testavimui.

Ieškote alternatyvų?

Integruotos kūrimo aplinkos (IDE)

Ethereum Studio – internetinė integruota kūrimo aplinka (IDE), idealiai tinkanti naujiems kūrėjams, norintiems eksperimentuoti su išmaniosiomis sutartimis. Ethereum Studio apima keletą šablonų, MetaMask integraciją, sandorių registratorių ir naršyklėje integruotą Ethereum virtualią mašiną (EVM) – visa tai leis jums greitai pradėti kurti Ethereum platformoje.

Visual Studio Code – profesionali integruota kūrimo aplinka, kurią galima naudoti tarp skirtingų platformų, su oficialiu Ethereum palaikymu.

Remix – internetinė integruota kūrimo aplinka su integruota statine analize ir bandomoji blokų grandinės virtuali mašina.

EthFiddle – internetinė integruota kūrimo aplinka, kurioje galima rašyti ir kaupti išmaniąsias sutartis bei iš jų šalinti riktus.

Ieškote alternatyvų?

Frontend JavaScript programų sąsajos (API)

Web3.js – Ethereum JavaScript programų sąsaja.

Ethers.js – pilnas Ethereum piniginės įdiegimas ir parankinės priemonės, skirtos JavaScript ir TypeScript.

light.js – aukšto lygio reaktyvi JavaScript biblioteka, pritaikyta lengviems klientams.

Web3-wrapper – TypeScript alternatyva Web3.js.

Ieškote alternatyvų?

Backend programų sąsajos

Infura – Ethereum programų sąsaja, teikiama kaip paslauga.

Cloudflare Ethereum tinklų sietuvas (gateway).

Nodesmith – JSON-RPC programų sąsajos prieiga prie Ethereum pagrindinio tinklo ir bandomųjų tinklų.

Chainstack – bendrinami ir specializuoti Ethereum mazgai, teikiami kaip paslauga.

Saugykla

IPFS – tarpplanetinė failų sistema - tai decentralizuota Ethereum saugykla ir failų nuorodų sistema.

Swarm – paskirstytos saugyklos platforma ir turinio išskirstymo paslauga, skirta Ethereum web3.

OrbitDB – decentralizuota tarpusavio (P2P) duomenų bazė, paremta IPFS.

Saugumo įrankiai

Išmaniųjų sutarčių saugumas

Slither – Solidity statinės analizės struktūra, parašyta Python 3 kalba.

MythX – saugumo analizės programų sąsaja Ethereum išmaniosioms sutartims.

Mythril – saugumo analizės įrankis EVM baitkodui.

SmartContract.Codes – patikrintų Solidity pirminių kodų paieškos sistema.

Manticore – tekstinė sąsaja, naudojanti simbolinį vykdymo įrankį išmaniosioms sutartims ir dvinariams.

Securify – saugumo skaitytuvas Ethereum išmaniosioms sutartims.

ERC20 Verifier – patikros įrankis, naudojamas tikrinti sutarties atitiktį ERC20 standartui.

Formali patikra

Informacija apie formalią patikrą

Ieškote alternatyvų?

Testavimo įrankiai

Solidity-Coverage – alternatyvus Solidity kodo aprėpties įrankis.

hevm – specialiai vienetų testavimui ir riktų šalinimui iš išmaniųjų sutarčių sukurtas EVM įdiegimo projektas.

Whiteblock Genesis – ištisinio kūrimo bandomoji aplinka ir testavimo platforma blokų grandinėms.

Ieškote alternatyvų?

Blokų naršyklės

Blokų naršyklės – tai paslaugos, kurias naudodami galite naršyti Ethereum blokų grandinę (ir jos bandomuosius tinklus) atrasdami informaciją apie konkrečius sandorius, blokus, sutartis ir kitą veiklą grandinėje.

Bandomieji tinklai ir maišytuvai

Ethereum bendruomenė prižiūri keletą bandomųjų tinklų. Kūrėjai juos naudoja įvairiomis sąlygomis testuodami savo programas prieš jų įdiegimą į pagrindinį Ethereum tinklą.

Ropsten – darbo įrodymo (proof of work) blokų grandinė, galima kasti bandomąjį Ether.

Rinkeby – įgaliojimo įrodymo (proof of authority) blokų grandinė, kurią palaiko Geth kūrėjų komanda.

Goerli – tarpklientinė įgaliojimo įrodymo (proof of authority) blokų grandinė, sukurta ir palaikoma Goerli bendruomenės

Klientai ir savo mazgo paleidimas

Ethereum tinklas sukurtas iš daugybės mazgų, kurie užtikrina suderinamos kliento programinės įrangos veikimą. Per daugumą šių mazgų veikia Geth arba Parity – juos visus galite konfigūruoti pagal savo poreikius.

Klientai

Geth – Ethereum klientai, parašyti Go kalba.

Parity –***Ethereum klientas, parašytas Rust kalba.***

Pantheon – Ethereum klientas, parašytas Java kalba.

Nethermind – Ethereum klientas, parašytas C# .NET Core kalba.

Savo mazgo paleidimas

Ethnode – Ethereum mazgo leidimas (Geth arba Parity) vietiniam kūrimui.

Ethereum mazgų ištekliai

Ieškote alternatyvų?

Geriausios praktikos, modeliai ir nesektini modeliai

Išmaniosios sutartys

DappSys – saugūs ir lankstūs kūrimo blokai išmaniosioms sutartims.

OpenZeppelin sutartys – saugaus išmaniųjų sutarčių kūrimo biblioteka.

aragonOS – naujinamumo ir leidimų kontrolės modeliai.

Išmaniųjų sutarčių trūkumų registras

Saugumas

Išmaniųjų sutarčių saugumo geriausios praktikos vadovas

Išmaniųjų sutarčių saugumo patikros standartas (SCSVS)

Ieškote alternatyvų?

Kūrėjų palaikymas ir mokymas

Bendrasis mokymasis

Ethereum StackExchange

ConsenSys Academy – ištisinis (end-to-end) mokymo kursas Ethereum kūrėjams; lankstaus mokymosi galimybė, prieinama ištisus metus.

Solidity Gitter pokalbių svetainė

Visos Ethereum Gitter pokalbių svetainės

Chainshot – internetinės dappsų kodavimo mokymo programos.

Blockgeeks – internetiniai kursai apie blokų grandinės technologiją.

DappUniversity – išmokite kurti decentralizuotas programas Ethereum blokų grandinėje.

B9lab Academy – seniausias profesionalaus Ethereum dappsų kūrėjo kursas ir tolesnis auditorių ir kokybės užtikrinimo specialistų mokymasis. Įsk. mentorystę ir kodų peržiūrą.

Mokymasis žaidžiant

Cryptozombies – išmokite programuoti žaidimus Ethereum platformoje.

Ethernaut – Solidity kalba sukurtas karinis žaidimas. Kiekviename lygyje reikia nulaužti sutartį.

Capture the Ether – žaidimas apie Ethereum išmaniųjų sutarčių saugumą.

UI/UX dizainas

Rimble UI – lengvai pritaikomi komponentų ir dizaino standartai decentralizuotoms programoms.

Standartai

Ethereum bendruomenė yra priėmusi daug standartų, kurie naudingi kūrėjams. Įprastai jie pristatomi kaip Ethereum tobulinimo pasiūlymai (EIP), kuriuos bendruomenės nariai aptaria standartinio proceso metu.

Tam tikri EIP siejami su programos lygio standartais (pvz., su standartiniu išmaniosios sutarties formatu), kurie pristatomi kaip Ethereum komentarų užklausos (ERC). Daug ERC yra plačiai Ethereum ekosistemoje naudojami kritiniai standartai.