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
最近のweb3.js事情 / bc.tokyo-19
Search
odanado
May 24, 2019
Programming
570
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
最近のweb3.js事情 / bc.tokyo-19
odanado
May 24, 2019
More Decks by odanado
See All by odanado
Vitest Browser Mode への期待 / Vitest Browser Mode
odanado
3
5.6k
@nestjs/bull の活用について
odanado
0
1.6k
クラウド KMS の活用 / TOKYO BLOCKCHAIN TECH MEETUP 2022
odanado
0
1.3k
Vue.observable で状態管理 / vue-observable-state-management
odanado
4
2.1k
nuxtjs-axios-error-handling
odanado
0
420
ブロックチェーンアプリのトランザクションに対するデータ分析 / PyCon-JP-2019
odanado
0
460
スマートコントラクトに対する既知の攻撃とその対策 / bc.tokyo-21
odanado
0
290
YAPC::Tokyo 2019に スタッフ参加してみて / kichijojipm-18
odanado
1
2.4k
JavaScript + Dockerの知見 / knowledge-of-docker-in-javascript
odanado
9
56k
Other Decks in Programming
See All in Programming
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
580
FDEとは、何者なのか?
masapyon1212
0
110
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
190
Pythonの実行はどこまで賢くなったのか? CPythonとPyPyから見る最適化のしくみ
curekoshimizu
4
2.4k
業務時間外もAIに働いてもらう話
colorful12
3
9.7k
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
400
Go 1.27 における memory allocation の高速化
andpad
0
370
初めての模倣学習とVLA
natsutan
0
400
How I Won Prize Money at a Hackathon Using Codex and Symphony Alpha
yasei_no_otoko
0
130
AIの中の人になってみる
htkym
0
150
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
270
Webエンジニアなのにブラウザの仕組みがわからないので、Pythonで自作してみた
tatsuki12
4
1.6k
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
187
23k
The Curse of the Amulet
leimatthew05
2
14k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
The Curious Case for Waylosing
cassininazir
1
490
Designing for Timeless Needs
cassininazir
1
460
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
GraphQLとの向き合い方2022年版
quramy
50
15k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
440
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
590
Skip the Path - Find Your Career Trail
mkilby
1
210
How to Talk to Developers About Accessibility
jct
2
530
Transcript
最近のweb3.js事情 1 blockchain.tokyo#19 @odan3240
自己紹介 • Twitter: @odan3240 • ソフトウェアエンジニア ◦ フロントエンド ◦ AWS
◦ ブロックチェーン • 会社: モバイルファクトリー ◦ チーム: ブロックチェーンチーム ◦ DApssを身近にするUniqys Projectをやっている 2
web3.jsとは • Ethereum JavaScript API • Ethereumのノードと通信する君 ◦ JSON-RPCで会話 ▪
https://github.com/ethereum/wiki/wiki/JSON-RPC 3 トランザクションを送信する例
web3.jsの仕組み • 大きく分けて2つ ◦ JSON RPCの呼び出し ▪ provider という ▪
dapp ブラウザはこの機能を提供 ◦ JSON RPCの機能をJSの関数として提供 4
web3.js v1.0.0-beta.x • 2017年の7月頃から開発されている(?) • 最新は v1.0.0-beta.55 • beta版でバグがあることも... ◦
blockchain.tokyo#15のecouffes_さんのスライド 5
callback -> promise • JSON RPCの実行結果を受け取るのに callback関数を渡していた ◦ JavaScriptの昔のやり方 ◦
0.20.xまで現役 • v1.0.0-beta.xでは結果を promiseとして返すようになった 6
EIP 1193 • EIP 1193: Ethereum Provider API • provider.sendの
新しいinterfaceの提案を含んでいる • 旧 • 新 7
TypeScript対応 • v1.0.0-beta.38辺りから 型定義ファイルが提供され始めた ◦ 嬉しい • 単にJavaScriptを書いている時でもVS Codeで 関数や引数がサジェストされる
• またに間違っている... 8
Module API • v1.0.0-beta.54から入った ◦ https://web3js.readthedocs.io/en/1.0/web3-module.html • 独自のWeb3 モジュールを実装するためのAPI •
web3.ethなどの内部モジュールは すべてこのModule APIを使って書き直された • 使ってみた ◦ odanado/js-eth-personal-sign-examples-clone 9