0Pricing
Dart Academy · Pelajaran

Polimorfisme melalui Tipe Bersama

Memprogram berdasarkan tipe, bukan class

Polimorfisme melalui Tipe Bersama adalah pelajaran Dart Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Dart Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Dart Academy mencakup 4 pelajaran total.

Makna Polimorfisme

Polimorfisme memungkinkan satu tipe menggantikan banyak tipe. Anda memanggil sebuah metode pada tipe bersama, lalu setiap objek merespons dengan caranya sendiri.

Memprogram untuk Sebuah Tipe

Alih-alih menyebutkan kelas konkret, Anda bergantung pada supertyipe bersama. Kode Anda dapat bekerja dengan apa pun yang sesuai dengan bentuk tersebut.

void render(Shape s) => print(s.area());

Tipe Dasar Bersama

Mulailah dengan kelas dasar abstrak yang mendeklarasikan metode umum yang akan disediakan secara berbeda oleh setiap subtipe.

abstract class Shape {
  double area();
}

Banyak Subtipe, Satu Bentuk

Setiap subtipe mengimplementasikan area dengan caranya sendiri, tetapi semuanya tetap diperlakukan sebagai Shape.

class Circle extends Shape {
  double area() => 28.3;
}

Pengiriman Dinamis

Saat runtime, Dart memilih metode milik objek sebenarnya. Pengiriman ini berarti pemanggilan yang sama menjalankan kode berbeda untuk setiap objek.

Shape s = Circle();
s.area(); // runs Circle.area

Daftar Berisi Berbagai Bentuk

Karena memiliki tipe yang sama, Anda dapat mengumpulkan objek campuran dalam satu daftar dan memperlakukannya secara seragam.

List<Shape> shapes = [Circle(), Square()];

Perulangan Secara Polimorfik

Satu perulangan menangani setiap bentuk. Anda tidak perlu membuat percabangan berdasarkan kelas konkret; area yang tepat akan langsung dijalankan.

for (var s in shapes) {
  print(s.area());
}

Terbuka untuk Ekstensi

Tambahkan subtipe Shape yang benar-benar baru nanti, dan perulangan yang sudah ada akan langsung menggunakannya. Polimorfisme menjaga kode tetap terbuka untuk berkembang.

class Triangle extends Shape {
  double area() => 12.0;
}

Antarmuka Bekerja dengan Cara yang Sama

Tipe bersama juga dapat berasal dari implementasi. Kelas apa pun yang mengimplementasikan antarmuka dapat langsung digunakan oleh kode yang sama.

void log(Printable p) => p.printOut();

Tidak Perlu Pemeriksaan Tipe

Kode polimorfik yang baik jarang menggunakan pemeriksaan tipe. Tipe bersama sudah menjamin bahwa metode tersebut ada, sehingga logika tetap bersih.

Mengapa Ini Penting

Polimorfisme menghilangkan rangkaian if-else dan switch yang panjang serta berulang. Anda menulis kode fleksibel yang menyesuaikan diri dengan tipe baru tanpa perlu diedit. 🌱

Pemeriksaan Singkat

Satu pertanyaan singkat tentang polimorfisme.

Ringkasan

Polimorfisme berarti memprogram untuk tipe bersama, sementara setiap objek berperilaku dengan caranya sendiri. Polimorfisme membuat kode tetap fleksibel dan terbuka untuk subtipe baru. ✨

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Polimorfisme melalui Tipe Bersama” gratis?

Ya — teks lengkap “Polimorfisme melalui Tipe Bersama” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Dart Academy, upgrade ke CoddyKit PRO. Kursus Dart Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Polimorfisme melalui Tipe Bersama”?

Memprogram berdasarkan tipe, bukan class Kamu berlatih Dart Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Dart Academy?

Tidak diperlukan pengalaman sebelumnya. Dart Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “Polimorfisme melalui Tipe Bersama” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Dart Academy ini?

Ya. Setiap pelajaran Dart Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Class Abstrak dan Metode Abstrak
  2. Interface Implisit dan implements
  3. Polimorfisme melalui Tipe Bersama
  4. Komposisi daripada Pewarisan
← Kembali ke Dart Academy