Technický úvod do dapps
Stránka naposledy aktualizována: 14. února 2026
Decentralizovaná aplikace (dapp) je aplikace vytvořená na decentralizované síti, která kombinuje chytrý kontrakt a frontendové uživatelské rozhraní. V Ethereu jsou chytré kontrakty přístupné a transparentní jako otevřené API, takže vaše dappka může obsahovat i chytrý kontrakt, který napsal někdo jiný.
Předpoklady
Než se začnete učit o dapps, měli byste se seznámit se základy blockchainu a přečíst si o síti Ethereum a její decentralizaci.
Definice dapp
Dappka má svůj backendový kód spuštěný v decentralizované peer-to-peer síti. To je v kontrastu s aplikací, jejíž backendový kód běží na centralizovaných serverech.
Dappka může mít frontendový kód a uživatelská rozhraní napsaná v libovolném programovacím jazyce (stejně jako aplikace), který může volat její backend. Kromě toho může být její frontend hostován na decentralizovaném úložišti, jako je IPFSopens in a new tab.
- Decentralizované – dapps fungují na Ethereu, otevřené veřejné decentralizované platformě, nad kterou nemá kontrolu žádná osoba ani skupina.
- Deterministické – dapps vykonávají stejnou funkci bez ohledu na prostředí, ve kterém jsou spuštěny.
- Turingovsky úplné – dapps mohou provádět jakoukoli akci, pokud mají k dispozici potřebné prostředky.
- Izolované – dapps jsou spouštěny ve virtuálním prostředí známém jako Ethereum Virtual Machine (EVM), takže pokud má chytrý kontrakt chybu, neovlivní to běžné fungování blockchainové sítě.
O chytrých kontraktech
Abychom mohli vysvětlit fungování dappek, musíme nejdříve vysvětlit chytré kontrakty – backend dappek, což není úplně přesné, ale lepší popis neexistuje. Podrobný přehled naleznete v naší sekci o chytrých kontraktech.
Chytrý kontrakt je kód, který žije v blockchainu Etherea a běží přesně tak, jak je naprogramován. Jakmile jsou chytré kontrakty spuštěny na síti, nemůžete je měnit. Dappky mohou být decentralizované, protože jsou řízeny logikou zapsanou do kontraktu, nikoli jednotlivcem nebo společností. To také znamená, že musíte své kontrakty navrhovat velmi pečlivě a důkladně je testovat.
Výhody vývoje dapps
- Žádné výpadky – Jakmile je chytrý kontrakt nasazen na blockchain, síť jako celek bude vždy schopna obsloužit klienty, kteří chtějí s kontraktem interagovat. Zlomyslní aktéři proto nemohou provádět útoky typu DoS zaměřené na jednotlivé dappky.
- Soukromí – K nasazení dapp nebo interakci s ní nemusíte poskytovat svou skutečnou identitu.
- Odolnost vůči cenzuře – Žádný subjekt v síti nemůže uživatelům blokovat odesílání transakcí, nasazování dapps nebo čtení dat z blockchainu.
- Úplná integrita dat – Data uložená na blockchainu jsou díky kryptografickým primitivům neměnná a nezpochybnitelná. Zlomyslní aktéři nemohou falšovat transakce ani jiná data, která již byla zveřejněna.
- Výpočty bez nutnosti důvěry / ověřitelné chování – Chytré kontrakty lze analyzovat a je zaručeno, že se budou provádět předvídatelným způsobem, aniž by bylo nutné důvěřovat centrální autoritě. To v tradičních modelech neplatí. Např. když používáme systémy internetového bankovnictví, musíme věřit, že finanční instituce nezneužijí naše finanční údaje, nezmanipulují záznamy nebo se do nich nenabourají hackeři.
Nevýhody vývoje dapps
- Údržba – Udržovat dapps může být těžší, protože kód a data publikovaná na blockchainu se hůře upravují. Pro vývojáře je těžké aktualizovat dappky (nebo podkladová data, která dappky ukládají), jakmile jsou nasazeny, když jsou ve staré verzi identifikovány chyby nebo bezpečnostní rizika.
- Výkonnostní režie – Existuje obrovská výkonnostní režie a škálování je opravdu obtížné. Aby bylo dosaženo úrovně bezpečnosti, integrity, transparentnosti a spolehlivosti, o kterou Ethereum usiluje, musí každý uzel spouštět a ukládat každou transakci. Kromě toho, nějaký čas zabere i konsenzus důkazu podílem.
- Přetížení sítě – Když jedna dapp využívá příliš mnoho výpočetních zdrojů, celá síť se zahltí. V současné době je síť schopna zpracovat pouze asi 10–15 transakcí za sekundu. Pokud jsou transakce odesílány rychleji, může fond nepotvrzených transakcí rychle narůstat.
- Uživatelská zkušenost – Může být obtížnější navrhnout uživatelsky přívětivé prostředí, protože průměrný koncový uživatel může považovat za příliš složité nastavit sadu nástrojů nezbytnou pro skutečně bezpečnou interakci s blockchainem.
- Centralizace – Uživatelsky a vývojářsky přívětivá řešení postavená na základní vrstvě Etherea mohou nakonec stejně vypadat jako centralizované služby. Např. takové služby mohou ukládat klíče nebo jiné citlivé informace na serverové straně, poskytovat frontend pomocí centralizovaného serveru nebo provozovat důležitou obchodní logiku na centralizovaném serveru před zápisem na blockchain. Centralizace eliminuje mnoho (ne-li všechny) výhod blockchainu oproti tradičnímu modelu.
Učíte se spíše vizuálně? Vizuální výuka
Nástroje pro vytváření dapps
Scaffold-ETH – Rychle experimentujte se Solidity pomocí frontendu, který se přizpůsobí vašemu chytrému kontraktu.
Create Eth App – Vytvořte aplikace s podporou Etherea jedním příkazem.
One Click Dapp – FOSS nástroj pro generování frontendů pro dapps z .
Etherflow – FOSS nástroj pro vývojáře Etherea k testování uzlů a sestavování a ladění RPC volání z prohlížeče.
thirdweb – SDK v každém jazyce, chytré kontrakty, nástroje a infrastruktura pro vývoj web3.
Crossmint – Web3 vývojová platforma podnikové úrovně pro nasazování chytrých kontraktů, umožnění plateb kreditní kartou a plateb mezi řetězci a používání API k vytváření, distribuci, prodeji, ukládání a úpravě NFT.
Další čtení
- Prozkoumejte dapps
- Architektura aplikace Web 3.0opens in a new tab – Preethi Kasireddy
- Průvodce decentralizovanými aplikacemi pro rok 2021opens in a new tab - LimeChain
- Co jsou decentralizované aplikace?opens in a new tab - Gemini
- Populární dappsopens in a new tab - Alchemy
Víte o komunitním zdroji, který vám pomohl? Upravte tuto stránku a přidejte ho!