Dart Object Oriented Programming, OOP adalah sudut pandang bahsa pemrograman yang berkonsep ‘Object”
object adalah data yang berisi field/properties/attributes dan method / function/ behvior.
semua data di dart adalah Object.
Class di Dart
untuk membuat class, kita bisa menggunakan kata kunci class. Penamaan class biasa menggunakan format PascalCase
Object di Dart
Object adalah hasil instansiasi dari sebuah class. Untuk membuat object kita bisa menggunakan nama class lalu diikuti dengan kurung ()
Field di Dart
Fields/Properties/Attributes adalah data yang bisa kita sisipkan ke dalam object.
sebelum bisa memasukkan data di fieds, kita harus mendeklarasikan data apa saja yang dimiliki onject tersebut di dalam deklarasi calss-nya
membuat field sama seperti membuat variable namun ditempatkan di block class
field wajib dimasukkan nilainya, kecuali field yang nullable.
Memanipulasi Field
jika bukan jenisnya final, maka field bisa diubah nilainya
Method di Dart
selain menambahkan field, kita juga menambahkan method ke object.
method adalah function yang terdapat di dalam class
Method Expression Body
bentuk method yang lebih ringkas, bisa dalam satu baris saja.
Expression body mirip ketika membuat anonymous function
Extension Method
adalah cara menambah method terhadap Class yang sudah ada, tanpa harus mengubah Class tersebut.
membuat extension method hampir mirip dengan membuat class, namun kita perlu menggunakan kata kunci extension diikuti nama extension lalu diikuti kata kunci on dan nama Class yang ingin kita tambahkan extension method nya.