Masukkan Password
02 1.1 What are Variables in Dart Programming Language | Learn Dart Language | Dart Course
Materi kedua ini membahas variabel di Dart, jenis-jenis data yang bisa disimpan, const, serta aturan penamaan variabel. Saya akan jelaskan dari konsep paling dasar sampai contoh penggunaannya.
Catatan: pada transkrip, kata seperti “DOT/do” sebenarnya maksudnya Dart, dan “V” yang beberapa kali disebut maksudnya
var.
1. Apa itu variabel?
Dalam pemrograman, variabel adalah tempat untuk menyimpan sebuah nilai/data.
Bayangkan kamu mempunyai beberapa kotak:
┌──────────────┐
│ name │ → "Ahmad"
└──────────────┘
┌──────────────┐
│ age │ → 22
└──────────────┘
┌──────────────┐
│ score │ → 90.5
└──────────────┘
Kotak tersebut kita ibaratkan sebagai variabel, sedangkan isi kotaknya adalah nilai.
Dalam Dart:
var name = "Ahmad";
var age = 22;
var score = 90.5;
Artinya:
namemenyimpan"Ahmad"agemenyimpan22scoremenyimpan90.5
2. Mengapa kita membutuhkan variabel?
Ini bagian yang sangat penting.
Misalnya kita menulis:
void main() {
print("Hello World");
print("Hello World");
print("Hello World");
print("Hello World");
print("Hello World");
}
Tidak ada masalah kalau hanya lima kali.
Tetapi suatu hari kita ingin mengubah:
Hello World
menjadi:
Welcome
Kita harus mengubahnya di lima tempat.
Kalau programnya besar dan teks tersebut digunakan 100 kali, pekerjaan menjadi merepotkan dan berisiko ada yang lupa diubah.
Kita bisa menggunakan variabel:
void main() {
var text = "Hello World";
print(text);
print(text);
print(text);
print(text);
print(text);
}
Sekarang kalau ingin mengubah teks:
var text = "Welcome";
semua print(text) otomatis menggunakan nilai baru.
Jadi:
Variabel membuat data lebih mudah disimpan, digunakan kembali, dan diubah.
3. Bentuk dasar variabel
Bentuk sederhananya:
var namaVariabel = nilai;
Contoh:
var name = "Ahmad";
Mari kita pecah:
var name = "Ahmad";
│ │ │ │
│ │ │ └── nilai
│ │ └────────────── assignment
│ └───────────────────────── nama variabel
└───────────────────────────────────── keyword
var
Memberitahu Dart bahwa kita sedang membuat variabel.
name
Nama variabel.
=
Digunakan untuk memberikan nilai kepada variabel.
"Ahmad"
Nilai yang disimpan.
4. Jenis-jenis data di Dart
Materi ini memperkenalkan beberapa tipe data penting:
String
int
double
num
bool
var
Mari kita bahas satu per satu.
5. String
String digunakan untuk menyimpan teks.
Contoh:
String name = "Ahmad";
Atau:
String message = "Hello World";
String harus ditulis menggunakan tanda kutip:
"Hello"
atau:
'Hello'
Keduanya valid.
Contoh:
String name = "Ahmad";
String city = 'Madiun';
Kenapa angka bisa menjadi String?
Perhatikan:
String age = "22";
Ini bukan angka 22, melainkan teks "22".
Sedangkan:
int age = 22;
adalah angka.
Perbedaannya sangat penting.
"22"
→ String
22
→ int
Misalnya:
print("22" + "10");
hasilnya:
2210
Karena keduanya adalah teks.
Sedangkan:
print(22 + 10);
hasilnya:
32
Karena keduanya adalah angka.
6. int
int digunakan untuk menyimpan bilangan bulat.
Contohnya:
int age = 22;
int score = 100;
int temperature = -5;
Semua merupakan bilangan bulat.
Yang penting:
22
100
-5
0
adalah integer.
Tetapi:
22.5
90.5
3.14
bukan integer.
Kesalahan umum
Misalnya:
int age = 22.5;
Ini salah.
Mengapa?
Karena 22.5 adalah angka desimal, sedangkan int hanya menerima bilangan bulat.
Begitu juga:
int age = "22";
salah karena "22" adalah String.
Jadi:
int age = 22; // benar
int age = 22.5; // salah
int age = "22"; // salah
7. double
double digunakan untuk menyimpan angka yang mempunyai nilai desimal.
Contoh:
double height = 170.5;
double price = 25.75;
double score = 90.5;
Berbeda dengan int.
int age = 22;
untuk bilangan bulat.
Sedangkan:
double score = 90.5;
untuk angka desimal.
Gambaran sederhananya:
int
↓
10
20
100
-5
double
↓
10.5
20.75
100.25
-5.5
8. num
Nah, num sedikit lebih fleksibel.
num dapat digunakan untuk menyimpan:
- bilangan bulat (
int) - bilangan desimal (
double)
Contoh:
num number = 30;
Bisa.
num number = 30.5;
Juga bisa.
Jadi:
num number = 30;
dan:
num number = 30.5;
sama-sama valid.
Kita bisa membayangkannya seperti:
num
/ \
/ \
int double
Jadi num cocok jika kita ingin menyimpan angka tetapi belum membutuhkan pembatasan apakah angka tersebut harus int atau double.
9. bool
bool adalah singkatan dari Boolean.
Boolean hanya mempunyai dua kemungkinan nilai:
true
atau:
false
Contoh:
bool isMarried = false;
atau:
bool isLoggedIn = true;
Contoh lain:
bool isStudent = true;
Artinya:
Apakah dia seorang siswa? Ya.
Sedangkan:
bool isStudent = false;
Artinya:
Apakah dia seorang siswa? Tidak.
Boolean sangat penting
Boolean akan sangat sering digunakan ketika kita belajar:
ifelse- kondisi
- perulangan
- validasi
- login
- status aplikasi
Contoh nanti:
if (isLoggedIn) {
print("Welcome");
}
Kalau:
isLoggedIn = true;
maka "Welcome" akan ditampilkan.
Jadi bool sangat penting untuk dipahami.
10. var
Sekarang bagian yang sering membingungkan pemula.
var memungkinkan Dart menentukan tipe data berdasarkan nilai yang kita berikan.
Contoh:
var name = "Ahmad";
Dart melihat:
"Ahmad"
adalah String.
Maka name dianggap sebagai String.
Contoh:
var age = 22;
Dart mengetahui bahwa 22 adalah int.
Contoh:
var score = 90.5;
Dart mengetahui bahwa 90.5 adalah double.
Contoh:
var isStudent = true;
Dart mengetahui bahwa itu bool.
Jadi:
var name = "Ahmad"; // String
var age = 22; // int
var score = 90.5; // double
var isStudent = true; // bool
11. Apakah var berarti tipenya bebas berubah?
Tidak. Ini poin penting.
Pemula kadang mengira:
var data = "Ahmad";
berarti nanti bebas mengubah menjadi angka:
data = 22;
Padahal tidak begitu.
Ketika Dart melihat:
var data = "Ahmad";
Dart menyimpulkan bahwa data bertipe String.
Jadi secara konsep:
var data = "Ahmad";
kemudian:
data = "Budi";
boleh.
Tetapi:
data = 22;
tidak boleh karena 22 adalah int.
Jadi var membantu kita menulis tipe secara lebih singkat, bukan berarti variabel tersebut bebas berganti tipe.
12. Perbedaan String, int, double, num, bool, dan var
Biar lebih mudah, lihat tabel ini:
| Tipe | Menyimpan | Contoh |
|---|---|---|
String | Teks | "Ahmad" |
int | Bilangan bulat | 22 |
double | Bilangan desimal | 22.5 |
num | int atau double | 22, 22.5 |
bool | Benar/salah | true, false |
var | Tipe ditentukan Dart dari nilai awal | var age = 22 |
Contoh lengkap:
String name = "Ahmad";
int age = 22;
double height = 170.5;
num score = 90.5;
bool isStudent = true;
var city = "Madiun";
13. Menggunakan variabel di dalam String
Ini melanjutkan materi sebelumnya.
Misalnya:
var name = "Ahmad";
Kita dapat memasukkannya ke String dengan $:
print("My name is $name");
Output:
My name is Ahmad
Contoh lebih lengkap:
var name = "Ahmad";
var age = 22;
print("My name is $name");
print("My age is $age");
Output:
My name is Ahmad
My age is 22
14. Bisa menggunakan banyak variabel sekaligus
Contohnya:
var name = "Ahmad";
var age = 22;
var city = "Madiun";
print("My name is $name, I am $age years old, and I live in $city.");
Output:
My name is Ahmad, I am 22 years old, and I live in Madiun.
Ini sangat berguna ketika membuat aplikasi karena kita sering perlu menampilkan data dinamis.
15. Apa itu constant?
Materi selanjutnya membahas constant.
Constant adalah nilai yang tidak boleh diubah setelah ditetapkan.
Dalam Dart kita menggunakan keyword:
const
Contoh:
const name = "Ahmad";
Setelah itu kita tidak boleh melakukan:
name = "Budi";
Karena name sudah menjadi constant.
16. Perbedaan variabel biasa dan const
Variabel biasa:
var name = "Ahmad";
name = "Budi";
print(name);
Output:
Budi
Nilainya boleh diubah.
Sedangkan:
const name = "Ahmad";
name = "Budi";
akan menghasilkan error.
Karena:
const → nilainya tidak boleh diubah
17. Mutable dan immutable
Ada istilah yang perlu kamu kenal:
Mutable
Artinya nilai dapat diubah.
Contoh:
var name = "Ahmad";
name = "Budi";
Nilainya berubah.
Immutable
Artinya nilai tidak dapat diubah.
Contoh:
const name = "Ahmad";
Kita tidak dapat mengganti nilai name.
Gambaran sederhananya:
var
↓
Ahmad
↓
Budi
↓
Citra
Nilainya bisa berubah.
Sedangkan:
const
↓
Ahmad
↓
🔒 tidak dapat diubah
18. Kapan menggunakan const?
Gunakan const ketika kamu memang mempunyai nilai yang harus tetap.
Misalnya:
const pi = 3.14159;
atau nilai konfigurasi yang memang ditentukan sejak awal.
Tetapi jangan berpikir semua variabel harus menggunakan const.
Jika nilainya memang bisa berubah selama program berjalan, gunakan variabel yang sesuai.
19. Aturan penamaan variabel
Materi juga menjelaskan naming convention.
Dalam Dart, gaya penamaan variabel yang umum digunakan adalah:
lowerCamelCase
Contohnya:
firstName
lastName
fullName
phoneNumber
studentName
totalPrice
20. Apa itu lowerCamelCase?
Mari kita lihat:
fullName
Terdiri dari:
full + Name
Kata pertama:
full
dimulai dengan huruf kecil.
Kata kedua:
Name
huruf pertamanya menggunakan huruf kapital.
Inilah yang disebut lowerCamelCase.
Contoh:
firstName
fatherName
phoneNumber
totalPrice
studentAddress
21. Jangan menggunakan spasi
Kita tidak boleh membuat nama variabel seperti:
var first name = "Ahmad";
Karena nama variabel tidak boleh mengandung spasi.
Gunakan:
var firstName = "Ahmad";
22. Jangan memulai nama variabel dengan angka
Contoh seperti ini tidak boleh:
var 1name = "Ahmad";
Gunakan:
var name1 = "Ahmad";
atau:
var firstName = "Ahmad";
23. Gunakan nama yang jelas
Jangan membuat nama variabel yang membingungkan.
Misalnya:
var x = 22;
Secara teknis bisa, tetapi orang lain yang membaca kode akan bertanya:
xitu apa?
Lebih baik:
var age = 22;
Karena langsung jelas bahwa age berarti umur.
Contoh:
Kurang jelas:
var a = 50000;
Lebih jelas:
var price = 50000;
Kurang jelas:
var x = "Ahmad";
Lebih jelas:
var name = "Ahmad";
Kode yang baik bukan hanya kode yang bisa berjalan, tetapi juga kode yang mudah dibaca manusia.
24. Contoh program lengkap
Sekarang kita gabungkan semua yang dipelajari.
void main() {
String name = "Ahmad";
int age = 22;
double height = 170.5;
num score = 90.5;
bool isStudent = true;
print("Name: $name");
print("Age: $age");
print("Height: $height");
print("Score: $score");
print("Student: $isStudent");
}
Output:
Name: Ahmad
Age: 22
Height: 170.5
Score: 90.5
Student: true
25. Contoh menggunakan var
Program yang sama bisa dibuat lebih singkat:
void main() {
var name = "Ahmad";
var age = 22;
var height = 170.5;
var score = 90.5;
var isStudent = true;
print("Name: $name");
print("Age: $age");
print("Height: $height");
print("Score: $score");
print("Student: $isStudent");
}
Dart akan menentukan tipe masing-masing berdasarkan nilai awal.
26. Kesalahan yang sering dilakukan pemula
Salah 1 — Memasukkan String ke int
int age = "22";
❌ Salah.
Yang benar:
int age = 22;
Salah 2 — Memasukkan desimal ke int
int score = 90.5;
❌ Salah.
Gunakan:
double score = 90.5;
Salah 3 — Menganggap var bebas berganti tipe
var name = "Ahmad";
name = 22;
❌ Tidak benar.
Karena name sudah disimpulkan sebagai String.
Salah 4 — Mengubah const
const name = "Ahmad";
name = "Budi";
❌ Tidak boleh.
Salah 5 — Penamaan dengan spasi
var first name = "Ahmad";
❌ Salah.
Gunakan:
var firstName = "Ahmad";
27. Cara berpikir paling mudah
Kalau kamu masih bingung membedakan semuanya, gunakan pola ini:
Apakah datanya teks?
↓
String
↓
"Ahmad"
Apakah datanya angka bulat?
↓
int
↓
22
Apakah datanya angka desimal?
↓
double
↓
22.5
Apakah bisa berupa angka bulat ATAU desimal?
↓
num
↓
22 / 22.5
Apakah hanya benar atau salah?
↓
bool
↓
true / false
Dan:
Tidak ingin menuliskan tipe secara eksplisit?
↓
var
↓
Dart menentukan tipe dari nilai awal
28. Inti materi yang harus kamu ingat
Kalau kamu ingin menguasai materi video ini, hafalkan konsepnya, bukan sekadar sintaksnya:
Variabel
var name = "Ahmad";
→ tempat menyimpan data.
String
String name = "Ahmad";
→ menyimpan teks.
int
int age = 22;
→ bilangan bulat.
double
double score = 90.5;
→ bilangan desimal.
num
num number = 20.5;
→ bisa menyimpan int maupun double.
bool
bool isLogin = true;
→ hanya true atau false.
var
var age = 22;
→ Dart menentukan tipe berdasarkan nilai awal.
const
const pi = 3.14;
→ nilai tidak dapat diubah.
String interpolation
print("My name is $name");
→ memasukkan nilai variabel ke dalam String.
Naming convention
firstName
phoneNumber
totalPrice
studentName
→ gunakan lowerCamelCase.
🧠 Latihan kecil
Coba pahami kode berikut tanpa menjalankannya terlebih dahulu:
void main() {
var name = "Budi";
var age = 20;
double height = 175.5;
bool isStudent = true;
print("Name: $name");
print("Age: $age");
print("Height: $height");
print("Student: $isStudent");
}
Sebelum melihat output, coba tebak:
- Apa isi
name? - Apa tipe data
age? - Mengapa
heightmenggunakandouble? - Apa kemungkinan nilai dari
isStudent? - Apa fungsi
$namedi dalamprint()?
Kalau lima pertanyaan tersebut sudah terasa mudah, berarti konsep dasar variabel Dart dari tutorial ini sudah mulai kamu pahami.