0Pricing
Web3 & DApp Development Fundamentals · レッスン

デプロイと操作

コンパイルしたスマートコントラクトをシミュレートされたブロックチェーン環境にデプロイし、Remix UIから関数を操作する練習をします。

「デプロイと操作」はCoddyKit上の無料Web3 & DApp Development Fundamentalsレッスンです。 これはレッスン3/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはWeb3 & DApp Development Fundamentals学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Web3 & DApp Development Fundamentalsコースには全3レッスンが含まれています。

このレッスンの一部はまだ翻訳されておらず、英語で表示されています。

What is Smart Contract Deployment?

You've learned to write and compile smart contracts in Remix. The next step is to deploy them.

Deploying a contract means publishing its compiled code onto a blockchain. Once deployed, your contract becomes an immutable, self-executing program accessible to anyone on that network.

Remix's Deploy & Run Panel

Remix IDE has a dedicated panel for deployment and interaction. Look for the 'Deploy & Run transactions' plugin, usually represented by an Ethereum logo.

This panel allows you to:

  • Select a blockchain environment.
  • Choose an account for deployment.
  • Deploy your compiled contracts.
  • Interact with deployed contracts.

Choosing a Blockchain Environment

Before deploying, you need to tell Remix which blockchain to target. In the 'Environment' dropdown, you'll see options:

  • JavaScript VM: A local, in-browser simulated blockchain. Perfect for testing!
  • Injected Provider: Connects to an external wallet like MetaMask.
  • Web3 Provider: Connects to a custom RPC endpoint (e.g., a local Hardhat node).

For this lesson, we'll use the JavaScript VM.

Test Accounts in JavaScript VM

When you select 'JavaScript VM', Remix automatically provides several test accounts. These accounts are pre-funded with fake Ether (ETH).

You'll use one of these accounts to deploy your contract. The deployment transaction will deduct 'gas' (transaction fees) from the chosen account's balance, just like on a real blockchain.

Gas Limit and Value

In the 'Deploy & Run' panel, you'll also see fields for 'Gas limit' and 'Value'.

  • Gas limit: The maximum amount of gas (computational effort) you're willing to spend on a transaction.
  • Value: The amount of Ether (or other native token) you want to send along with the transaction (e.g., for payable functions or sending funds to a contract).

For most simple deployments, the default gas limit is sufficient. We'll leave 'Value' at 0 for now.

Our Simple Counter Contract

Let's use a basic Counter contract to practice deployment and interaction. This contract simply stores an unsigned integer and allows us to increment or decrement it.

Copy and paste this code into a new file named Counter.sol in Remix, then compile it.

pragma solidity ^0.8.0;

contract Counter {
    uint public count;

    constructor() {
        count = 0;
    }

    function increment() public {
        count++;
    }

    function decrement() public {
        count--;
    }
}

Deploying the Counter Contract

With Counter.sol compiled and 'JavaScript VM' selected:

  1. Ensure Counter is selected in the 'CONTRACT' dropdown.
  2. Click the orange 'Deploy' button.

You'll see a transaction recorded in the Remix terminal, and your deployed contract will appear under 'Deployed Contracts'.

Interacting with Deployed Contracts

Once deployed, your contract will show up under the 'Deployed Contracts' section in the 'Deploy & Run' panel.

You'll see buttons for each of the contract's functions and public state variables. These buttons are color-coded:

  • Blue: View/pure functions (read-only, no transaction cost).
  • Orange: Non-payable functions (modify state, require transaction).
  • Red: Payable functions (modify state and accept Ether).

Reading Contract State: 'count'

Our Counter contract has a public state variable called count. When a state variable is declared public, Solidity automatically creates a getter function for it.

Click the blue 'count' button in the deployed contract interface. You should see its initial value, 0, displayed below the button.

Modifying Contract State: 'increment()'

Now, let's change the contract's state. Click the orange 'increment' button.

This will trigger a transaction. You'll see a new transaction in the terminal. After it's mined (almost instantly in JS VM), click the blue 'count' button again. The value should now be 1!

Try clicking 'decrement' and observing the change too.

Quick Check: Remix Deployment

Which of the following best describes the primary purpose of the 'JavaScript VM' environment in Remix?

Recap: Deploying & Interacting

Congratulations! You've learned the essential steps to deploy and interact with smart contracts using Remix IDE:

  • Used the 'Deploy & Run transactions' panel.
  • Selected the 'JavaScript VM' for a simulated environment.
  • Deployed a simple Counter contract.
  • Interacted with its public variable and functions to read and modify its state.

This hands-on experience is crucial for understanding how smart contracts live and operate on the blockchain!

よくある質問

「デプロイと操作」レッスンは無料ですか?

はい。「デプロイと操作」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Web3 & DApp Development Fundamentalsコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Web3 & DApp Development Fundamentalsコースには全3レッスンが含まれています。

「デプロイと操作」で何を学びますか?

コンパイルしたスマートコントラクトをシミュレートされたブロックチェーン環境にデプロイし、Remix UIから関数を操作する練習をします。 ブラウザで直接実行するハンズオンコードでWeb3 & DApp Development Fundamentalsを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Web3 & DApp Development Fundamentalsを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのWeb3 & DApp Development Fundamentalsは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/3です。

「デプロイと操作」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このWeb3 & DApp Development Fundamentalsレッスンでコードを書いて実行できますか?

はい。すべてのWeb3 & DApp Development Fundamentalsレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Remix IDEの概要
  2. スマートコントラクトのコンパイル
  3. デプロイと操作
← Web3 & DApp Development Fundamentalsに戻る