1. Pengenalan Bahasa Dart
Dart adalah bahasa pemrograman modern berorientasi objek (Object-Oriented Programming / OOP), bertipe data ketat (strongly typed), dan bersifat open-source yang dikembangkan oleh Google (diciptakan oleh Lars Bak dan Kasper Lund pada tahun 2011).
┌──────────────────────────────────────────────┐
│ BAHASA PEMROGRAMAN DART │
└──────────────────────┬───────────────────────┘
│
┌────────────────────────────────┼────────────────────────────────┐
▼ ▼ ▼
┌───────────────────────┐ ┌───────────────────────┐ ┌───────────────────────┐
│ FLUTTER MOBILE │ │ WEB APPS │ │ SERVER & DESKTOP │
│ iOS & Android Native │ │ Kompilasi ke JS & │ │ Windows, macOS, Linux,│
│ 60/120 FPS Rendering │ │ WebAssembly modern │ │ REST API Backend │
└───────────────────────┘ └───────────────────────┘ └───────────────────────┘
2. Keunggulan & Karakteristik Utama Dart
- Dua Mode Kompilasi: JIT (Just-In-Time) untuk fitur Stateful Hot Reload saat penulisan kode, dan AOT (Ahead-Of-Time) untuk rilis aplikasi berkecepatan tinggi.
- Sound Null Safety: Mencegah error fatal null pointer sejak masa kompilasi kode.
- Multiplatform: Satu basis kode dapat dijalankan di Android, iOS, Web, Windows, macOS, dan Linux.
3. Struktur Dasar & Tipe Data Dart
void main() {
// Tipe Data Dasar
int umur = 17;
double nilai = 88.5;
String nama = "Ahmad Fauzi";
bool isLulus = true;
// Type Inference & Konstanta
var sekolah = "SMK Negeri 1";
const double pi = 3.14159;
// String Interpolation
print("Nama: $nama, Umur: $umur tahun, Nilai: $nilai");
}
4. Koleksi Data: List, Map, & Set
| Koleksi | Karakteristik | Sintaks Contoh |
|---|---|---|
| List | Kumpulan data terurut dengan indeks (mulai dari 0). | List<String> mapel = ["TJKT", "DART"]; |
| Map | Pasangan Kunci dan Nilai (Key-Value), mirip JSON. | Map<String, dynamic> user = {"nama": "Budi", "skor": 95}; |
| Set | Kumpulan nilai unik tanpa ada duplikasi data. | Set<int> nomor = {10, 20, 30}; |
5. Pemrograman Berorientasi Objek (OOP)
class Siswa {
String nama;
String kelas;
int nilai;
Siswa(this.nama, this.kelas, this.nilai);
void info() {
print("Siswa: $nama | Kelas: $kelas | Nilai: $nilai");
}
}
void main() {
var s1 = Siswa("Rizky Pratama", "X-TJKT-2", 88);
s1.info();
}
🎯 Rangkuman Pembelajaran:
- Dart adalah bahasa masa depan untuk pengembangan aplikasi multiplatform cross-platform (Flutter).
- Struktur sintaksnya yang rapi, modern, dan didukung fitur Null Safety memudahkan siswa SMK mempelajari logika pemrograman profesional.