Belajar Pemrograman Solidity Untuk Menjadi Developer Blockchain

Jika anda ingin membuat aplikasi berbasis Ethereum atau membuat token standar ERC20, Anda harus mempelajari bahasa yang disebut Solidity. Dalam tutorial kami, kami akan membahas cara belajar pemrograman solidity.

Pemrograman Blockchain telah menjadi salah satu bidang perangkat lunak yang membayar dan menantang selama dekade terakhir. Meskipun blockchain adalah bahasa-agnostik dan banyak bahasa yang ada, seperti C ++ dan JavaScript (JS), digunakan oleh para insinyur blockchain, ada beberapa tugas yang tidak dapat dengan mudah direalisasikan oleh bahasa yang ada, yang membuka permintaan untuk bahasa baru, opsi khusus kripto. Salah satu bahasa tersebut adalah Solidity.

Soliditas lahir sebagai bagian inti dari ekosistem Ethereum. Ini menyerap C ++, JavaScript, dan Python. Ini memiliki banyak fitur kontemporer seperti perpustakaan dan warisan.

Solidity dirancang untuk menulis program yang berinteraksi dengan akun Ethereum, yang disebut kontrak pintar. Kontrak pintar dijalankan di Ethereum Virtual Machine (EVM), memungkinkan pengguna untuk menggunakannya melakukan tugas-tugas seperti crowdfunding, pemungutan suara, dan banyak lainnya dengan cara terdesentralisasi.

Aplikasi pembunuh dari kontrak pintar yang paling terkenal adalah pendanaan terdesentralisasi di ICO , yang mulai ramai digunakan pada 2017.

Apakah Anda seorang pengembang yang berpengalaman atau Anda baru memulai di crypto, itu ide yang baik untuk mulai mempelajari Soliditas karena kontrak pintar telah menjadi bagian penting dari ekosistem blockchain.

Selain diimplementasikan secara aktif oleh dApps, mereka secara aktif diintegrasikan ke dalam blockchains layer-infrastruktur dan bahkan dalam Bitcoin melalui penyedia seperti RSK.

Dengan mengetahui cara membangun kontrak yang cerdas, Anda akan membuat karier blockchain Anda lebih berkelanjutan dan mampu menghasilkan solusi berkualitas lebih baik.

Memahami dasar-dasar Smart Contracts

Sebuah smart contracts (kontrak pintar) akun terdiri dari tiga bagian: keseimbangan, penyimpanan, dan kode. Saldo tersebut mewakili berapa banyak Ethereum yang dimiliki kontrak pintar.

Penyimpanan menyimpan data seperti string dan array yang khusus untuk suatu aplikasi. Bagian kode memiliki kode mesin mentah yang dikompilasi dari apa yang kita tulis di Solidity.

Tidak seperti akun pengguna, akun kontrak pintar tidak eksternal untuk jaringan masing-masing. Dengan kata lain, Anda dapat menggunakan dompet Anda dengan berbagai jaringan seperti Kovan dan Ropsten, tetapi Anda tidak dapat melakukan ini dengan kontrak pintar. Kontrak pintar bersifat internal.

Setiap kontrak pintar memiliki sumber, yang disimpan di perangkat penulis dan instance, yang disimpan di blockchain. Untuk membuat instance (akun) dari kontrak pintar, kita perlu menyebarkannya ke jaringan.

Sangat mirip hubungan antara kelas dan instance dalam pemrograman berorientasi objek tradisional (OOP) dan bahasa yang mewakilinya (JS, Ruby). Untuk memberi Anda representasi yang lebih visual, mari buat kelas ‘Bike’ dan tambahkan instance.

Kelas sepeda & instance

Apa yang akan kita tulis adalah definisi kontrak, yang kemudian akan dijalankan melalui kompiler yang akan menghasilkan dua file: bytecode dan application binary interface (ABI). Bytecode adalah apa yang akan diumpankan ke EVM dan ABI adalah lapisan antara bytecode dan kode JavaScript reguler yang memungkinkan pembuatan antarmuka pengguna (UI).

Cara Memilih IDE & versi Solidity

