๐Ÿ’ก Ikuti kami untuk mendapatkan update menarik lainnya Follow Now!

Tutorial Dart: Memahami Sintaks Dasar

Di artikel ini kita akan membahas tentang sintaks dasar bahasa pemrograman Dart seperti variabel, tipe data, fungsi, dan sebagainya.
Tutorial Dart: Memahami Sintaks Dasar
Daftar Isi

Pada artikel sebelumnya kita telah berhasil memasang Dart SDK dan IDE pada komputer, dan yang akan kita bahas selanjutnya adalah sintaks dasar pada bahasa pemrograman Dart seperti membuat komentar, mencetak pesan, membuat variabel, dan lain-lain. Baiklah Tak perlu berlama lama mari langsung masuk ke tutorialnya.

Membuat program Hello world

Pada langkah ini kita akan membuat program sederhana yang menampilkan pesan "Hello World" pada terminal.

  1. Langkah pertama yang harus kalian lakukan adalah membuka aplikasi IntelliJ IDE.
  2. Klik New Project.
  3. Pilih SDK version dan untuk sample content gunakan Console Application, kemudian klik Next.


  4. Kemudian berikan Nama Project tersebut dan pilih lokasi untuk menyimpan Project, lalu Klik Create.



  5. Setelah selesai maka akan terlihat jendela baru terbuka dengan menampilkan project baru yang siap digunakan.
    Perlu diperhatikan apabila folder bin tidak otomatis dibuat kalian bisa membuat ulang project dengan menggunakan nama yang tidak mengandung spasi.

  6. Dapat dilihat sudah tersedia contoh kode yang siap digunakan pada lokasi bin/dart_dasar.dart kalian dapat menjalankan kode tersebut dengan menekan Ctrl+Shift+f10 bisa juga dengan klik kanan kemudian klik Run 'nama_file.dart' atau dengan menekan tombol yang terdapat pada pojok kanan atas.
  7. Perhatikanlah kode tersebut dapat dilihat itu merupakan perintah yang berfungsi untuk mencetak teks.
    import 'package:dart_dasar/dart_dasar.dart' as dart_dasar;
    
    void main(List<String> arguments) {
      print('Hello world: ${dart_dasar.calculate()}!');
    }
  8. Jika dijalankan outputnya akan seperti berikut.
    Hello world: 42!

WOW kalian telah berhasil membuat project pertama menggunakan Dart dan langkah selanjutnya kita akan berkenalan dengan sintaks-sintaks dasar pada Dart.

Komentar

Komentar adalah elemen penting dalam bahasa pemrograman yang membantu pengembang dalam dokumentasi, pemahaman kode, dan kolaborasi. Dalam bahasa pemrograman Dart, komentar digunakan untuk memberikan penjelasan, informasi, atau catatan terkait kode yang sedang ditulis. 

Jenis-jenis Komentar dalam Dart

