Mengompil dan Melancarkan Kontrak
Pelajari cara mengompil kod Solidity Anda menjadi kod bait dan melancarkan kontrak ke rangkaian pembangunan setempat.
Mengompil dan Melancarkan Kontrak ialah pelajaran Kontrak Pintar Rantaian Blok dengan Solidity percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Kontrak Pintar Rantaian Blok dengan Solidity, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Kontrak Pintar Rantaian Blok dengan Solidity merangkumi sejumlah 4 pelajaran.
Pengenalan kepada Kompilasi & Penyebaran
Syabas kerana telah menyediakan persekitaran anda! Kini mari kita hidupkan kod Solidity anda. Pelajaran ini merangkumi dua langkah penting: mengompil dan menyebarkan kontrak pintar anda.
Anggaplah ia seperti membina aplikasi: mula-mula anda menulis kod, kemudian menukarkannya kepada sesuatu yang boleh dijalankan oleh komputer (kompilasi), dan akhirnya meletakkannya di suatu tempat untuk digunakan oleh orang lain (penyebaran).
Apakah Itu Kompilasi?
Kompilasi ialah proses menukarkan kod Solidity yang boleh dibaca manusia kepada kod bait yang boleh dibaca mesin. Mesin Maya Ethereum (EVM) memahami kod bait ini.
- Solidity ialah bahasa aras tinggi.
- EVM menjalankan kod bait aras rendah.
- Pengompil bertindak sebagai penterjemah antara kedua-duanya.
Mengompil dengan Hardhat
Hardhat memudahkan proses kompilasi. Setelah fail Solidity anda berada dalam folder contracts/, anda hanya perlu menjalankan satu arahan dalam terminal.
Arahan ini memberitahu Hardhat supaya mencari semua fail .sol dan mengompilnya menjadi kod bait.
npx hardhat compileMemahami Artifak
Selepas kompilasi, Hardhat mencipta folder artifacts/. Di dalamnya, anda akan menemukan fail JSON untuk setiap kontrak. Fail-fail ini mengandungi maklumat penting:
- Kod bait: Kod yang boleh dilaksanakan oleh EVM.
- ABI (Antara Muka Binari Aplikasi): Menerangkan cara berinteraksi dengan kontrak anda.
- Peta sumber: Membantu penyahpepijatan dengan memautkan kod bait kepada kod sumber.
Apakah Itu Penyebaran?
Penyebaran ialah tindakan menghantar kod bait kontrak anda ke rangkaian blockchain. Setelah disebarkan, kontrak anda berada pada rangkaian tersebut dan boleh digunakan oleh sesiapa sahaja.
Setiap penyebaran memerlukan gas (yuran transaksi) dan menghasilkan alamat kontrak unik pada blockchain.
Rangkaian Pembangunan Setempat
Sebelum menyebarkan kontrak ke rangkaian awam seperti Ethereum Mainnet, anda perlu menguji kontrak pada rangkaian pembangunan setempat.
Hardhat disertakan dengan rangkaiannya sendiri yang terbina dalam, sesuai untuk ujian yang pantas, percuma dan terpencil. Rangkaian ini ditetapkan semula setiap kali anda memulakannya semula.
Kontrak Contoh Kita
Sebelum menyebarkan kontrak, kita memerlukannya terlebih dahulu! Mari gunakan kontrak Greeter.sol yang ringkas. Kontrak ini menyimpan ucapan dan membolehkan anda mengubahnya.
Simpan kod ini dalam folder contracts/ anda:
/* contracts/Greeter.sol */
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract Greeter {
string private greeting;
constructor(string memory _greeting) {
greeting = _greeting;
}
function greet() public view returns (string memory) {
return greeting;
}
function setGreeting(string memory _greeting) public {
greeting = _greeting;
}
}Skrip Penyebaran
Skrip JavaScript ini, yang disimpan sebagai scripts/deploy.js, akan memberitahu Hardhat cara menyebarkan kontrak Greeter kita ke rangkaian.
Skrip ini menggunakan integrasi ethers.js terbina dalam Hardhat untuk mengendalikan penyebaran kontrak. Cuba jalankan contoh ini:
// scripts/deploy.js
async function main() {
const Greeter = await ethers.getContractFactory("Greeter");
const greeter = await Greeter.deploy("Hello, CoddyKit!");
await greeter.deployed();
console.log("Greeter deployed to:", greeter.address);
}
main()
.then(() => process.exit(0))
.catch((error) => {
console.error(error);
process.exit(1);
});Menjalankan Skrip Penyebaran
Dengan kontrak yang telah dikompil dan skrip penyebaran yang telah siap, tibalah masanya untuk menyebarkannya! Buka terminal anda dan jalankan arahan ini:
Hardhat akan memulakan rangkaian setempatnya secara automatik, menyebarkan kontrak anda, kemudian mematikannya (melainkan anda menjalankan npx hardhat node terlebih dahulu).
npx hardhat run scripts/deploy.jsUji Pengetahuan Anda
Mari semak pemahaman anda tentang proses kompilasi dan penyebaran dalam Hardhat.
Kontrak Anda Kini Aktif!
Anda telah berjaya mempelajari cara mengompil kod Solidity menjadi kod bait dan menyebarkannya ke rangkaian pembangunan setempat!
- Kompil: Menukarkan Solidity kepada kod bait EVM dan mencipta ABI.
- Sebarkan: Meletakkan kod bait kontrak anda pada blockchain.
- Rangkaian Hardhat: Sesuai untuk ujian setempat.
Seterusnya, anda akan mempelajari cara berinteraksi dengan kontrak yang telah disebarkan ini!
Pelajari Kontrak Pintar Rantaian Blok dengan Solidity dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 12
- Pelajaran
- 48
Soalan Lazim
Adakah pelajaran “Mengompil dan Melancarkan Kontrak” percuma?
Ya — teks penuh “Mengompil dan Melancarkan Kontrak” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Kontrak Pintar Rantaian Blok dengan Solidity, tingkat taraf kepada CoddyKit PRO. Kursus Kontrak Pintar Rantaian Blok dengan Solidity merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Mengompil dan Melancarkan Kontrak”?
Pelajari cara mengompil kod Solidity Anda menjadi kod bait dan melancarkan kontrak ke rangkaian pembangunan setempat. Anda berlatih Kontrak Pintar Rantaian Blok dengan Solidity menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Kontrak Pintar Rantaian Blok dengan Solidity?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Kontrak Pintar Rantaian Blok dengan Solidity di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.
Berapa lamakah pelajaran “Mengompil dan Melancarkan Kontrak” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Kontrak Pintar Rantaian Blok dengan Solidity ini?
Ya. Setiap pelajaran Kontrak Pintar Rantaian Blok dengan Solidity menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Menyediakan Hardhat atau Truffle
- Mengompil dan Melancarkan Kontrak
- Berinteraksi dengan Kontrak yang Dilancarkan
- Menulis dan Menjalankan Ujian Kontrak