Terakhir diperbarui: 17 September 2023
Penulis: Habibie Ed Dien
Pada pengantar bahasa pemrograman Dart bagian 3 ini, Anda akan melakukan praktik untuk bereksperimen dengan colletctions, records, dan functions. Hal ini cukup penting diketahui terutama bagi Anda yang belum memiliki dasar pemrograman sebelumnya.
Dengan mempelajari materi ini, Anda diharapkan mampu untuk menerapkannya pada Framework Flutter untuk menangani data dalam bentuk collections dan record serta memanfaatkan functions.
Setelah menyelesaikan codelab ini Anda akan mampu untuk:
Tidak ada, hanya menggunakan Visual Studio Code dan Console.
Berikut merupakan sumber daya yang diperlukan untuk menyelesaikan praktikum ini:
Selesaikan langkah-langkah praktikum berikut ini menggunakan VS Code atau Code Editor favorit Anda.
Ketik atau salin kode program berikut ke dalam void
main()
.
var list = [1, 2, 3];
assert(list.length == 3);
assert(list[1] == 2);
print(list.length);
print(list[1]);
list[1] = 1;
assert(list[1] == 1);
print(list[1]);
Silakan coba eksekusi (Run) kode pada langkah 1 tersebut. Apa yang terjadi? Jelaskan!
Ubah kode pada langkah 1 menjadi variabel final yang mempunyai index = 5 dengan default value = null
. Isilah nama dan NIM Anda pada elemen index ke-1 dan ke-2. Lalu print dan capture hasilnya.
Apa yang terjadi ? Jika terjadi error, silakan perbaiki.
Selesaikan langkah-langkah praktikum berikut ini menggunakan VS Code atau Code Editor favorit Anda.
Ketik atau salin kode program berikut ke dalam fungsi main()
.
var halogens = {'fluorine', 'chlorine', 'bromine', 'iodine', 'astatine'};
print(halogens);
Silakan coba eksekusi (Run) kode pada langkah 1 tersebut. Apa yang terjadi? Jelaskan! Lalu perbaiki jika terjadi error.
Tambahkan kode program berikut, lalu coba eksekusi (Run) kode Anda.
var names1 = <String>{};
Set<String> names2 = {}; // This works, too.
var names3 = {}; // Creates a map, not a set.
print(names1);
print(names2);
print(names3);
Apa yang terjadi ? Jika terjadi error, silakan perbaiki namun tetap menggunakan ketiga variabel tersebut. Tambahkan elemen nama dan NIM Anda pada kedua variabel Set tersebut dengan dua fungsi berbeda yaitu .add()
dan .addAll()
. Untuk variabel Map dihapus, nanti kita coba di praktikum selanjutnya.
Dokumentasikan code dan hasil di console, lalu buat laporannya.
Selesaikan langkah-langkah praktikum berikut ini menggunakan VS Code atau Code Editor favorit Anda.
Ketik atau salin kode program berikut ke dalam fungsi main()
.
var gifts = {
// Key: Value
'first': 'partridge',
'second': 'turtledoves',
'fifth': 1
};
var nobleGases = {
2: 'helium',
10: 'neon',
18: 2,
};
print(gifts);
print(nobleGases);
Silakan coba eksekusi (Run) kode pada langkah 1 tersebut. Apa yang terjadi? Jelaskan! Lalu perbaiki jika terjadi error.
Tambahkan kode program berikut, lalu coba eksekusi (Run) kode Anda.
var mhs1 = Map<String, String>();
gifts['first'] = 'partridge';
gifts['second'] = 'turtledoves';
gifts['fifth'] = 'golden rings';
var mhs2 = Map<int, String>();
nobleGases[2] = 'helium';
nobleGases[10] = 'neon';
nobleGases[18] = 'argon';
Apa yang terjadi ? Jika terjadi error, silakan perbaiki.
Tambahkan elemen nama dan NIM Anda pada tiap variabel di atas (gifts
, nobleGases
, mhs1
, dan mhs2
). Dokumentasikan hasilnya dan buat laporannya!
Selesaikan langkah-langkah praktikum berikut ini menggunakan VS Code atau Code Editor favorit Anda.
Ketik atau salin kode program berikut ke dalam fungsi main()
.
var list = [1, 2, 3];
var list2 = [0, ...list];
print(list1);
print(list2);
print(list2.length);
Silakan coba eksekusi (Run) kode pada langkah 1 tersebut. Apa yang terjadi? Jelaskan! Lalu perbaiki jika terjadi error.
Tambahkan kode program berikut, lalu coba eksekusi (Run) kode Anda.
list1 = [1, 2, null];
print(list1);
var list3 = [0, ...?list1];
print(list3.length);
Apa yang terjadi ? Jika terjadi error, silakan perbaiki.
Tambahkan variabel list berisi NIM Anda menggunakan Spread Operators. Dokumentasikan hasilnya dan buat laporannya!
Tambahkan kode program berikut, lalu coba eksekusi (Run) kode Anda.
var nav = ['Home', 'Furniture', 'Plants', if (promoActive) 'Outlet'];
print(nav);
Apa yang terjadi ? Jika terjadi error, silakan perbaiki. Tunjukkan hasilnya jika variabel promoActive
ketika true
dan false
.
Tambahkan kode program berikut, lalu coba eksekusi (Run) kode Anda.
var nav2 = ['Home', 'Furniture', 'Plants', if (login case 'Manager') 'Inventory'];
print(nav2);
Apa yang terjadi ? Jika terjadi error, silakan perbaiki. Tunjukkan hasilnya jika variabel login
mempunyai kondisi lain.
Tambahkan kode program berikut, lalu coba eksekusi (Run) kode Anda.
var listOfInts = [1, 2, 3];
var listOfStrings = ['#0', for (var i in listOfInts) '#$i'];
assert(listOfStrings[1] == '#1');
print(listOfStrings);
Apa yang terjadi ? Jika terjadi error, silakan perbaiki. Jelaskan manfaat Collection For dan dokumentasikan hasilnya.
Selesaikan langkah-langkah praktikum berikut ini menggunakan VS Code atau Code Editor favorit Anda.
Ketik atau salin kode program berikut ke dalam fungsi main()
.
var record = ('first', a: 2, b: true, 'last');
print(record)
Silakan coba eksekusi (Run) kode pada langkah 1 tersebut. Apa yang terjadi? Jelaskan! Lalu perbaiki jika terjadi error.
Tambahkan kode program berikut di luar scope void main()
, lalu coba eksekusi (Run) kode Anda.
(int, int) tukar((int, int) record) {
var (a, b) = record;
return (b, a);
}
Apa yang terjadi ? Jika terjadi error, silakan perbaiki. Gunakan fungsi tukar()
di dalam main()
sehingga tampak jelas proses pertukaran value field di dalam Records.
Tambahkan kode program berikut di dalam scope void main()
, lalu coba eksekusi (Run) kode Anda.
// Record type annotation in a variable declaration:
(String, int) mahasiswa;
print(mahasiswa);
Apa yang terjadi ? Jika terjadi error, silakan perbaiki. Inisialisasi field nama dan NIM Anda pada variabel record mahasiswa
di atas. Dokumentasikan hasilnya dan buat laporannya!
Tambahkan kode program berikut di dalam scope void main()
, lalu coba eksekusi (Run) kode Anda.
var mahasiswa2 = ('first', a: 2, b: true, 'last');
print(mahasiswa2.$1); // Prints 'first'
print(mahasiswa2.a); // Prints 2
print(mahasiswa2.b); // Prints true
print(mahasiswa2.$2); // Prints 'last'
Apa yang terjadi ? Jika terjadi error, silakan perbaiki. Gantilah salah satu isi record dengan nama dan NIM Anda, lalu dokumentasikan hasilnya dan buat laporannya!
Selamat Anda telah menyelesaikan Codelab ini sebagai langkah awal untuk memahami bahasa pemrograman Dart yang digunakan dalam framework Flutter.
Pada codelab berikutnya, Anda akan mempelajari tentang konfigurasi Flutter SDK dan emulatornya.
Silakan cek beberapa sumber belajar lainnya...