Stránka byla naposledy aktualizována: bře 06, 2020

Informace pro vývojáře

Začínáme

Pokud jste u vývoje s Ethereem noví, jste na správném místě. Tyto příručky jsou napsané komunitou a ukáží vám základy vývoje na Ethereu a představí základní koncepty které mohou být odlišné od vývoje běžných aplikací, na který můžete být zvyklí.

Potřebujete nejdřív základní informace? Zkuste ethereum.org/cs/learn.

Jazyky pro tvorbu chytrých kontraktů

Jakýkoliv program, který běží na virtuálním stroji Ethereum Virtual Machine (EVM), se běžně nazývá “chytrý kontrakt”. Nejpopulárnější jazyky pro tvorbu chytrých kontraktů na Ethereu jsou Solidity a Vyper, i když existují další, které jsou ve vývoji.

Solidity, nejpopulárnější jazyk pro Ethereum inspirovaný C++, Pythonem a Javascriptem

Vyper, jazyk zaměřený na bezpečnost pro Ethereum, založený na Pythonu.

Hledáte jiné možnosti?

Nástroje pro vývojáře

Ethereum má velké a rostoucí množství nástrojů, které vývojářům pomáhají tvořit, testovat a nasazovat jejich aplikace. Níže je seznam nejpopulárnějších nástrojů, se kterými můžete začít. Pokud se chcete ponořit hlouběji, prohlédněte si tento rozšířený seznam.

Truffle, vývojové prostředí, testovací framework, pomocník pro celkové sestavení a další nástroje.

Embark, vývojářské prostředí, testovací framework a další nástroje integrované s Ethereem, IPFS a Whisperem.

Waffle, framework pro vývoj a testování pokročilých chytrých kontraktů (založených na ethers.js).

Etherlime, framework založený na ethers.js based framework pro vývoj decentralizovaných aplikací (Solidity & Vyper), nasazování, ladění, testování a další.

Buidler, spouštěč úloh pro vývojáře chytrých kontaktů pro Ethereum

ZeppelinOS, vývojářský framework pro tvorbu chytrých kontraktů, které lze aktualizovat, a pro bezpečnou správu aplikací chytrých kontraktů.

Poohlížíte se po dalších možnostech?

Integrovaná vývojová prostředí (IDEs)

Visual Studio Code, profesionální multiplatformní integrované vývojové prostředí s oficiální podporou pro ethereum.

Remix, webové vývojové prostředí s vestavěnou statickou analýzou a s testovacím blockchainovým virtuálním strojem.

Superblocks, webové IDE s blockchainovým virtuálním strojem vestavěným v prohlížeči, integrací MetaMasku, protokolem transakcí a dalšími funkcemi.

EthFiddle, webové IDE, které vám umožňuje psát, kompilovat a vypouštět vaše první chytré kontrakty.

Poohlížíte se po dalších možnostech?

Frontendová javascriptová API

Web3.js, Javascriptové API pro Ethereum

Ethers.js, kompletní implementace peněženky pro Ethereum a nástrojů v Javascriptu a v TypeScriptu

light.js, vysokoúrovňová reaktivní javascriptová knihovna optimalizovaná pro lehké klienty.

Web3-wrapper, Typescriptová alternativa k Web3.js

Poohlížíte se po dalších možnostech?

Backend APIs

Infura The Ethereum API as a service

Security tools

Slither Solidity static analysis framework written in Python 3

MythX Security analysis API for Ethereum smart contracts

Manticore A command line interface that uses a symbolic execution tool on smart contracts and binaries.

Securify Security scanner for Ethereum smart contracts

More on formal verification

Looking for other options?

Testing tools

Solidity-Coverage Alternative solidity code coverage tool.

hevm Implementation of the EVM made specifically for unit testing and debugging smart contracts.

Whiteblock Genesis An end-to-end development sandbox and testing platform for blockchain.

Looking for other options?

Block explorers

Block explorers are services that let you browse the Ethereum blockchain (and its testnets), by finding information about specific transactions, blocks, contracts, and other on-chain activity.

Testnets and Faucets

The Ethereum community maintains multiple testnets. These are used by developers to test their applications under different conditions before deploying to the Ethereum mainnet.

Ropsten Proof of Work blockchain, test-ether can be mined

Rinkeby Proof of Authority blockchain, maintained by the Geth development team

Goerli Cross-client Proof of Authority blockchain, built and maintained by the Goerli community

Clients & Running your own node

The Ethereum network is made up of many nodes who run compatible client software. The majority of these nodes run Geth or Parity, each of which can be configured in different ways according to your needs.

Geth Ethereum clients written in Go

Parity Ethereum client written in Rust

Ethnode Run an Ethereum node (Geth or Parity) for local development.

Ethereum Node Resources

Looking for other options?

Best Practices, Patterns, and Anti-patterns

DappSys Safe, simple, flexible building-blocks for smart-contracts.

OpenZeppelin Library for secure smart contract development.

aragonOS Patterns for upgradeability & permission control.

Smart Contract Weakness Registry

Smart Contract Security Best Practices Guide

Looking for other options?

Developer Support & Training

Ethereum Stackexchange

Solidity Gitter Chatroom

All Ethereum Gitter Chatrooms

Cryptozombies Learn to code games on ethereum.

Chainshot Web based dapp coding tutorials.

Blockgeeks Online courses on blockchain technology

DappUniversity Learn to build decentralized applications on the Ethereum blockchain

Ethernaut Solidity based wargame where each level is a contract to be hacked

UI/UX

Standards

The Ethereum community has adopted many standards that are helpful to developers. Typically these are introduced as Ethereum Improvement Proposals (EIPs), which are discussed by community members through a standard process.

Certain EIPs relate to application-level standards (e.g. a standard smart-contract format), which are introduced as Ethereum Requests for Comment (ERC). Many ERCs are critical standards used widely across the Ethereum ecosystem.