Sebelum kita mulai, kita membutuhkan lingkungan pengembangan terintegrasi (IDE) yang tepat. Dengan kata lain, kita memerlukan terminal yang nyaman dengan alat yang diperlukan untuk menulis kode kita.

Untuk keperluan tutorial ini, kita akan memilih Remix, sebuah IDE yang dibuat oleh yayasan Ethereum yang memungkinkan penulisan, pengujian, debugging, meluncurkan kontrak pintar dan masih banyak lagi. Anda dapat menggunakannya langsung di peramban atau mengunduhnya secara lokal jika Anda mau.

Setelah Anda meluncurkan Remix, Anda akan disajikan dengan editor kode di tengah, manajer file di sebelah kiri, dan kompiler di sebelah kanan.

Akan ada beberapa kode pra-tertulis – kita tidak membutuhkannya. Untuk membuat kontrak pintar yang pertama kali, mari kita tekan ikon plus kecil di sudut kiri atas terminal dan berikan nama.

Karena kita memiliki dokumen .sol kosong sekarang, kita harus menentukan versi Solidity yang akan dijalankan oleh kompiler. Pada saat tutorial ini, versi terbaru adalah 0.5.7. Jika Anda tidak yakin versi mana yang digunakan, Anda dapat menentukan serangkaian versi.

Cara Menulis Kontrak Pintar Pertama Anda

Setelah kanvas kita siap, sekarang saatnya untuk menentukan blok bangunan dasar – variabel. Meskipun insinyur perangkat lunak yang berpengalaman tidak akan memiliki masalah dalam memahami konsep ini, kami akan memperkenalkannya secara singkat kepada pemula. Variabel adalah placeholder untuk potongan informasi yang kemudian direferensikan oleh program yang menjalankannya.

Mari kita membuat beberapa variabel: string (urutan simbol) dan integer (angka). Dalam kasus Ethereum, variabel disimpan dalam blockchain bersama dengan sisa bagian kontrak dan karenanya, dapat diakses dan diperbarui dari mana saja.

Karakteristik kunci lain dari variabel Solidity adalah Anda dapat membuatnya privat dengan menulis ‘privat’ di sebelah variabel. Akhirnya, untuk bilangan bulat, Solidity memiliki dua jenis: ditandatangani (bisa positif & negatif) dan tidak ditandatangani (hanya bisa positif). Untuk menentukan variabel yang tidak ditandai, kita harus meletakkan ‘u’ di depannya.

Cara Menulis Kontrak Pintar Pertama Anda

Setelah kita memiliki variabel ‘nama’, kita perlu menuliskan metode pengaturan dan mendapatkannya. Ini terlihat seperti fungsi JS. Ingat bahwa Solidity diketik secara statis, jadi kita harus mendefinisikan tipe variabel. Sekarang nilai apa pun yang kita masukkan ke ‘setName’ akan menentukan string ‘name’.

Untuk pengambil, kita akan menggunakan ‘getName’ dan menentukan variabel apa yang kita harapkan. Sekarang, saatnya untuk melakukan hal yang sama untuk variabel ‘usia’. Metode ini dibangun mirip dengan ‘getName’.

Cara Menulis Kontrak Pintar Pertama Anda 1

Mari kita coba sedikit kode kita. Buka tab ‘Jalankan’ dari kompiler dan tekan ‘Sebarkan’ di bawah nama kontrak Anda. Di bagian paling bawah dari kompiler, Anda sekarang akan melihat bagian ‘Kontrak yang Digunakan’ yang memiliki metode yang tersedia.

Untuk meneruskan nama ke nilai ‘newName’, kita perlu memastikan bahwa string kita ditulis dalam JSON, jika tidak, ‘getName’ tidak akan menghasilkan apa-apa. Untuk ‘setAge’, cukup mencantumkan usia Anda tanpa tanda kutip. Seperti yang Anda lihat, sekarang kita dapat menetapkan dan menerima variabel ‘nama’ dan ‘usia’ melalui kontrak pintar.

Cara Menulis Kontrak Pintar Pertama Anda 2

