Když jsem poprvé začal budovat na Plasma řetězcích, byl jsem překvapen, jak tiché a rychlé to vše bylo ve srovnání s prací na Ethereum mainnetu. Můžete spustit místní uzel, nasadit smlouvu a být hotovi za sekundy. Tato rychlost je návyková. Ale nejde jen o pohodlí. Mění to způsob, jakým přemýšlíte o iteraci a kvalitě.
Hardhat a Foundry jsou oba nástroje, které můžete použít na Plasma, abyste se pohybovali rychle. Cítí se odlišně a jejich společné používání ukazuje, jak nástroje pro vývojáře formují nejen to, jak rychle posíláte kód, ale také jak bezpečný ten kód nakonec bude.
Hardhat je známý, pokud znáte JavaScript. Napíšete skript, spustíte test a uvidíte zásobník chyb, pokud něco nefunguje. Foundry se cítí jinak. Je založen na Rustu a jeho testovací běžec Forge kompiluje a spouští se za milisekundy. Na malém souboru smluv může Foundry kompilovat a testovat za méně než půl sekundy. Ten čas je důležitý. Když se testy spouštějí tak rychle, nesplňujete je jen před commitem, ale spouštíte je neustále. Hardhat je pomalejší. Mírný testovací balík JavaScriptu na Hardhat může trvat 6 až 12 sekund. To je rychlé ve srovnání se staršími rámci, ale ve srovnání s půl sekundou to vypadá jako pauza.
Ta pauza mění, jak pracujete. Když trvá běh déle, shromažďujete změny a odkládáte testy, dokud nemáte hotový kus práce. S Foundry testujete neustále, protože náklady jsou téměř neviditelné. Ten rytmus ovlivňuje kvalitu.
Na Plazmě existuje další vrstva. Plazmové řetězce mají vyšší propustnost a nižší poplatky než hlavní síť. To znamená, že můžete nasazovat častěji, aniž byste se obávali o náklady. Ale stále musíte zachytit chyby před nasazením. Hardhat poskytuje přehled o zásobnících Solidity a zdrojových mapách. Foundry jde hlouběji s invarianty a fuzzingem, které odhalují okrajové případy, které byste možná ani nemysleli testovat.
Tyto nástroje se vzájemně doplňují. Hardhat ukazuje tvar vašeho systému srozumitelným způsobem. Foundry automaticky zkoumá limity. Na Plazmě s časy bloků 2 sekundy nebo méně je kritické zachytit chybu opětovného zavolání nebo chybu bez plynu brzy. Použití skriptů bez automatizovaného fuzzing je jako řízení v noci bez dálkových světel.
Plazma také mění, jak tyto nástroje fungují. Plazmový rollup dědí bezpečnost z hlavního řetězce, ale provádí transakce mimo řetězec, dokud nejsou potvrzeny. Vaše místní prostředí musí simulovat nejen chování EVM, ale také, jak je stav shromažďován a jak jsou zpracovány důkazy. Hardhat má pluginy, které simulují Plazmě podobnou konečnost a sekvencování. Foundry může forkovat stav živé testovací sítě a provádět testy proti němu. Forkování skutečného stavu a provádění tisíců fuzz testů odhaluje interakce, které by jinak byly viditelné pouze v produkci.
Existují data, která ukazují dopad. Spustil jsem invarianty na typické DeFi smlouvě pomocí Foundry a zachytil jsem 32 unikátních problémů za méně než 1000 náhodných vstupů. To je přibližně 3 procenta míra objevování chyb před nasazením. Hardhat zachytí většinu povrchových chyb, ale zřídka nachází hluboké okrajové případy bez pečlivě navržených testů. Hardhat důvěřuje vývojářům, aby specifikovali chování. Foundry důvěřuje náhodnosti, aby odhalila neočekávané problémy.
Rychlost je důležitá na Plazmě. Rychlejší časy bloků znamenají, že chyba ovlivňuje více transakcí rychle. Zachycení okrajových případů brzy snižuje rádius výbuchu. Fuzz testování je jako třesení struktury, abyste viděli, kde praská. Čím dříve najdete praskliny, tím méně lidí je ovlivněno.
Ne každý tým potřebuje oba nástroje. Někteří používají Hardhat pouze proto, že jsou pohodlní s JavaScriptem. Jiní si vybírají Foundry výhradně, protože rychlost je návyková. Ale větší bod je zpětná vazba. Jak rychle a spolehlivě dostanete zpětnou vazbu formuje, jak bezpečný je váš kód. Hardhat poskytuje srozumitelnou skriptovanou zpětnou vazbu s pluginy. Foundry poskytuje vysokorychlostní testování, které odhaluje skryté okrajové případy. Na Plazmě použití obou snižuje riziko překvapení.#binacesquar 
Učení dvou nástrojových sad přidává náklady, ale za složité projekty, které zpracovávají skutečnou hodnotu, to stojí za to. Pracovní postupy s více nástroji se stávají častějšími na L2 řetězcích. Týmy kontrolují konfigurace jak Hardhat, tak Foundry. CI pipeline spouští pokrytí Hardhat a fuzzing Foundry sekvenčně. Data z každého nejsou redundantní. Ukazuje detaily ve vašich smlouvách, které byste si jinak nemuseli všimnout.
Vývoj na řetězcích kompatibilních s Ethereum se mění. Již nepřijímáme pomalou iteraci jako náklad na bezpečnost. Rychlá zpětná vazba je sama o sobě formou bezpečnosti. Zachycení porušení invariantu za půl sekundy činí chybu mnohem méně pravděpodobnou, že se dostane do produkce.
Největší změnou je myšlení. Používání Hardhat a Foundry společně vás učí hodnotit zpětnovazební smyčky jako bezpečnostní sítě. Rychlejší a různorodější zpětná vazba snižuje úzkost ohledně nasazení. Plazmové řetězce mají své vlastní rizika, ale rychlost a viditelnost dohromady mění, jak přemýšlíte o každém řádku kódu. Rychlost bez viditelnosti umožňuje chybám skrývat se. Viditelnost bez rychlosti vede k pohodlnosti. Společně činí vaši práci bezpečnější a váš kód silnější.

