Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
noplan inc 勉強会(Foundryの紹介)
Search
Soma
September 24, 2022
Programming
1
66
noplan inc 勉強会(Foundryの紹介)
solidityの開発ツールキット "Foundry" の紹介
スマートコントラクト開発してみた所感
Soma
September 24, 2022
Tweet
Share
More Decks by Soma
See All by Soma
POAP (Proof Of Attendance Protocol)説明
somaseki
0
230
Other Decks in Programming
See All in Programming
A2A プロトコルを試してみる
azukiazusa1
2
1.3k
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
750
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
2
150
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
4
6.1k
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
1
8.5k
ニーリーにおけるプロダクトエンジニア
nealle
0
780
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
720
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
160
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
910
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
3
450
都市をデータで見るってこういうこと PLATEAU属性情報入門
nokonoko1203
1
600
Discover Metal 4
rei315
2
120
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
94
6.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
How to Ace a Technical Interview
jacobian
277
23k
Building Applications with DynamoDB
mza
95
6.5k
How GitHub (no longer) Works
holman
314
140k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Building Adaptive Systems
keathley
43
2.6k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Balancing Empowerment & Direction
lara
1
410
Music & Morning Musume
bryan
46
6.6k
Facilitating Awesome Meetings
lara
54
6.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Transcript
noplan.inc 月末定例勉強会 Foundry (Solidity開発ツール) soma 2022/09/23
1. Foundryとは 2. 特徴 3. 比較(主にhardhatと) 4. 使ってみた所感 5. その他できること
6. まとめ Foundryは使えそうか? hardhatに取って代わるか? Agenda
1. Foundryとは - Rust製のSolidity開発ツールキット - Paradigm (Crypto系VC) が開発 - dapptoolsというsolidity開発ツールの影響受けている
2. 特徴 - コンパイル・テストが速い
2. 特徴 - fuzzing test - trace
3. 比較(主にhardhatと) - コンパイル・テストが速い 👍
- 言語切り替えのスイッチングコストない 👍 - await, bignumber, ethersjs or web3jsの知見 不要 -
便利な機能がネイティブ実装されている 👍 - fuzzing test - gas trace - 学習コスト少し高い 👎 - プラグイン少ない 👎 3. 比較(主にhardhatと)
4. 使ってみた所感 - コンパイルやテストがサクサク終わるので気持ち良い - テスト書くときの考え方 「フロント、ノードからコントラクト操作」というよりも「 VM直接いじっている」 - テスト・スクリプトのファイル名や関数名に命名規則がある個人的には好き
- testファイルは '.t.sol' - test関数名は 'test....' - script実行ファイルは '.s.sol'
5. その他できること - upgradeable contractの実装 - 実際のチェーンをローカルノードにフォークしてテスト - differential testing
etc.
6. まとめ - 開発体験良い(シンプルテスト速いしバグトレースしやすい - 既存のhardhatプロジェクトを置き換えるのは難しい - プラグインの少なさと使用者の少なさ、ネット上の記事の少ないので、業務で採用す るにはまだ早い 現状はhardhat使った開発が無難
将来的に取って代わるというより2強になる可能性ある
参考資料 https://book.getfoundry.sh https://qiita.com/oishun/items/808994e0aea83cf08d7b https://yamenmerhi.medium.com/foundry-vs-hardhat-918c55e47add https://zenn.dev/razokulover/articles/574eb471e6db1c