Cara Mendefinisikan Wei dan Gas

Salah satu fitur yang paling luar biasa dari kontras cerdas adalah untuk menyebarkannya ke jaringan Ethereum Anda perlu melakukan transaksi, yang menelan biaya sejumlah uang yang dibayarkan dalam Ether. Sangat penting untuk memahami bagaimana biaya digunakan dalam sistem, karena mereka akan dikurangkan setiap kali Anda berinteraksi dengan EVM.

Apa itu Wei?

Mari kita asumsikan bahwa membaca sejauh ini dalam tutorial kami Anda telah menggunakan Bitcoin setidaknya sekali. Anda mungkin melakukan transaksi kecil yang kurang dari 1 BTC.

Dalam hal ini, Anda menggunakan Satoshi, yang merupakan sesuatu seperti uang untuk satu dolar. Wei seperti Satoshi – ini adalah bagian terkecil dari 1 Ether.

Jika kita memikirkannya dalam istilah pemrograman, itu adalah integer unsigned terendah dalam jaringan. Saat berinteraksi dengan jaringan, Anda sebagian besar akan bertemu Gwei, yang mengacu pada Gigawei dan sama dengan 1 miliar Wei.

Apa itu Gas?

Gas adalah bagian penting dari mekanisme pelaksanaan kontrak pintar. Ini memiliki dua nilai untuk setiap transaksi: Konsumsi gas dan harganya. Perlu disebutkan bahwa pengguna yang memulai transaksi menentukan nilai-nilai ini.

Namun, jika nilai yang ditetapkan Gas tidak akan cukup untuk memproses operasi tertentu, maka Gas akan dikonsumsi, tetapi transaksi akan gagal. Selain itu, jika harga untuk Gas akan ditetapkan terlalu rendah untuk jaringan pada waktu tertentu, transaksi tidak akan diproses oleh node, akhirnya membuatnya tidak berhasil.

Ada beberapa layanan untuk memeriksa nilai optimal untuk transaksi Anda, salah satunya adalah ethgasstation.info. Untuk mendapatkan pemahaman yang lebih baik tentang Gas dan mengapa harus mengeluarkan biaya, mari kita kodekan sendiri.

Kembali ke jendela Remix Anda dan mulai file baru. Dalam contoh kita, kita akan menyebutnya ‘Gas’ dan membuat kontrak dengan nama yang sama. Ingatlah bahwa semakin banyak data yang kita perlukan untuk disimpan di blockchain, semakin banyak Gas yang kita butuhkan. Yang sedang berkata, untuk tujuan tutorial ini kita akan membuat kontrak murah; semakin Anda menambahkannya, semakin tinggi biayanya.

Akan ada fungsi yang mengembalikan integer yang merupakan jumlah dari dua input. Untuk membuatnya seringan mungkin, kami akan menentukan bahwa kontrak kami tidak akan menyimpan apa pun di blockchain, dan untuk itu kami akan menempatkan ‘murni’ di sebelah fungsi.

Kontrak murah

Sekarang Anda dapat menggunakannya di kompiler dan memasukkan dua angka untuk mendapatkan bilangan bulat ‘c’. Untuk memeriksa harga transaksi kami, kami harus melihat terminal yang terletak di bawah bagian kode. Ada biaya transaksi dan biaya eksekusi. Yang pertama mengacu pada berapa banyak data yang dimiliki suatu transaksi. Yang kedua mengacu pada seberapa besar kekuatan EVM dibutuhkan oleh transaksi.

Ini adalah transaksi yang sangat mendasar yang hampir tidak memerlukan biaya apa pun untuk jaringan. Dalam menulis kontrak pintar yang bermakna Anda akan menambahkan lebih banyak detail, yang akan menambah bobotnya dan karenanya biaya transaksi.

Demikianlah postingan tentang Belajar Pemrograman Solidity,  untuk mendapatkan ilmu lebih lanjut silakan anda baca juga cara Membuat dan Menggunakan Token ERC20 Anda Sendiri.

Be the first to comment

Leave a Reply

Your email address will not be published.


*