Menerapkan dan Berinteraksi
Berlatih menerapkan kontrak pintar yang telah dikompilasi ke lingkungan blockchain simulasi dan berinteraksi dengan fungsinya melalui UI Remix.
Menerapkan dan Berinteraksi adalah pelajaran Web3 & DApp Development Fundamentals gratis di CoddyKit. Ini adalah pelajaran 3 dari 3. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Web3 & DApp Development Fundamentals, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Web3 & DApp Development Fundamentals mencakup 3 pelajaran total.
Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.
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:
- Ensure
Counteris selected in the 'CONTRACT' dropdown. - 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
Countercontract. - 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!
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Menerapkan dan Berinteraksi” gratis?
Ya — teks lengkap “Menerapkan dan Berinteraksi” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Web3 & DApp Development Fundamentals, upgrade ke CoddyKit PRO. Kursus Web3 & DApp Development Fundamentals mencakup 3 pelajaran total.
Apa yang akan aku pelajari di “Menerapkan dan Berinteraksi”?
Berlatih menerapkan kontrak pintar yang telah dikompilasi ke lingkungan blockchain simulasi dan berinteraksi dengan fungsinya melalui UI Remix. Kamu berlatih Web3 & DApp Development Fundamentals dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Web3 & DApp Development Fundamentals?
Tidak diperlukan pengalaman sebelumnya. Web3 & DApp Development Fundamentals di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 3.
Berapa lama pelajaran “Menerapkan dan Berinteraksi” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Web3 & DApp Development Fundamentals ini?
Ya. Setiap pelajaran Web3 & DApp Development Fundamentals menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Ikhtisar Remix IDE
- Mengompilasi Kontrak Pintar
- Menerapkan dan Berinteraksi