演習 - Truffle for VS Code 拡張機能をインストールする

完了

Truffle for VS Code 拡張機能: この拡張機能を使用すると、Ethereum 台帳にスマート コントラクトを作成、ビルド、デプロイする方法を簡略化できます。 この拡張機能には、Truffle、Ganache、その他のツールとサービスとの統合が組み込まれています。 このモジュールでは、この拡張機能を使用してスマート コントラクトの記述とテストを行います。

拡張機能をインストールする

Visual Studio Code の左側のサイド バーで、[拡張機能] を選択します。 Truffle for VS Code を検索し、それを選択してインストールします。

Screenshot showing how to install the Truffle for VS Code extension.

Truffle 拡張機能を使用する前に、以下がインストール済みであることを確認します。

  • Node.js と npm: Node.js がインストールされていることを確認するには、ターミナルを開き「node」と入力します。 Node.js がインストールされている場合、コンピューター上の Node.js のバージョンがターミナルから返されます。 また、ノード パッケージ マネージャー (npm) がインストールされていることを確認するには、ターミナルで「npm」と入力します。
  • Git:Git がインストールされていることを確認するには、ターミナルを開き、「git」と入力します。 Git がインストールされている場合、使用可能な git コマンドの一覧がターミナルから返されます。
  • Truffle Suite: この拡張機能には、開発者ツールの Truffle Suite をインストールするためのリンクが用意されています (拡張機能がパブリック プレビュー段階にある間は必須です)。
  • Ganache: この拡張機能には、Ganache をインストールするためのリンクが用意されています (拡張機能がパブリック プレビュー段階にある間は必須です)。

このソフトウェアがインストールされていない場合、または最小バージョンがない場合は、ツールのインストール方法に関するヒントが拡張機能によって提供されます。

作業の開始

すべての依存関係がインストールされていたら、Truffle 拡張機能を使用して最初のプロジェクトを作成しましょう。

  1. コンピューター上に、プロジェクト用の空のディレクトリを追加します。 Visual Studio Code からディレクトリを作成するには、[ターミナル]>[新しいターミナル] にアクセスして、「mkdir newSolidityProject」と入力します。 この新しいディレクトリの場所をメモしておきます。 この情報は後で必要になります。

  2. Visual Studio Code で [表示]>[コマンド パレット] にアクセスします。 検索ボックスに「Truffle: New Solidity Project」と入力します。 入力すると、候補の一覧が表示されます。

    Screenshot showing how to create a new Solidity project in Visual Studio Code.

  3. Solidity プロジェクトの種類として、[Create basic project](基本プロジェクトを作成する) を選択します。

    Screenshot showing the Create basic project selection in Visual Studio Code.

  4. [エクスプローラー] ペインを使用して、手順 1 で作成したフォルダーを検索します。 フォルダーを選択します。 ウィンドウの右下隅に、[Creating new project](新しいプロジェクトの作成中) と表示されます。

Solidity プロジェクトが作成されたら、[エクスプローラー] ペインを開いてプロジェクトのファイルを確認します。

Screenshot showing a new workspace for a Solidity project.

プロジェクトには、Solidity コード用のひな形が含まれています。 次のディレクトリがあることがわかります。

  • contracts: HelloBlockchain.sol コントラクトが含まれています
  • migrations: JavaScript で記述された HelloBlockchain コントラクトのテストが含まれています
  • test:JavaScript で記述された HelloBlockchain コントラクトのテストが含まれています

いくつかの構成ファイルもあります。

  • package.json:プロジェクトの詳細と依存関係を定義します
  • truffle-config.json:Truffle の依存関係と構成を定義します

ワークスペースを保存するには、[ファイル]>[ワークスペースに名前を付けて保存] にアクセスします。 「newSolidityProject」という名前を付けます。

さて、プロジェクト自体に戻りましょう。 まずは contracts ディレクトリに注目します。

コントラクトをコンパイルする

まず、contracts フォルダー内の HelloBlockchain.sol スマート コントラクトから始めます。

  1. [エクスプローラー] ペインの contracts フォルダーで、コントラクト名 [HelloBlockchain.sol] を右クリックします。

  2. [Build Contracts](コントラクトをビルドする) を選択し、スマート コントラクトをコンパイルします。 右下隅のウィンドウに、コントラクトがビルド中であることが示されます。

    Screenshot showing the Explorer pane. For the selected contract file, the Build Contracts command is selected.

  3. [表示]>[出力] を選択して、コンパイルされたコントラクトに関する情報を表示します。 拡張機能からの出力を表示するには、ウィンドウで [Truffle for VS Code] を選択することが必要になる場合があります。

    Screenshot showing output information about the compiled contract. The Truffle menu item is selected.

コントラクトをデプロイする

コントラクトが正常にコンパイルされたら、ローカルにデプロイできます

  1. [エクスプローラー] ペインで contracts フォルダーにアクセスし、コントラクト名 [HelloBlockchain.sol] を右クリックします。

  2. [Deploy Contracts](コントラクトをデプロイする) を選択します。

    Screenshot showing the Explorer pane. In the shortcut menu, the Deploy Contracts command is selected.

出力ウィンドウ ([ビュー] ->[出力]) に、デプロイされた移行とコントラクトに関する情報が表示されます。

Screenshot showing output information about the deployed migrations and contracts. The Truffle for VS Code menu item is selected.

ここには、デプロイされたコントラクトに関する重要な情報またはメタデータが表示されます。

  • コントラクトのアドレス。
  • コントラクト作成トランザクションが含まれていたブロックのタイム スタンプ。
  • コントラクトをデプロイしたアカウントのアドレス。
  • トランザクションの後のアカウントの残高 (Ether)。 残高は 100 ETH (開始時の既定値) から合計コストを差し引いた値です。
  • 使用されたガスの量とガスの価格。 "ガス" とは、Ethereum ブロックチェーン プラットフォーム上でのトランザクションの実行やコントラクトの実行に必要な料金を指します。 車に必要なガソリンのように考えることができます。 合計コスト = ガス価格 * 使用するガス。

    Note

    ガスの価格は gwei で示されます。 1 gwei は 0.000000001 ETH に相当します。