Posledná aktualizácia stránky: July 28, 2020

Zdroje informácií pre vývojárov

Začíname

Ak ste v programovaní na Ethereu úplným nováčikom, ste na správnom mieste. V týchto návodoch, napísaných členmi komunity Etherea, sa zoznámite so základmi programovania na Ethereu a rozdielmi v porovnaní s programovaním klasických aplikácií.

Chcete začať programovať ihneď? Tak sa do toho pustite tu.

Potrebujete ďalšie základné informácie o Ethereu? Pozrite si naše vzdelávacie zdroje.

Užitočné zdroje informácií

Programovacie jazyky na vývoj smart kontraktov

Každý program, ktorý beží na virtuálnom počítači Etherea (EVM), sa označuje ako „smart kontrakt“. Najobľúbenejšími jazykmi na vývoj smart kontraktov pre Ethereum sú Solidity a Vyper, no vo vývoji sú aj ďalšie.

Solidity - najobľúbenejší programovací jazyk na Ethereu, inšpirovaný jazykmi C ++, Python a JavaScript.

Vyper - programovací jazyk pre Ethereum so zameraním na bezpečnosť založený na jazyku Python

Hľadáte ďalšie možnosti?

Zdroje informácií pre rôzne jazyky

Vytvárame súbor vstupných stránok pre konkrétne jazyky, aby mali vývojári možnosť dozvedieť viac o Ethereu vo svojom preferovanom programovacom jazyku.

Nástroje pre vývojárov

Ethereum ponúka čoraz viac nástrojov, ktoré vývojárom pomáhajú vytvárať, testovať a spúšťať aplikácie. Nižšie sú uvedené najobľúbenejšie nástroje, ktoré vám pomôžu začať. Ak sa chcete dozvedieť viac, pozrite si tento podrobný zoznam.

Architektúry

Truffle - vývojové prostredie, testovacia architektúra, kanál zostáv a ďalšie nástroje

Embark - vývojové prostredie, testovacia architektúra a ďalšie nástroje integrované s Ethereom, IPFS a protokolom Whisper

Waffle - pokročilá architektúra na vývoj a testovanie smart kontraktov (založená na ethers.js)

Etherlime - rozhranie založené na ethers.js na vývoj dappiek (v jazykoch Solidity a Vyper) a ich nasadenie, ladenie, testovanie a ďalšie činnosti

Ďalšie nástroje

Ethereum Grid - počítačová aplikácia na sťahovanie, konfiguráciu a spúšťanie klientov a nástrojov Etherea

Buidler - spúšťanie úloh pre vývojárov smart kontraktov na Ethereu

OpenZeppelin SDK - špičkové nástroje na vývoj smart kontraktov: súprava nástrojov, ktorá vám pomôže pri vývoji, kompilácii, inovácii a nasadení smart kontraktov a interakcii s nimi

The Graph - protokol na indexovanie údajov Etherea a IPFS a ich vyhľadávanie cez GraphQL

Tenderly - platforma na jednoduché monitorovanie smart kontraktov so sledovaním chýb, výstrahami, meraním výkonnostných metrík a podrobnými analýzami kontraktov

Python Tooling - rôzne knižnice na interakciu s Ethereom prostredníctvom Pythonu

Brownie - vývojové prostredie a testovacia infraštruktúra založená na Pythone

web3j - integračná knižnica Java / Android/ Kotlin / Scala pre Ethereum

One Click Dapp - vytváranie používateľského rozhrania priamo z ABI pre rýchly vývoj a testovanie

Hľadáte ďalšie možnosti?

Integrované vývojové prostredia (IDE)

Ethereum Studio - Webové IDE, ktoré je ideálne pre nových vývojárov, ktorí chcú experimentovať so smart kontraktmi. Ethereum Studio obsahuje viacero šablón, integráciu MetaMask, zaznamenávanie transakcií a zabudovaný virtuálny počítač Ethereum (EVM), ktorý sa spúšťa v prehliadači, a pomôže vám takmer okamžite začať programovať na Ethereu.

Visual Studio Code - profesionálne multiplatformové IDE s oficiálnou podporou projektu Ethereum

Remix - webové IDE s integrovanou statickou analýzou a testovacím virtuálnym počítačom pre blockchain

EthFiddle - webové IDE, ktoré vám pomôže naprogramovať, skompilovať a ladiť váš smart kontrakt

Hľadáte ďalšie možnosti?

Rozhrania JavaScript API pre frontend

Web3.js - rozhranie JavaScript API Etherea

Ethers.js - kompletná implementácia peňaženky Ethereum a pomôcky vytvorené v jazykoch JavaScript a TypeScript

light.js - knižnica Reactive JS vysokej úrovne optimalizovaná pre ľahkých klientov

Web3-wrapper - alternatíva k Web3.js v jazyku TypeScript

Hľadáte ďalšie možnosti?

Rozhrania API pre backend

Infura - rozhranie Ethereum API ako služba

Cloudflare Ethereum Gateway

Nodesmith - prístup k hlavným a testovacím sieťam Etherea cez JSON-RPC API

Chainstack - zdieľané a vyhradené uzly Etherea ako služba

Úložisko

IPFS - InterPlanetary File System je decentralizovaný systém ukladania a prepájania súborov pre Ethereum

Swarm - platforma distribuovaného úložiska a distribučná služba obsahu pre web3 stack Etherea

