初心者の場合、Solidityのコードを書く練習はRemixを使うとよいと思います。
ソフトをインストールすることなく、ブラウザを開くだけでコントラクトを書くことができます。
ただRemixはローカルのファイルを操作しにくかったり、Pythonを使えないので、本格的にアプリ開発をする場合はHardHatを使用するようにしましょう。
画面左側の3つのアイコン
File explorers: 新しいファイルを作ったり、ブラウザのcacheに保存されているファイルを作ったり、フォルダ操作をするワークスペースです。
Solidity compiler: コンパイルに使用するSolodityのバージョンをコードのpragma solidity
と一致するように設定します。Ctrl + Sでコンパイルできるので、最初に設定しておけばあとは触る必要ありません。
Deploy & run transactions: コントラクトのデプロイ先(ENVIRONMENT)を指定したり、デプロイしたコントラクトを操作したりします。デプロイ先に「Javascript VM」を選ぶとブラウザ内のキャッシュにデプロイするため、テストネットやメインネットのガスを用意する必要はありません。デプロイ先に「Injected Web3」を指定すると、Metamaskと接続してテストネットやメインネットにデプロイできるようになります。デプロイされたコントラクトは左下に表示され、オレンジのボタンや青のボタンで操作することができます。オレンジのボタンはブロックチェーンへの書き込み処理が発生するためガス代が必要ですが、青のボタンは情報を確認するだけなのでガス代は必要ありません。
テストネットへのデプロイ方法
- Environmentで「Injected Web3」を選択する。
- Metamaskと接続し、MetamaskをGoerliなどに切り替える。
- Remixで「Deploy」をクリックし、Metamaskで承認する。
- Remixの右下にview on etherscanと表示され、コントラクトがデプロイされるまで少し待つ。
- デプロイ後、コントラクトを操作するときは基本的にガスを消費しますが、ViewやPureタイプの処理はコントラクトに変更を加えないためガスがいらないです。