Dart mendukung beberapa jenis komentar, dan masing-masing memiliki kegunaan dan sintaksisnya sendiri. Berikut adalah tiga jenis komentar utama dalam Dart:

  1. Komentar Satu Baris: Komentar satu baris digunakan untuk menambahkan catatan atau penjelasan singkat yang hanya berlaku untuk satu baris kode. Komentar ini dimulai dengan tanda dua garis miring (//) dan berakhir pada akhir baris.

    Contoh:

    // Ini adalah contoh komentar satu baris
    var nama = 'John';
    
  2. Komentar Multi-baris (Komentar Blok): Komentar multi-baris digunakan untuk penjelasan yang lebih panjang dan dapat mencakup beberapa baris kode. Komentar ini dimulai dengan tanda /* dan diakhiri dengan */.

    Contoh:

    /*
    Ini adalah contoh komentar multi-baris
    yang mencakup beberapa baris kode.
    */
    var usia = 30;
    
  3. Dokumentasi Komentar (Doc Comments): Dokumentasi komentar digunakan untuk membuat dokumentasi yang lebih formal untuk kode Kalian. Komentar ini dimulai dengan tiga tanda garis miring (///) dan biasanya digunakan untuk menghasilkan dokumentasi otomatis menggunakan alat seperti DartDoc.

    Contoh:

    /// Ini adalah contoh dokumentasi komentar.
    /// Fungsi ini mengembalikan nilai penjumlahan dua angka.
    int tambah(int a, int b) {
      return a + b;
    }
    

Variabel dan Tipe Data

Variabel adalah salah satu konsep paling fundamental dalam pemrograman, termasuk dalam bahasa pemrograman Dart. Dalam Dart, variabel digunakan untuk menyimpan dan mengelola data. 

Jenis-Jenis Tipe Data

Dart adalah bahasa pemrograman yang kuat dalam hal tipe data. Variabel dalam Dart dapat memiliki tipe data yang berbeda, yang dapat menggambarkan jenis nilai yang dapat disimpan di dalamnya. Berikut beberapa tipe data umum dalam Dart:

  1. int: Digunakan untuk menyimpan bilangan bulat. Contoh: int age = 25;
  2. num: Digunakan untuk bilangan bulat dan pecahan.
  3. double: Menggambarkan bilangan pecahan (floating-point). Contoh: double price = 19.99;
  4. String: Digunakan untuk menyimpan teks. Contoh: String name = "John Doe";
  5. bool: Untuk menyimpan nilai kebenaran (true atau false). Contoh: bool isActive = true;
  6. List: Digunakan untuk menyimpan koleksi nilai dalam urutan tertentu. Contoh: List<int> numbers = [1, 2, 3, 4, 5];
  7. Map: Untuk menyimpan pasangan kunci-nilai. Contoh: Map<String, dynamic> person = {"name": "Alice", "age": 30};
  8. dynamic: Variabel dengan tipe dynamic dapat mengubah tipe datanya selama program berjalan. Contoh: dynamic variable = 42;

Deklarasi Variabel

Dalam Dart, Kalian dapat mendeklarasikan variabel dengan cara berikut:

// Deklarasi variabel dengan tipe data yang disebutkan secara eksplisit
int age = 25;

// Dart dapat mendefinisikan tipe datanya secara otomatis
var name = "John Doe";

// Menggunakan tipe data dynamic
dynamic variable = 42;

Variabel yang dideklarasikan dengan tipe data var akan mendefinisikan tipe datanya berdasarkan nilai yang diberikan. Jika Kalian ingin tipe datanya tetap, Kalian dapat mendeklarasikan tipe data secara eksplisit seperti pada contoh pertama.

Scope Variabel

Variabel dalam Dart memiliki cakupan (scope) yang menggambarkan area program di mana variabel tersebut dapat diakses. Ada dua jenis cakupan utama dalam Dart:

  1. Cakupan Lokal (Local Scope): Variabel yang dideklarasikan dalam fungsi atau blok kode tertentu hanya dapat diakses di dalam fungsi atau blok tersebut.
    void main() {
      int x = 10; // Variabel x hanya dapat diakses di dalam fungsi main
      print(x);
    }
    
  2. Cakupan Global (Global Scope): Variabel yang dideklarasikan di luar fungsi utama memiliki cakupan global dan dapat diakses dari mana saja dalam program.
    int y = 20; // Variabel y dapat diakses dari mana saja dalam program
    
    void main() {
      print(y); // Mengakses variabel y dari dalam fungsi main
    }
    

Praktik Terbaik Penulisan Variabel

Beberapa praktik terbaik dalam penggunaan variabel dalam Dart meliputi:

  • Memberikan nama yang deskriptif: Berikan nama yang jelas dan deskriptif untuk variabel Kalian agar mudah dimengerti oleh developer lain.
  • Gunakan tipe data yang sesuai: Pilih tipe data yang sesuai dengan nilai yang akan Kalian simpan dalam variabel.
  • Hindari variabel global yang berlebihan: Gunakan variabel global dengan bijak karena mereka dapat mempersulit pemeliharaan dan debugging.
  • Inisialisasi variabel sebelum digunakan: Pastikan variabel diinisialisasi dengan nilai yang sesuai sebelum digunakan.

Variabel adalah dasar dari hampir setiap program dalam bahasa pemrograman, termasuk Dart. Memahami cara menggunakan variabel dengan benar adalah langkah penting dalam pengembangan perangkat lunak yang efektif dan efisien dalam Dart. Dengan pemahaman yang baik tentang variabel, Kalian dapat membuat program yang lebih kuat dan mudah dipelihara dalam bahasa pemrograman Dart.

Exception 

Exception handling adalah aspek penting dalam bahasa pemrograman, termasuk dalam Dart. Ini memungkinkan pengembang untuk menangani situasi yang tidak terduga atau kesalahan yang mungkin terjadi selama eksekusi program dengan baik. Dart menyediakan mekanisme yang kuat untuk menangani exception, memungkinkan pengembang untuk menulis kode yang dapat merespons kesalahan dengan terkendali dan terorganisir.

Apa itu Exception?

Exception adalah peristiwa yang tidak normal yang terjadi selama eksekusi program, yang mengganggu alur kode normal. Peristiwa-peristiwa ini dapat disebabkan oleh berbagai faktor, termasuk input yang tidak valid, kondisi yang tidak terduga, atau kesalahan saat runtime. Dalam Dart, exception adalah objek yang mewakili situasi yang tidak normal tersebut. Ketika sebuah exception terjadi, program dapat mengambil tindakan tertentu untuk menanganinya dan pulih dengan baik.

Jenis-Jenis Exception dalam Dart

Dart memiliki hierarki kelas exception yang mewakili berbagai jenis kondisi yang tidak normal. Berikut adalah beberapa kelas exception yang paling umum digunakan:

  1. Exception: Kelas dasar untuk semua exception dalam Dart. Kalian juga dapat membuat exception kustom dengan mengembangkan kelas ini.
  2. Error: Mewakili kesalahan program serius yang seharusnya tidak ditangani oleh blok try-catch biasa. Biasanya ini mengindikasikan masalah yang tidak bisa diperbaiki.
  3. FormatException: Dilemparkan ketika terjadi kesalahan dalam format string, misalnya saat mencoba mengonversi string menjadi tipe data yang tidak sesuai.
  4. NoSuchMethodError: Terjadi ketika mencoba memanggil metode yang tidak ada pada objek.
  5. NullThrownError: Terjadi ketika mencoba melempar null ke sebuah eksepsi.

Menggunakan Try-Catch untuk Menangani Exception

Pada Dart, kita menggunakan blok try dan catch untuk menangani exception. Berikut adalah contoh penggunaan try-catch:

try {
  // Potensi untuk terjadi exception
  var result = 10 ~/ 0; // Pembagian oleh nol akan melempar exception
  print('Hasil: $result');
} catch (e) {
  print('Terjadi exception: $e');
}

Pada contoh di atas, pembagian oleh nol akan melempar exception, dan blok catch akan menangkapnya dan mencetak pesan kesalahan.

Apabila tidak menggunakan try and catch maka output akan menampilkan pesan error seperti berikut.



Penggunaan Blok Finally

Selain blok try dan catch, Dart juga mendukung blok finally yang dapat digunakan untuk menjalankan kode yang harus dieksekusi, terlepas dari apakah exception terjadi atau tidak. Contoh:

try {
  // Potensi untuk terjadi exception
  var result = 10 ~/ 0; // Pembagian oleh nol akan melempar exception
  print('Hasil: $result');
} catch (e) {
  print('Terjadi exception: $e');
} finally {
  print('Ini akan selalu dijalankan.');
}

Penanganan exception adalah bagian penting dari pengembangan perangkat lunak yang andal dan aman. Dalam Dart, kita dapat menggunakan blok try-catch untuk mengatasi situasi yang tidak normal dan menjalankan kode yang sesuai sebagai respons. 

Function

Dalam pemrograman, fungsi adalah blok kode yang melakukan tugas tertentu dan dapat dipanggil dari bagian lain dalam program. Fungsi memungkinkan pemrogram untuk mengelompokkan sejumlah pernyataan menjadi satu unit yang dapat digunakan berulang kali. Dengan demikian, fungsi membantu dalam mengurangi kerumitan kode, meningkatkan keterbacaan, dan mempermudah pemeliharaan program. Jika kalian perhatikan terdapat fungsi bawaan saat kita membuat program dart pertama kali yaitu fungsi Main() fungsi ini adalah fungsi utama pada Dart, saat program pertama kali dijalankan maka progmram akan mengeksekusi fungsi tersebut.

Mendefinisikan Fungsi dalam Dart

Dalam Dart, sebuah fungsi terdiri dari beberapa elemen utama:

  1. Tipe Kembalian (Return Type): Ini adalah tipe data dari nilai yang dikembalikan oleh fungsi. Jika fungsi tidak mengembalikan nilai, tipe kembalian yang digunakan adalah void.

  2. Nama Fungsi: Nama yang digunakan untuk memanggil fungsi.

  3. Parameter (Opsional): Parameter adalah nilai yang diterima oleh fungsi sebagai input. Mereka digunakan dalam pengolahan fungsi. Sebuah fungsi dapat memiliki nol atau lebih parameter.

Contoh fungsi sederhana dalam Dart:

int tambahkan(int a, int b) {
  return a + b;
}

Dalam contoh di atas, kita mendefinisikan fungsi tambahkan() yang menerima dua parameter a dan b, dan mengembalikan hasil penjumlahan keduanya dengan tipe kembalian int.

Memanggil Fungsi dalam Dart

Setelah fungsi didefinisikan, kita dapat memanggilnya dalam program kita. Untuk memanggil sebuah fungsi, kita gunakan nama fungsi tersebut diikuti dengan argumen yang sesuai.

void main() {
  int hasil = tambahkan(5, 3); // Memanggil fungsi tambahkan()
  print('Hasil penjumlahan adalah: $hasil');
}

Dalam contoh di atas, kita memanggil fungsi tambahkan() dengan memberikan argumen 5 dan 3, dan menyimpan hasil penjumlahannya dalam variabel hasil. Kemudian, kita mencetak hasilnya ke konsol.

Fungsi Tidak Dapat Dipanggil (Void Functions)

Tidak semua fungsi mengembalikan nilai. Fungsi yang tidak mengembalikan nilai biasanya memiliki tipe kembalian void dan digunakan untuk melakukan tugas tertentu tanpa menghasilkan nilai balik. Contoh:

void sapa() {
  print('Halo, Dunia!');
}

Fungsi sapa() dalam contoh di atas hanya mencetak pesan ke konsol tanpa mengembalikan nilai apapun.

Jenis-Jenis Fungsi dalam Dart

Dart mendukung beberapa jenis fungsi, tergantung pada karakteristik dan penggunaannya. Berikut adalah beberapa jenis fungsi yang umum digunakan dalam Dart:

1. Fungsi Tanpa Nilai Kembalian (Void Functions)

Fungsi jenis ini tidak mengembalikan nilai. Mereka digunakan untuk melakukan tindakan tertentu tanpa menghasilkan hasil yang perlu dikembalikan. Contoh:

void sapa() {
  print('Halo, Dunia!');
}
2. Fungsi dengan Nilai Kembalian (Value-Returning Functions)

Fungsi jenis ini mengembalikan nilai sesuai dengan tipe kembaliannya. Contoh:

int tambahkan(int a, int b) {
  return a + b;
}
3. Fungsi Anonim (Anonymous Functions)

Fungsi anonim, juga dikenal sebagai fungsi lambda atau closure, adalah fungsi tanpa nama yang dapat digunakan dalam ekspresi atau sebagai argumen fungsi lainnya. Contoh:

var hitungKuadrat = (int x) => x * x;
4. Fungsi Rekursif (Recursive Functions)

Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri. Ini berguna untuk menyelesaikan masalah yang dapat dipecahkan dalam beberapa langkah yang serupa. Contoh:

int faktorial(int n) {
  if (n == 0) {
    return 1;
  } else {
    return n * faktorial(n - 1);
  }
}
5. Fungsi Generik (Generic Functions)

Fungsi generik adalah fungsi yang dapat menerima berbagai jenis parameter tanpa menggantinya. Mereka berguna ketika Anda ingin menulis kode yang bekerja dengan berbagai jenis data. Contoh:

T ambilNilai<T>(T nilai) {
  return nilai;
}

Konstanta dan Final

Konstanta dan variabel final adalah alat yang berguna dalam Dart untuk menyimpan nilai yang tidak dapat diubah selama eksekusi program. Variabel final cocok digunakan ketika kalian ingin menginisialisasi nilai pada saat runtime dan nilainya tidak berubah setelahnya. Konstanta lebih sesuai untuk nilai-nilai yang sudah diketahui sebelumnya dan tidak akan berubah selama program berjalan. Dengan menggunakan konstanta dan variabel final, Kalian dapat meningkatkan kejelasan dan keamanan kode Anda dalam Dart.

Variabel Final

Variabel final adalah variabel yang nilainya tetap setelah pertama kali diinisialisasi. Setelah nilai final ditetapkan, Anda tidak dapat mengubahnya. Variabel final umumnya digunakan untuk menyimpan data yang tidak perlu berubah selama eksekusi program.

Contoh penggunaan variabel final:

final int tahunLahir = 1990;
final String nama = 'John Doe';

Variabel final harus diinisialisasi tepat satu kali. Setelah itu, Anda hanya dapat membacanya.

Konstanta

Konstanta adalah variabel yang nilainya tetap selama program berjalan dan tidak dapat diubah kapan pun. Konstanta biasanya digunakan untuk nilai-nilai yang sudah diketahui sebelumnya dan tidak akan berubah selama eksekusi program.

Contoh penggunaan konstanta:

const double pi = 3.14159265359;
const String namaHari = 'Senin';

Konstanta harus diberi nilai saat dideklarasikan, dan nilainya tidak dapat diubah setelahnya. Konstanta Dart harus bertipe data.

Perbedaan antara Variabel Final dan Konstanta

  1. Inisialisasi: Variabel final harus diinisialisasi tepat satu kali saat dideklarasikan. Konstanta juga harus diinisialisasi saat dideklarasikan, tetapi perbedaannya adalah bahwa konstanta diinisialisasi pada saat kompilasi, sedangkan variabel final diinisialisasi pada saat runtime.

  2. Nilai Tetap: Variabel final nilainya tetap setelah diinisialisasi, tetapi nilai konstanta tetap selama program berjalan dan tidak dapat diubah kapan pun.

  3. Penggunaan: Variabel final digunakan untuk menyimpan nilai yang hanya perlu diinisialisasi sekali dan tidak akan berubah. Konstanta digunakan untuk nilai-nilai yang sudah diketahui sebelumnya dan dijamin tidak akan berubah.

Kapan Menggunakan Variabel Final dan Konstanta?

  • Gunakan Variabel Final ketika Anda perlu menyimpan nilai yang hanya perlu diinisialisasi sekali dan tidak berubah selama eksekusi program. Contoh: tanggal lahir seseorang.

  • Gunakan Konstanta ketika Anda memiliki nilai yang sudah diketahui sebelumnya dan tidak akan berubah selama program berjalan. Contoh: nilai matematis seperti pi atau nama-nama hari dalam seminggu.

Wow, selamat kalian telah belajar tentang sintaks dasar pada Bahasa pemrograman Dart, pada artikel selanjutnya kita akan membahas tentang Control Flow pada bahasa pemrograman Dart.
Terimakasih telah membaca hingga akhir semoga artikel ini bermanfaat ๐Ÿ”ฅ.
Baca juga :

About the Author

Need more coffee ☕, If you want to support me to pay domain, you can donate via Donate or Trakteer

Posting Komentar

Komentar blog
Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.