Okay gaes, Data Class itu simple nya adalah Class yang menyimpan model data dari suatu objek. Suatu Data Class tidak bergantung pada kelas lainnya. Umunya Data Class digunakan untuk koneksi ke Server atau Database.
Berikut adalah contoh bahasa alien dari Data Class:
data class Person(
  val name: String?,
  val age: Int?,
  val email: String
)
Arti dari bahasa alien diatas adalah, didefinisikan Data Class yang diberi nama Person yang didalamnya terdapat 3 parameter, yaitu name, age, dan email. Jadi ketika kita memanggil Data Class Person, maka kita diwajibkan untuk mengisi name, age, dan email. Hal ini mempermudah untuk mengatur data agar tetap dalam 1 kesatuan, sehingga mudah untuk dipindahkan ataupun digunakan untuk mengakses Server atau Database.
Nah, untuk dapat mengirimkan Data Class ini, kita membutuhkan Parcelable. Apa itu Parcelable? Jadi simple nya Parcelable itu adalah interface untuk mengirimkan objek dari sebuah activity ke activity yang lain. Parcelable biasa digunakan untuk membungkus Data Class agar mudah untuk dikirimkan.
Berikut adalah penggunaan Parcelable pada sebuah Data Class:
data class Person(
val name: String?,
val age: Int?,
val email: String?
) : Parcelable
Selesai menuliskan bahasa alien diatas, maka akan muncul tanda merah, jangan risau jangan panik, klik pada bagian tanda merah lalu tekan alt+enter dan pilih “Add Parcelable Implementation”, dan kemudian bahasa alien lainnya akan ditambahkan secara otomatis, kemudian jadi deh..Jadi penjelasan mengenai bahasa alien diatas adalah Data Class Person dibungkus dengan Parcelable, sehingga untuk memindahkan Person ke antar Activity menjadi lebih mudah.
Untuk Passing ke activity lain, cukup tambahkan EXTRAS dan passing dengan Intent. Akan menjadi seperti berikut:
val intent = Intent(this, AnotherActivity::class.java)
intent.putExtra(“extra_person”, person)
Catatan, person adalah Data Class Person yang telah diisikan data.
Untuk Retrieving data, cukup diterima dengan Intent juga, menjadi seperti berikut :
val item = intent.getParcelableExtra(“extra_person”)
Gitu aja sih, dahlah gue mau kasih makan kucing gue dulu.