Solidityの開発環境を整えてみる(0.8.x)

  • このエントリーをはてなブックマークに追加
  • LINEで送る

Solidityとはざっくりいうと、スマートコントラクトを定義するためのプログラミング言語です。
言語の説明は別途記事つくります。

今回はSolidityでスマートコントラクトを実装するにあたって環境構築が必要になるわけですが

最新版がなかった&Solidity自体が日本語の情報が少ないので、開発環境を整えるための手順を置いておきます。

1:必要なツールをインストール

node.jsをインストール

npmコマンドを使えるようにするためにインストール。
https://nodejs.org/ja/

Visual Studio Codeをインストール(なんでもいいです)

エディタです。
https://azure.microsoft.com/ja-jp/products/visual-studio-code/

Ganacheをインストール

ローカル開発時にブロックチェーンを可視化できるのでめっちゃ便利。
コントラクトアドレス取得したり、ブロックどのくらいできてんだろ?みたいなのをさくっと知ることができる。
https://trufflesuite.com/ganache/index.html

Truffleをインストール

コンソールを立ち上げてTruffleをインストール

npm install -g truffle

2:開発環境の構築

プロジェクトフォルダを作成

コンソールを立ち上げてフォルダを作ってください。右クリック>新規作成>フォルダと同じ。
その後、作成したフォルダへ移動。

mkdir xxxx
cd xxxx

jsをローカルで動かせる環境を整える

つまりnode.js環境をつくるということ。package.jsonが出来上がる。

npm init -y

スマートコントラクトを開発するための環境を整える

truffle init

こんなフォルダたちが出来上がる
contracts/:コントラクトを入れるディレクトリ
migrations/:デプロイする際に必要なファイル
test/:デプロイしたコントラクトをテストするためのテストプログラムを入れておくフォルダ
truffle.js:構成ファイル

その他、必要なライブラリをインストールしておくと便利

web3ライブラリをインストール

npm i web3

chaiのテスト用拡張モジュールをインストール

npm i chai chai-bn truffle-assertions

bn.jsをインストール(BigNumber型を使えるようにするやつだったはず)

npm i bn.js

OpenZeppelinいれておくと便利(0から開発しなくていい)

npm i @openzeppelin/contracts

3:環境を整えた後

プロジェクトフォルダでエディタを立ち上げる

code .

truffle-config.jsを編集

compilers: {
  solc: {
    version: "0.8.x", // 実際に使用するsolidityのバージョンに変更する
  }
},

Ganache立ち上げ

右下にある「NEW WORKSPACE」をクリックすると以下の画面がでるので、手順通り設定

設定が終わった後に以下の画面が出るので赤枠の数字をメモしておく

truffle-config.jsの編集

development: {~~}のコメントを外して、上記画像の数値に変える

development: {
     host: "127.0.0.1",     // Localhost (default: none)
     port: 7545,            // Standard Ethereum port (default: none)
     network_id: "*",       // Any network (default: none)
},

以上で一通り環境構築を終えることができました。

次は実際にSolidityをつかってコントラクトを定義したり、デプロイしたり、テストしたりしたいと思います。

  • このエントリーをはてなブックマークに追加
  • LINEで送る

SNSでもご購読できます。

コメントを残す

*