Halo semuanya! π
Ini adalah tulisan pertama saya tentang bahasa pemrograman Rust. Saat ini, saya masih dalam tahap awal belajar dan sedang mencoba mendokumentasikan hal-hal yang saya pelajari sejauh ini.
Catatan ini bukan bertujuan untuk mengajari, tapi lebih sebagai arsip pribadi yang semoga juga bisa bermanfaat bagi teman-teman pemula lainnya yang sedang menapaki perjalanan belajar Rust.
Kalau ada koreksi atau masukan, saya akan sangat menghargainya! π
π¦ Struktur Program Kode Rust
Rust merupakan bahasa pemrograman yang mendukung paradigma functional programming, di mana penggunaan fungsi menjadi salah satu kekuatan utamanya.
Dalam setiap program Rust, ada satu fungsi yang wajib ada dan akan dijalankan pertama kali saat program dijalankan, yaitu:
Contoh:
fn main() {
// Blok kode ini akan dijalankan pertama kali saat program dijalankan
}
Konsep ini sama persis seperti pada bahasa C, C++, dan Java, di mana fungsi main
berperan sebagai titik awal eksekusi program. Semua logika akan dijalankan mulai dari fungsi ini.
π¦ Konsep Variabel di rust
Seperti halnya bahasa pemrograman lain, Rust memiliki variabel dan tipe data. Tapi yang menarik, Rust juga membawa beberapa konsep unik yang membedakannya dari bahasa seperti JavaScript, PHP, atau C++.
Supaya lebih mudah dipahami, saya akan jelaskan melalui potongan kode di bawah ini.
1. Keyword let
Penulisan variabel di Rust selalu diawali dengan kata kunci let
.
Ini berbeda dengan beberapa bahasa lain:
- Di Python, kita bisa langsung menulis nama variabel tanpa keyword apa pun.
- Di PHP, variabel selalu diawali dengan tanda
$
. - Di C++, deklarasi variabel harus diawali dengan tipe data terlebih dahulu, baru diikuti oleh nama variabel.
- Sementara itu, TypeScript memiliki kemiripan dengan Rust karena juga menggunakan keyword
let
untuk deklarasi variabel.
Contoh:
fn main() {
let angka_pertama = 10;
}
2. immutable
vs mutable
Ada yang unik di Rust: secara default, variabel yang dibuat bersifat tidak dapat diubah setelah nilainya ditetapkan. π²
Konsep ini disebut immutable
β artinya, variabel tersebut tidak bisa diubah nilainya kecuali kita secara eksplisit menset nya untuk bisa diubah.
Hal ini sangat berbeda dengan banyak bahasa pemrograman lain, di mana variabel bisa bebas diubah nilainya kapan saja setelah inisialisasi. Rust justru mendorong penggunaan variabel yang tetap, demi alasan keamanan dan prediktabilitas dalam penulisan program.
Contoh:
fn main() {
let nama_saya = "Guruh";
nama_saya = "Dani"; // akan menyebabkan error
println!("nama saya adalah : {}", nama_saya);
}
Lalu, bagaimana jika kita ingin agar variabel bisa diubah?
Rust menyediakan keyword mut
(singkatan dari mutable) yang digunakan saat kita menginisialisasi variabel. Dengan menambahkan mut
, kita memberi tahu Rust bahwa variabel tersebut boleh diubah setelah dideklarasikan.
Contoh:
fn main() {
let mut nama_saya = "Guruh";
nama_saya = "Dani"; // ini valid
println!("nama saya adalah : {}", nama_saya);
}
3. Penulisan tipe data
Rust memperbolehkan kita untuk mendefinisikan tipe data secara eksplisit, maupun tidak mendefinisikannya sama sekali (Rust akan secara otomatis menebak tipe dari variabel yang kita buat, berdasarkan nilai yang kita assign).
Pendekatan ini terasa seperti kombinasi antara gaya penulisan variabel di C++ (yang eksplisit dengan tipe data) dan PHP (yang fleksibel tanpa deklarasi tipe secara langsung).
Lantas, bagaimana jika kita ingin mendefinisikan tipe data secara eksplisit?
Contoh:
fn main() {
let angka: i8 = 10; // i8 adalah integer 8-bit
let usia: i8;
usia = 18;
println!("angka : {}, usia : {}", angka, usia);
}
Catatan Penting Seputar Variabel di Rust
Berikut beberapa hal penting yang perlu diperhatikan saat bekerja dengan variabel di Rust:
- β
Penamaan variabel sebaiknya menggunakan format
snake_case
- β οΈ Variabel yang dideklarasikan tetapi tidak digunakan akan menghasilkan peringatan (warning)
- β οΈ Variabel yang ditandai
mut
tetapi tidak mengalami perubahan juga akan menimbulkan peringatan
Kalau kamu juga sedang belajar Rust, atau punya pengalaman menarik seputar Rust,
yuk berbagi di kolom komentar! βοΈ
Sampai jumpa di materi selanjutnya! π
Top comments (0)