OrbitDB - decentralizovaná P2P databáza postavená na súborovom systéme IPFS

Bezpečnostné nástroje

Bezpečnosť smart kontraktov

Slither - rozhranie statickej analýzy pre Solidity napísané v jazyku Python 3

MythX - API pre bezpečnostné analýzy smart kontraktov na Ethereu

Mythril - nástroj bezpečnostnej analýzy pre bytecode EVM

SmartContract.Codes - vyhľadávač overených zdrojových kódov v jazyku Solidity

Manticore - rozhranie príkazového riadka, ktoré využíva nástroj symbolického vykonávania smart kontraktov a binárnych súborov

Securify - kontrola zabezpečenia smart kontraktov na Ethereu

ERC20 Verifier - verifikačný nástroj na kontrolu súladu kontraktu so štandardom ERC20

Formálna verifikácia

Informácie o formálnej verifikácii

Hľadáte ďalšie možnosti?

Testovacie nástroje

Solidity-Coverage - alternatívny nástroj na testovanie pokrytia kódu v jazyku Solidity

hevm - implementácia EVM vytvorená špeciálne pre testovanie častí a ladenie smart kontraktov

Whiteblock Genesis - komplexný vývojový sandbox a testovacia platforma pre blockchain

Hľadáte ďalšie možnosti?

Blockchainové prehľadávače

Blockchainové prehľadávače sú služby, ktoré umožňujú preskúmať blockchain Etherea (a jeho testovacie siete) vyhľadávaním informácií o konkrétnych transakciách, blokoch, kontraktoch a iných aktivitách v rámci reťazca.

Testovacie siete a faucety

Komunita Etherea spravuje viacero testovacích sietí. Vývojárom umožňujú testovať aplikácie za rôznych podmienok ešte pred ich nasadením do hlavnej siete Etherea.

Ropsten - Proof of Work blockchain, v ktorom môžete ťažiť testovací ether

Rinkeby - Proof of Authority blockchain spravovaný vývojovým tímom Geth

Goerli - Proof of Authority blockchain pre rôzne klienty vytvorený a spravovaný komunitou Goerli

Klienty a prevádzkovanie vlastného uzla

Sieť Etherea pozostáva z mnohých uzlov, ktoré prevádzkujú kompatibilný klientsky softvér. Väčšina týchto uzlov beží na Geth alebo Parity, z ktorých každý môže byť nakonfigurovaný rôznymi spôsobmi podľa vašich potrieb.

Klienty

Geth - klient Etherea napísaný v jazyku Go

Parity - klient Etherea napísaný v jazyku Rust

Pantheon - klient Etherea napísaní v jazyku Java

Nethermind - klient Etherea napísaní v jazyku C# .NET Core

Prevádzkovanie vlastného uzla

Ethnode - umožňuje prevádzkovať uzol Etherea (Geth alebo Parity) pre lokálny vývoj kódu

Ďalšie informácie o uzloch

Hľadáte ďalšie možnosti?

Osvedčené postupy, vzory a čo nerobiť

Smart kontrakty

DappSys - bezpečné, jednoduché a flexibilné stavebné bloky pre smart kontrakty

OpenZeppelin Contracts - knižnica pre bezpečný vývoj smart kontraktov

aragonOS - vzory pre inovácie a správu povolení

Register slabých stránok smart kontraktov

Zabezpečenie

Príručka s osvedčenými postupmi pre bezpečnosť smart kontraktov

Smart Contract Security Verification Standard (SCSVS)

Hľadáte ďalšie možnosti?

Podpora a vzdelávanie vývojárov

Všeobecné vzdelávanie

Ethereum Stackexchange

ConsenSys Academy - komplexný kurz pre vývojárov na Ethereu, ktorý je otvorený po celý rok a každému umožňuje napredovať vlastným tempom

Chatovacia miestnosť Solidity na Gitteri

Všetky chatové miestnosti o Ethereu na Gitteri

Chainshot - webové kurzy programovania dappiek

Blockgeeks - online kurzy o technológii blockchain

DappUniversity - naučte sa vytvárať decentralizované aplikácie na blockchaine Etherea

B9lab Academy - domov najstarších profesionálnych kurzov pre vývojárov dappiek na Ethereu a ďalšie vzdelávanie pre audítorov a kontrolórov kvality vrátane mentoringu a kontrolu kódu.

Učenie založené na hrách

Cryptozombies - naučte sa kódovať hry na Ethereu

Ethernaut - bojová hra naprogramovaná v jazyku Solidity, v ktorej každá úroveň predstavuje kontrakt, ktorý je potrebné hacknúť

Capture the Ether - hra zameraná na zabezpečenie smart kontraktov na Ethereu

Dizajn UI/UX

Rimble UI - prispôsobiteľné komponenty a štandardy dizajnu pre decentralizované aplikácie

Štandardy

Komunita Etherea prijala mnoho štandardov, ktoré sú užitočné pre vývojárov. Zvyčajne sa uvádzajú ako návrhy na zlepšenie Etherea (alebo aj EIP) a členovia komunity o nich diskutujú podľa štandardného procesu.

Niektoré EIP sa týkajú štandardov na úrovni aplikácií (napr. štandardný formát smart kontraktov) a sú vedené ako žiadosti o pripomienkovanie Etherea (ERC). Mnohé ERC predstavujú kľúčové štandardy a majú široké využitie v ekosystéme Etherea.