Substrate vs Hardhat etc... ~なぜSubstrateを使うのか~
対象読者
- Web3.0に興味がある
- Substrate及びブロックチェーン技術の初学者
その他のブロックチェーン開発ツールとその課題
ブロックチェーン周りの開発ツールとして、TruffleやHardhatなどがあります。
主な特徴として、
- Ethereum上のDapps(アプリ)をSolidity, TypeScriptで構築できる
- コントラクトのデプロイやテストができる
- 開発用ネットワークでデバッグできる
と開発者として嬉しい機能がついています。
テンプレートについて
scaffold-eth/scaffold-eth-typescriptあたりがとても体験がよさそうなので一度触ってみるといいでしょう。
Substrateとは
これまでのブロックチェーンの課題として複数チェーン上での相互運用が難しいという問題がありました。(ほかのネットワーク向けに開発することはできる ※Polygonの例)
Substrateは同じくブロックチェーン構築のためのフレームワークです。
Substrateがこれらブロックチェーンフレームワークと異なる特徴として、
- マルチチェーン、相互運用性、分散型インターネットを目指す。
- Rust(ink!)で記述。(Wasmでデプロイ)
があげられます。
マルチチェーンのメリット
Polkadotエコシステムの相互運用が可能なため、単一チェーンに依存するために起こりうるガス代の高騰を防ぐことができるでしょう。
EtheriumでもPolygonを代表とするLayer2ソリューションによりガス代を抑えようとしていますが、Polygonでさえガス代が高騰しています。
スパム取引問題があるので完全に防ぐことは現状難しいですが、分散を目的とするWeb3.0の世界ではマルチチェーンが主流になっていくと考えられます。
RustでのSubstrate
Rustでの記述は既存の資産を使うことができ非常に嬉しいです。
テンプレートについて
- ノード: https://github.com/substrate-developer-hub/substrate-node-template
- フロントエンド: https://github.com/substrate-developer-hub/substrate-node-template
から開発を行えます。(フロントエンドjs...)
Substrateにはなんと専用のプレイグラウンドが用意されています!https://docs.substrate.io/playground/
開発者に投資してますね。まともなスペックと環境が提供されるので、取り掛かりはこちらの方が早いかもしれませんね!
またAster/Shiden Networkの開発ツールにもなっています。こちらはさらに相互運用性と開発者へのインセンティブ強化がされており、現在開発するなら有望なパラチェーンでしょう。
まとめ
ここまでブロックチェーン開発をとりまく様々なツールを見てきました。
現在のブロックチェーン技術は速度と手数料の問題にいかにして対処するかが焦点となって様々なソリューションが提供されていることが分かります。
次回はSubstrateのアーキテクチャとその上で必要な用語について解説しようと思います。
参考文献
https://trufflesuite.com/index.html
https://docs.polygon.technology/docs/develop/getting-started
Discussion