Ikhtisar Ethereum
Ethereum adalah platform perangkat lunak terdistribusi sumber terbuka berbasis blockchain yang telah muncul sebagai penantang utama Bitcoin. Ethereum pertama kali diusulkan pada tahun 2013 oleh peneliti cryptocurrency Vitalik Buterin, yang menyarankan penambahan bahasa skrip untuk pemrograman ke Bitcoin. Diluncurkan pada 30 Juli 2015. Pengembangan Ethereum disponsori oleh crowdsale online, sejenis crowdsourcing di mana token mata uang kripto diterbitkan.
Baca Lebih Lanjut: Apa itu Ethereum?
Mata uang kripto asli Ethereum disebut Ether (ETH), dan memiliki bahasa pemrograman yang dikenal sebagai Solidity. Blockchain, teknologi yang mendasari Ethereum, adalah buku besar terdistribusi yang menyimpan daftar catatan permanen dan anti kerusakan. Arsitektur terdesentralisasi ini memungkinkan pengembang untuk membuat berbagai aplikasi terdesentralisasi (dApps), dengan memanfaatkan ekosistem dan fleksibilitas platform yang kuat.
Salah satu fitur inti Ethereum adalah dukungannya terhadap kontrak pintar, yaitu kontrak digital yang dijalankan secara otomatis berdasarkan kondisi yang telah ditentukan seperti yang kami sebutkan di Pelajaran 1. Kontrak pintar ini memungkinkan lingkungan tanpa kepercayaan di mana transaksi dapat dilakukan dengan aman dan transparan tanpa memerlukan perantara. Penambang di jaringan Ethereum memproduksi token Ether, yang tidak hanya berfungsi sebagai mata uang tetapi juga sebagai alat untuk membayar biaya penggunaan pada platform; setelah “Penggabungan”, Ethereum telah beralih ke mekanisme Proof-of-Stake (PoS), di mana validator (bukan penambang) memvalidasi transaksi dan membuat blok baru. Alih-alih memproduksi token Ether, validator mendapatkan biaya transaksi dan memblokir hadiah di Ether atas partisipasi mereka dalam jaringan. Ether masih berfungsi sebagai sarana untuk membayar biaya penggunaan di platform, namun penerbitan dan distribusinya berbeda dengan mekanisme Proof-of-Work (PoW) sebelumnya.
Kemampuan Ethereum untuk menghosting dApps dan kontrak pintar telah menarik minat yang signifikan dari pengembang dan organisasi, menjadikannya platform terkemuka untuk membangun solusi inovatif di berbagai industri, antara lain termasuk keuangan, rantai pasokan, dan game. Seiring dengan terus berkembangnya ekosistem Ethereum, ekosistem Ethereum tetap menjadi yang terdepan dalam teknologi blockchain, mendorong inovasi dan membina komunitas pengembang dan pengguna yang berkembang pesat.
Baca selengkapnya: Apa itu Penggabungan?
Baca Lebih Lanjut: Apa itu DApp?
Pengantar bahasa pemrograman Soliditas
Solidity adalah bahasa pemrograman tingkat tinggi yang diketik secara statis yang dirancang khusus untuk menulis kontrak pintar pada blockchain Ethereum. Dikembangkan oleh tim inti Ethereum, sintaksis Solidity dipengaruhi oleh JavaScript, membuatnya familier dan dapat diakses oleh berbagai pengembang. Bahasanya lengkap dengan Turing, memungkinkan pengembang membuat logika kompleks dan mengimplementasikan berbagai fungsi dalam kontrak pintar mereka. Soliditas dikompilasi menjadi bytecode Ethereum Virtual Machine (EVM), yang dieksekusi di jaringan Ethereum.
Di Solidity, pengembang dapat menentukan struktur data khusus, membuat fungsi yang ditentukan pengguna, dan menerapkan mekanisme kontrol akses, di antara fitur-fitur lainnya. Dengan Solidity, dimungkinkan untuk membuat beragam aplikasi terdesentralisasi, termasuk platform keuangan terdesentralisasi (DeFi), token non-fungible (NFT), organisasi otonom terdesentralisasi (DAO), dan banyak lagi.
Struktur kontrak Soliditas: Contoh
Kontrak Soliditas adalah sepotong kode mandiri yang terdiri dari variabel, fungsi, peristiwa, pengubah, dan elemen lainnya. Struktur dasar kontrak Soliditas adalah sebagai berikut:
Petunjuk Pragma: Baris ini menentukan versi compiler Solidity yang kompatibel untuk kontrak pintar. Misalnya:
Soliditas
pragma soliditas ^0.8.0;
Definisi kontrak: Baris ini menyatakan kontrak dan namanya. \
Contohnya:
Kontrak Soliditas
SimpleToken {
Variabel status: Ini adalah variabel yang menyimpan status kontrak di blockchain. Misalnya, Anda dapat menyimpan total persediaan token:
Soliditas
uint256 total pasokan publik;
Fungsi: Fungsi menentukan perilaku kontrak dan dapat dipanggil oleh pengguna eksternal atau kontrak lain. Berikut fungsi sederhana untuk mentransfer token:
Transfer fungsi Soliditas
(alamat penerima, jumlah uint256) publik {
// ... transfer logic ...
}
Peristiwa: Peristiwa digunakan untuk mencatat tindakan tertentu dalam kontrak dan dapat dipantau oleh pengguna atau kontrak eksternal. Misalnya, peristiwa Transfer dalam kontrak token:
Soliditas
acara Transfer (alamat diindeks dari, alamat diindeks ke, nilai uint256);
Pengubah: Pengubah digunakan untuk mengubah perilaku fungsi, biasanya untuk kontrol akses atau pemeriksaan prasyarat. Misalnya, pengubah untuk memeriksa apakah pengirim memiliki cukup token untuk ditransfer:
Pengubah JavaScript
hasEnoughTokens(jumlah uint256) {
require(balanceOf[msg.sender] >= amount, "Insufficient balance");
_;
}
Konstruktor: Konstruktor adalah fungsi khusus yang menginisialisasi variabel status kontrak saat diterapkan. Misalnya, menginisialisasi total pasokan token:
Konstruktor JavaScript
(uint256 _totalSupply) {
totalSupply = _totalSupply;
balanceOf[msg.sender] = _totalSupply;
}
Jika digabungkan, kontrak Soliditas sederhana untuk sebuah token mungkin terlihat seperti ini:
soliditas pragma TypeScript
^0.8.0;
kontrak SimpleToken {
uint256 totalSupply publik;
pemetaan(alamat => uint256) neraca publik;
transfer acara (alamat diindeks dari, alamat diindeks ke, nilai uint256);
pengubah hasEnoughTokens(jumlah uint256) {
require(balanceOf[msg.sender] >= amount, "Insufficient balance");
_;
}
}
Highlight
Ethereum adalah platform berbasis blockchain yang mendukung kontrak pintar dan aplikasi terdesentralisasi (dApps).
Mata uang kripto asli Ethereum adalah Ether (ETH).
Solidity adalah bahasa pemrograman tingkat tinggi yang digunakan untuk menulis kontrak pintar di Ethereum.
Kontrak pintar di Ethereum dijalankan secara otomatis berdasarkan kondisi yang telah ditentukan sebelumnya.
Ethereum telah beralih ke mekanisme Proof-of-Stake (PoS) untuk memvalidasi transaksi dan membuat blok baru.
Soliditas memungkinkan pengembang untuk menentukan struktur data, membuat fungsi, menerapkan kontrol akses, dan banyak lagi.
Ekosistem Ethereum menarik pengembang dan organisasi dari berbagai industri.
Kontrak soliditas terdiri dari pragma, definisi kontrak, variabel keadaan, fungsi, peristiwa, pengubah, dan konstruktor.
Kontrak soliditas dapat digunakan untuk membuat platform DeFi, NFT, DAO, dan banyak lagi.
Ikhtisar Ethereum
Ethereum adalah platform perangkat lunak terdistribusi sumber terbuka berbasis blockchain yang telah muncul sebagai penantang utama Bitcoin. Ethereum pertama kali diusulkan pada tahun 2013 oleh peneliti cryptocurrency Vitalik Buterin, yang menyarankan penambahan bahasa skrip untuk pemrograman ke Bitcoin. Diluncurkan pada 30 Juli 2015. Pengembangan Ethereum disponsori oleh crowdsale online, sejenis crowdsourcing di mana token mata uang kripto diterbitkan.
Baca Lebih Lanjut: Apa itu Ethereum?
Mata uang kripto asli Ethereum disebut Ether (ETH), dan memiliki bahasa pemrograman yang dikenal sebagai Solidity. Blockchain, teknologi yang mendasari Ethereum, adalah buku besar terdistribusi yang menyimpan daftar catatan permanen dan anti kerusakan. Arsitektur terdesentralisasi ini memungkinkan pengembang untuk membuat berbagai aplikasi terdesentralisasi (dApps), dengan memanfaatkan ekosistem dan fleksibilitas platform yang kuat.
Salah satu fitur inti Ethereum adalah dukungannya terhadap kontrak pintar, yaitu kontrak digital yang dijalankan secara otomatis berdasarkan kondisi yang telah ditentukan seperti yang kami sebutkan di Pelajaran 1. Kontrak pintar ini memungkinkan lingkungan tanpa kepercayaan di mana transaksi dapat dilakukan dengan aman dan transparan tanpa memerlukan perantara. Penambang di jaringan Ethereum memproduksi token Ether, yang tidak hanya berfungsi sebagai mata uang tetapi juga sebagai alat untuk membayar biaya penggunaan pada platform; setelah “Penggabungan”, Ethereum telah beralih ke mekanisme Proof-of-Stake (PoS), di mana validator (bukan penambang) memvalidasi transaksi dan membuat blok baru. Alih-alih memproduksi token Ether, validator mendapatkan biaya transaksi dan memblokir hadiah di Ether atas partisipasi mereka dalam jaringan. Ether masih berfungsi sebagai sarana untuk membayar biaya penggunaan di platform, namun penerbitan dan distribusinya berbeda dengan mekanisme Proof-of-Work (PoW) sebelumnya.
Kemampuan Ethereum untuk menghosting dApps dan kontrak pintar telah menarik minat yang signifikan dari pengembang dan organisasi, menjadikannya platform terkemuka untuk membangun solusi inovatif di berbagai industri, antara lain termasuk keuangan, rantai pasokan, dan game. Seiring dengan terus berkembangnya ekosistem Ethereum, ekosistem Ethereum tetap menjadi yang terdepan dalam teknologi blockchain, mendorong inovasi dan membina komunitas pengembang dan pengguna yang berkembang pesat.
Baca selengkapnya: Apa itu Penggabungan?
Baca Lebih Lanjut: Apa itu DApp?
Pengantar bahasa pemrograman Soliditas
Solidity adalah bahasa pemrograman tingkat tinggi yang diketik secara statis yang dirancang khusus untuk menulis kontrak pintar pada blockchain Ethereum. Dikembangkan oleh tim inti Ethereum, sintaksis Solidity dipengaruhi oleh JavaScript, membuatnya familier dan dapat diakses oleh berbagai pengembang. Bahasanya lengkap dengan Turing, memungkinkan pengembang membuat logika kompleks dan mengimplementasikan berbagai fungsi dalam kontrak pintar mereka. Soliditas dikompilasi menjadi bytecode Ethereum Virtual Machine (EVM), yang dieksekusi di jaringan Ethereum.
Di Solidity, pengembang dapat menentukan struktur data khusus, membuat fungsi yang ditentukan pengguna, dan menerapkan mekanisme kontrol akses, di antara fitur-fitur lainnya. Dengan Solidity, dimungkinkan untuk membuat beragam aplikasi terdesentralisasi, termasuk platform keuangan terdesentralisasi (DeFi), token non-fungible (NFT), organisasi otonom terdesentralisasi (DAO), dan banyak lagi.
Struktur kontrak Soliditas: Contoh
Kontrak Soliditas adalah sepotong kode mandiri yang terdiri dari variabel, fungsi, peristiwa, pengubah, dan elemen lainnya. Struktur dasar kontrak Soliditas adalah sebagai berikut:
Petunjuk Pragma: Baris ini menentukan versi compiler Solidity yang kompatibel untuk kontrak pintar. Misalnya:
Soliditas
pragma soliditas ^0.8.0;
Definisi kontrak: Baris ini menyatakan kontrak dan namanya. \
Contohnya:
Kontrak Soliditas
SimpleToken {
Variabel status: Ini adalah variabel yang menyimpan status kontrak di blockchain. Misalnya, Anda dapat menyimpan total persediaan token:
Soliditas
uint256 total pasokan publik;
Fungsi: Fungsi menentukan perilaku kontrak dan dapat dipanggil oleh pengguna eksternal atau kontrak lain. Berikut fungsi sederhana untuk mentransfer token:
Transfer fungsi Soliditas
(alamat penerima, jumlah uint256) publik {
// ... transfer logic ...
}
Peristiwa: Peristiwa digunakan untuk mencatat tindakan tertentu dalam kontrak dan dapat dipantau oleh pengguna atau kontrak eksternal. Misalnya, peristiwa Transfer dalam kontrak token:
Soliditas
acara Transfer (alamat diindeks dari, alamat diindeks ke, nilai uint256);
Pengubah: Pengubah digunakan untuk mengubah perilaku fungsi, biasanya untuk kontrol akses atau pemeriksaan prasyarat. Misalnya, pengubah untuk memeriksa apakah pengirim memiliki cukup token untuk ditransfer:
Pengubah JavaScript
hasEnoughTokens(jumlah uint256) {
require(balanceOf[msg.sender] >= amount, "Insufficient balance");
_;
}
Konstruktor: Konstruktor adalah fungsi khusus yang menginisialisasi variabel status kontrak saat diterapkan. Misalnya, menginisialisasi total pasokan token:
Konstruktor JavaScript
(uint256 _totalSupply) {
totalSupply = _totalSupply;
balanceOf[msg.sender] = _totalSupply;
}
Jika digabungkan, kontrak Soliditas sederhana untuk sebuah token mungkin terlihat seperti ini:
soliditas pragma TypeScript
^0.8.0;
kontrak SimpleToken {
uint256 totalSupply publik;
pemetaan(alamat => uint256) neraca publik;
transfer acara (alamat diindeks dari, alamat diindeks ke, nilai uint256);
pengubah hasEnoughTokens(jumlah uint256) {
require(balanceOf[msg.sender] >= amount, "Insufficient balance");
_;
}
}
Highlight
Ethereum adalah platform berbasis blockchain yang mendukung kontrak pintar dan aplikasi terdesentralisasi (dApps).
Mata uang kripto asli Ethereum adalah Ether (ETH).
Solidity adalah bahasa pemrograman tingkat tinggi yang digunakan untuk menulis kontrak pintar di Ethereum.
Kontrak pintar di Ethereum dijalankan secara otomatis berdasarkan kondisi yang telah ditentukan sebelumnya.
Ethereum telah beralih ke mekanisme Proof-of-Stake (PoS) untuk memvalidasi transaksi dan membuat blok baru.
Soliditas memungkinkan pengembang untuk menentukan struktur data, membuat fungsi, menerapkan kontrol akses, dan banyak lagi.
Ekosistem Ethereum menarik pengembang dan organisasi dari berbagai industri.
Kontrak soliditas terdiri dari pragma, definisi kontrak, variabel keadaan, fungsi, peristiwa, pengubah, dan konstruktor.
Kontrak soliditas dapat digunakan untuk membuat platform DeFi, NFT, DAO, dan banyak lagi.