FIC - Dart Language Programming
FIC - Dart Language Programming
By Saiful Bahri
https://linkedin.com/in/bahrie
https://youtube.com/@codewithbahri
Pengantar
https://youtube.com/@codewithbahri
Dart Programming
https://youtube.com/@codewithbahri
Dart Programming
https://youtube.com/@codewithbahri
Dart Programming
https://youtube.com/@codewithbahri
Dart Programming
Dart multiplatform
Dart dapat digunakan pada tiga platform ini:
1. Flutter
Apabila kita ingin membuat aplikasi Android dan iOS dengan
bahasa pemrograman Dart, maka kita harus menggunakan
framework Flutter.
Flutter adalah sebuah framework yang dirancang khusus untuk
membangun antarmuka (UI) aplikasi mobile.
https://youtube.com/@codewithbahri
Dart Programming
2. Web
Penggunaan Dart pada web biasanya dalam bentuk front-end.
Kode program Dart dapat dikompilasi menjadi kode Javascript,
sehingga web browser dapat mengeksekusinya.
Biasanya, pengembangan web dengan Dart menggunakan
framework:
- AngularDart
- Material Design Lite (MDL)/Dart
- OverReact
https://youtube.com/@codewithbahri
Dart Programming
3. Server
Dart dapat juga digunakan pada server untuk membuat program
berbasis teks (CLI), program IoT, backend, dll.
Beberapa framework yang bisa digunakan untuk mengembangkan
backend:
- Dart Frog
- Aqueduct
- Conduit
- Alfred
https://youtube.com/@codewithbahri
Keunggulan Dart
https://youtube.com/@codewithbahri
Keunggulan Dart
1. Mudah Dipelajari
Setiap developer pasti menginginkan sebuah bahasa
pemrograman yang mudah dipelajari, Anda bisa menemukannya
saat Anda mempelajari bahasa pemrograman dart. Terlebih lagi,
jika Anda sudah pandai dalam bahasa pemrograman JavaScript,
Java, atau C# tentu akan sangat mudah Anda untuk bisa
menyesuaikan penulisan kode di bahasa pemrograman dart. Anda
hanya perlu mempelajari prinsip-prinsip dasar dari bahasa
pemrograman tersebut.
https://youtube.com/@codewithbahri
Keunggulan Dart
https://youtube.com/@codewithbahri
Keunggulan Dart
3. Lebih Cepat
Kinerja bahasa pemrograman dart sangat tinggi dan cepat.
Program yang ditulis dalam bahasa dart lebih cepat berjalan
dibandingkan dengan bahasa pemrograman seperti JavaScript.
Ini akan membuat waktu Anda lebih efisien untuk membuat
banyak program-program atau ketika Anda dikejar oleh
deadline dari klien untuk menyelesaikan pembuatan website
atau aplikasi.
https://youtube.com/@codewithbahri
Keunggulan Dart
https://youtube.com/@codewithbahri
Keunggulan Dart
https://youtube.com/@codewithbahri
Keunggulan Dart
6. Tanpa Konfigurasi
DartPad tersedia untuk Anda yang tidak ingin menginstal atau
mengkonfigurasi apa pun, Anda bisa menuliskan kode tanpa
melakukan hal tersebut. DartPad juga didesain dengan
sederhana, Anda bisa langsung menuliskan kode dan klik
‘Jalankan’ untuk menjalankan program aplikasi yang sedang
Anda kerjakan. Hanya saja, dukungan untuk perpustakaan di
DartPad terbatas pada tingkat dasar.
https://dartpad.dev/
https://youtube.com/@codewithbahri
Keunggulan Dart
https://youtube.com/@codewithbahri
Dart pada Flutter
https://youtube.com/@codewithbahri
Dart pada Flutter
https://youtube.com/@codewithbahri
Dart Basic
By Saiful Bahri
https://github.com/bahrie127
https://youtube.com/@codewithbahri
Pengantar
https://youtube.com/@codewithbahri
Starting points
https://youtube.com/@codewithbahri
Starting points
Starting point
Program yang ditulis menggunakan bahasa pemrograman
dart dimulai dengan sintak seperti dibawah:
void main() {
//code
}
Pertama dimulai dari kata void lalu ikuti dengan kata
main(){}. Kode kita berada didalam kurung kurawal.
https://youtube.com/@codewithbahri
Data Types
https://youtube.com/@codewithbahri
Data types
1. String
String adalah kumpulan huruf, angka, dan tanda baca lainnya. Jadi
isinya bebas asalkan tulisan.
void main() {
String data = ‘Hello Code with Bahri’;
print(data);
}
https://youtube.com/@codewithbahri
Data types
2. Num (num)
Num, merupakan bilangan bulat dan bilangan pecahan. Tipe data
ini bisa menjadi integer ataupun double, sesuai nanti data yang
diinputkan.
void main() {
num data = 20;
print(data);
num data2 = 22.2;
print(data);
}
https://youtube.com/@codewithbahri
Data types
3. Integer (int)
Integer merupakan tipe data yang merepresentasikan angka tanpa
desimal.
void main() {
int myInteger = 10;
print(myInteger);
}
https://youtube.com/@codewithbahri
Data types
4. Double (double)
double merupakan angka desimal.
void main() {
double myDouble = 0.1;
print(myDouble);
}
https://youtube.com/@codewithbahri
Data types
5. Boolean (bool)
Merupakan tipe data yang berisikan kebenaran (true/false)
void main() {
bool data = true;
print(data);
}
https://youtube.com/@codewithbahri
Data types
6. List
List merupakan tumpukan data. Jika kalian familiar dengan java
atau javascript, List merupakan sebuah Array.
void main() {
List data = [1,2,3,’a’,’b’, ‘c’];
print(data);
}
https://youtube.com/@codewithbahri
Data types
7. Map
Jika kalian mengerti Javascript Object Notation (JSON), maka kalian akan
lebih mudah memahami apa itu Map. Map merupakan pasangan kunci dan isi.
Kunci dan isi tersebut biasa dipanggil dengan key dan value. Setiap key dan
value dapat dideklarasikan tipe datanya.
void main() {
‘url’: ‘https://jagoflutter.com/’,
};
print(data);
} https://youtube.com/@codewithbahri
Data types
8. Dynamic (dynamic)
Dynamic merupakan tipe data yang isinya bisa berubah, dynamic bisa
berupa integer, string, double, num, object, dan lain sebagainya. Contoh
sebagai berikut:
void main() {
dynamic a = 12.2;
a = ‘Hello Bahri!’;
print(a);
https://youtube.com/@codewithbahri
Data types
9. Object (object)
Merupakan kelas dasar dari semua object yang ada di dart.
void main() {
Object object = "Flutter Engineering";
print(object);
}
https://youtube.com/@codewithbahri
Data types
10. var
var merupakan tipe data yang digunakan untuk mendeklarasikan
Object dari variable yang dipanggil.
void main() {
var penulis = ‘Sayuti’;
print(penulis);
}
https://youtube.com/@codewithbahri
Variables
https://youtube.com/@codewithbahri
Variables
Contoh Variable
var umur = 18;
https://youtube.com/@codewithbahri
Operators
https://youtube.com/@codewithbahri
Operators
Jenis Operator
1. Operator Aritmatika
2. Operator Perbandingan dan Relasional
3. Operator Logika
4. Operator Cek Tipe data
https://youtube.com/@codewithbahri
Operators
Operator aritmatika
Operator Aritmatika adalah operator yang melakukan operasi seperti
penjumlahan, pengurangan, perkalian, dan pembagian. Di bawah ini
adalah daftar operator dalam pemrograman dart.
int c = 6;
c = c+ 6; // c = 12
https://youtube.com/@codewithbahri
Operators
Operator Relasional
Operator relasional adalah operator yang melakukan operasi
membandingkan operand tipe data misalnya saja kurang dari, lebih besar
dari dan sebagainya.
https://youtube.com/@codewithbahri
If else condition
https://youtube.com/@codewithbahri
If else condition
Studi kasus IF
Di dalam studi kasus menggunakan if kali ini kita akan mencoba
mengosongkan sebuah daftar dengan kondisi if hanya saja jika
kondisi tersebut tidak kosong. kita dapat memeriksa apakah
sebuah koleksi kosong atau tidak, menggunakan properti isEmpty
dan isNotEmpty. properti isEmpty memiliki pengertian bernilai true
jika koleksi yang kita masukkan kosong, sedangkan properti
isNotEmpty akan bernilai true jika koleksi yang kita masukkan tidak
kosong.
https://youtube.com/@codewithbahri
If else condition
void main() {
print(testList);
if(testList.isNotEmpty){
testList.clear();
print(testList);
}
https://youtube.com/@codewithbahri
If else condition
Switch case
Switch dan case adalah controll flow yang sejenis dengan if dan else
dimana switch case ini digunakan untuk percabangan.
https://youtube.com/@codewithbahri
If else condition
Studi kasus
Seorang pendaki melakukan pendakiannya pada pagi hari, dia sudah
melakukan instruksi kepada semua anggota pendakinya untuk melakukan
hal hal ini :
1. Saat tiba di pos 1 team akan makan snack
2. Saat tiba di pos 2 team akan makan daging
3. Saat tiba di pos 3 team akan makan sayur
4. saat tiba dipuncak team akan bergembira
https://youtube.com/@codewithbahri
If else condition
https://youtube.com/@codewithbahri
Looping
https://youtube.com/@codewithbahri
Looping
Perulangan for
Pernyataan for digunakan untuk melakukan perulangan dengan
menentukan kondisi perulangan dan pernyataan increment / decrement.
https://youtube.com/@codewithbahri
Looping
Perulangan while
Pernyataan while digunakan untuk melakukan perulangan dengan menentukan kondisi
yang menyebabkan perulangan dihentikan.
int i = 0;
i++;
}
https://youtube.com/@codewithbahri
Looping
Perulangan do while
Statement do while hampir sama dengan while. Perbedaannya, jika
do while hanya melakukan satu kali perulangan dulu, kemudian
mengecek kondisinya. Sedangkan while kondisi di cek dulu baru
kemudian statement perulangannya dijalankan.
https://youtube.com/@codewithbahri
Looping
Perulangan for in
Struktur perulangan for in digunakan untuk menampilkan isi yang ada
dalam array atau list, perulangan for in sebenarnya sama dengan
perulangan for yang bedakan cuma kata kunci in dan tidak mengeluarkan
nilai index nya.
print(nama);
}
https://youtube.com/@codewithbahri