はじめに
Webアプリ開発も、ブロックチェーンアプリ開発もはじめての自分が、Ethereumのスマートコントラクトを使ったDappを作るにあたり、Dapp(特にWebアプリ)開発を取り巻くエコシステムを調べた
スマートコントラクト開発
ノード
Ethereumのブロックを生成するEthereumクライアント
上記はすべて同じEthereumプロトコルを実装しており、違いは書かれている言語だけである
もちろんブロック情報に互換性があり、ブロックチェーンから複製したブロックはどのノードでも使える
ブラウザ
ノードを構築することなくEthereumブロックチェーンと接続するソフトウェア
スマートコントラクト開発言語
- Solidity - スマートコントラクト開発のデファクトスタンダード言語. コンパイル(solc)が必要で、コンパイルされると
Byte Code
と呼ばれるEVM1アセンブリに変換される
IDE
- Remix - ブラウザで起動する統合開発環境. Solidityによるスマートコントラクト実装と、コンパイルが可能. デバッガも統合されている
スマートコントラクト開発支援ツール
スマートコントラクトのテスト、管理、ネットワークへのデプロイを支援するツール
Webアプリ開発
フレームワークとライブラリ
Javascriptフレームワーク
- Angular
- Vue.js
- React
- Redux
上記フレームワークだけでは、Ethereumブロックチェーンへ繋げないので以下のライブラリが必要
モジュールバンドラ
複数ファイルのJavascriptをまとめるツール
- Webpack
- Browserify
- Node Package Manager
最後に
調べただけでは実際よくわからない
ひとつずつインストールしながら使い方を覚える
-
Ethereum Virtual Machine ↩