Mencoba Bahasa Pemograman Dart

Web Artisan
beberapa minggu ini saya tertarik dengan Dart.
belajar dart menurut saya tidak terlalu sulit. mungkin karena sebelum-nya saya udah terbiasa dengan OOP di PHP.
Kenapa saya belajar Dart ?
alasan saya belajar Dart adalah
- Pertama, saya adalah orang yang suka penasaran terhadap hal hal baru.
- Kedua, saya tertarik dengan Mobile Development.
- Ketiga, saya ingin membuat aplikasi mobile dengan flutter.
ketiga poin di atas adalah alasan saya mengapa tertarik belajar dart.
nah pada tulisan ini juga saya akan sharing pemahaman saya tentang dart.
Object Oriented Programming Language (OOP)
dart memang sejak awal di relase itu di desain untuk menjadi pemograman berorientasi objek atau OOP. seperti pemograman OOP lainnya. dart juga mendukung 4 pliar OOP seperti Inheritance, Encapsulation, Abstraction, Polymorphism
Di dalam tidak terdapat access modifier public , private dan protected. sebagai gantinya, dart menggunakan syntax _ (underscore) untuk membuat sebuah method bersifat private dan itu pun berbasis file bukan berbasis class.
Fitur Extension
di dalam dart terdapat fitur extension. fitur extension ini berguna ketika kita ingin menambahkan fungsionalitas sebuah class tanpa perlu merubah struktur class.
sebagai contoh. misalnya saya mempunya class Person.
class Person {
String? message;
int? age;
Person(this.message, this.age);
}
misalnya dengan class person tersebut. saya ingin menambahkan method getPerson(). nah dengan fitur extension ini kita bisa menambahkan method getPerson() tanpa merubah class Person tersebut.
class Person {
String? name;
int? age;
Person(this.name, this.age);
}
extension GetPerson on Person {
String getPerson(){
return 'my name: $name, age: $age';
}
}
Mixin ala Trait di PHP
fitur menarik lainnya adalah mixin. apa itu mixin? mixin ini sama seperti Trait di PHP. dengan mixin kita bisa membuat kode lebih reusable (dapat di gunakan kembali).
untuk membuat mixin kita bisa menggunakan keyword mixin
mixin Greeting {
String getPerson(){
return 'name: $name age: $age';
}
}
untuk menggunkan mixin kita bisa menggunakan keyword with pada saat membuat class.
class Person with Greeting {
String? name;
int? age;
Person(this.name, this.age);
}
dengan adanya mixin, class Person sekarang mempunyai method getPerson() .
oh ya kita dapat menggunakan mixin sebanyak mungkin dengan memisahkan mixin dengan coma.
class Person with Greeting, OtherMixin {}
Cascade Notation
Fitur ini sangat bermanfaat banget. karena fitur ini dapat menyingkat kode. sebagai contoh saya mempunyai class Person.
class Person {
String? name;
int? age;
void setName(String name){
this.name = name;
}
void setAge(int name){
this.age = age;
}
String getPerson(){
return 'name: $name age: $age';
}
}
tanpa menggunakan cascade notation, untuk memanggil method getPerson() agak sedikit panjang.
var person = Person();
person.setName('Tony Stark');
person.setAge(30);
print(person.getPerson());
dengan cascade notation kita bisa mempersingkat penulisan tersebut seperti ini.
var person = Person().setName('Tony Stark')
..setAge(30);
..getPerson());
print(person);
coba perhatikan kode di atas. cukup simple bukan. jadi untuk menggunakan cascade notation kita gunakan operator .. (titik dua).
oke mungkin itu saja yang dapat saya sharing soal dart. semoga bermanfaat.

