PEMROGRAMAN MOBILE
(FLUTTER)
Nama : ...................................................
NIM : ...................................................
Kelas : ...................................................
Tanda Tangan
Prak. Hari/Tanggal Materi Keterangan
Dosen/ Asisten
10
Catatan :
Setiap aktivitas praktikum wajib sepengetahuan Dosen atau Asisten melalui lembar tanda
tangan kartu kontrol ini.
A. Dart
Dart adalah bahasa pemrograman open source dan tujuan umum. Dart dikembangkan
oleh Google dan ditujukan untuk membuat aplikasi multiplatform seperti seluler, desktop,
dan web.
Bahasa Dart adalah tipe safe; Dart menggunakan pengecekan tipe statis untuk
memastikan bahwa nilai variabel selalu cocok dengan tipe statis variabel. Meskipun tipe
bersifat wajib, anotasi tipe bersifat opsional karena inferensi tipe. Sistem pengetikan Dart
juga fleksibel, memungkinkan penggunaan tipe dinamis yang dikombinasikan dengan
pemeriksaan runtime, yang dapat berguna selama eksperimen atau untuk kode yang sangat
dinamis.
Dart menawarkan sound null safety, artinya nilai tidak boleh nol kecuali Anda
mengaturnya. Dengan sound null safety, Dart dapat melindungi Anda dari pengecualian nol
saat runtime melalui analisis kode statis. Tidak seperti banyak bahasa null-safe lainnya,
ketika Dart menentukan bahwa suatu variabel tidak dapat dibatalkan, variabel
itu selalu tidak dapat dibatalkan. Jika Anda memeriksa kode yang sedang berjalan di
debugger, Anda akan melihat bahwa non-nullability dipertahankan saat runtime
(karenanya terdengar aman).
Dart merupakan bahasa dasar dari Flutter. Sejak kemunuculannya Flutter, Dart kembali
menjadi pusat perhatian. Saat ini sudah banyak perusahaan yang menggunakan Flutter
dalam aplikasinya.
B. Flutter
Tahapan Praktikum
A. Persiapan
a) Download SDK Flutter
SDK (Software Development Kit) adalah sekumpulan alat yang dapat
digunakan oleh pembuat aplikasi untuk mengembangkan aplikasi yang
dikustomisasi untuk ditambahkan, atau dihubungkan dengan, program lain.
Dengan SDK, programmer dapat mengembangkan aplikasi untuk platform
tertentu. Silakan Download SDK Flutter pada situs flutter
(https://docs.flutter.dev/development/tools/sdk/releases). Pilih jenis OS yang
digunakan dan download versi flutter yang stabil.
5. Extrak Command Line Tools ke dalam folder latest. Zip file Command Line
Tools yang telah di download sebelumnya lakukan extraksi semua file ke
dalam folder cmdline-tools/latest
Jika sudah melewati step diatas maka variabel yang ditambahkan dapat
dilihat pada environment variable seperti pada gambar di bawah ini:
3. Pastikan Java telah terinstal dengan ketik di CMD perintah java -version dan
akan menampilkan versi java seperti contoh gambar di bawah ini:
10. Instal Extension Flutter di Visual Studio Code (VS Code). Di aplikasi visual
studio code Pilih Extension dan Ketikkan Flutter. Kemudian Klik Install.
Tugas Mandiri
.........................................................................................................................................
.........................................................................................................................................
.........................................................................................................................................
.........................................................................................................................................
.........................................................................................................................................
...............
Tujuan
⚫ Mahasiswa dapat mengetahui layout pada pada flutter
⚫ Mahasiswa dapat mengimplementasikan layout pada flutter
Deskripsi
Layout digunakan untuk mengatur widget seperti kolom, baris dan tata letak
lainnya. Ada dua jenis yaitu Single-child dan Multiple-child layout widget.
Tahapan Praktikum
A. Layout
1. Single Child Layout Widget
Sesuai dengan namanya, Widget ini hanya bisa menampung 1 (satu) buah
child saja, misalnya : Padding, Container, Card, Expanded, Flexible, Center,
GestureDetector, Positioned, SafeArea, SingleChildScrollView, dll.. Berikut
contohnya:
a) Padding
Padding digunakan untuk memberikan jarak (ruang) atas, bawah, kanan
dan kiri dari child widgetnya, untuk memberikan jarak gunakan property
padding dengan nilai dari EdgeInsets...(double).
misalnya padding: EdgeInsets.all(16.0) akan memberikan jarak disemua
sisi 16.0, padding: EdgeInsets.only(left: 16.0) hanya bagian kiri saja, padding:
EdgeInsets.only(left:16.0, right: 16.0) memberikan jarak kiri dan kanan 16.0.
c) Center
Seperti namanya, widget ini digunakan untuk meletakkan childnya di
tengah.
a) Column
Widget Column akan membuat layout secara vertikal (dari atas
kebawah)
Column (
children: <Widget>[
],
2. GridView.builder
GridView digunakan untuk membuat sebuah layout yang bermodelkan
sebuah grid atau layout yang berbentuk kotak-kotak (galeri)
Contoh Code (7)
TUJUAN
⚫ Mahasiswa dapat mengimplementasikan form pada flutter
⚫ Mahasiswa dapat memahami navigasi pada flutter
⚫ Mahasiswa dapat mengimplementasikan navigasi pada flutter
DESKRIPSI
Dalam membuat projek aplikasi mobile pastinya tidak lepas dengan penggunaan
form untuk memberikan inputan data oleh pengguna yang akan dikirimkan ke server
atau ke lokal penyimpanan. Oleh karena itu perlunya mengetahui penggunaan
widget form dalam flutter. Dan untuk membuat aplikasi mobile yang multi halaman
maka perlu memahami penggunaan navigasi dalam pembuatan aplikasi android
menggunakan Flutter.
TAHAPAN PRAKTIKUM
A. Form
Form merupakan sebuah widget penampung yang digunakan untuk
mengelompokan beberapa form field widget.
a) Text Field.
Textfield merupakan bidang text yang memungkinkan pengguna
memasukkan text.
Contoh Code (1). Penggunaan kode textfield pada password
icon: Icon(Icons.person),
),
},
b) Checkbox
Contoh Code (3)
Checkbox(
activeColor: Colors.black,
onChanged: (value) {
_checkBoxVal = value!;
setState(() {});
},
value: _checkBoxVal,
)
c) Dropdown
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
@override
Navigator
Navigator merupakan sebuah widget yang digunakan untuk melakukan
perpindahan dari satu halaman ke halaman yang lain sekaligus dapat mengirimkan
sebuah variabel di dalamnya. Berikut perintah-perintah untuk memanggil Widget
Navigator:
d) Navigator.push()
f) Navigator.pushReplacement()
Method Navigator.pushReplacement() digunakan untuk perpindahan
halaman dari satu halaman ke halaman lain, akan tetapi ketika tombol
kembali ditekan maka halaman sebelumnya di-destroy
TUJUAN
⚫ Mahasiswa dapat mengenal Drawer Widget flutter
⚫ Mahasiswa dapat membuat Drawer Navigation pada flutter
DESKRIPSI
Menu atau Navigasi dalam aplikasi memudahkan pengguna untuk mengakses
tiap halaman didalam aplikasi. Untuk membuat menu navigasi menggunakan di
flutter dapat menggunakan Drawer Wdiget. Drawer widget merupakan single child
widget yang artinya hanya dapat memiliki satu child widget di dalamnya. Karena
Drawer hanya memiliki properti child dan bukan children, maka untuk menampatkan
item-item lain bisa menggunakan ListView widget. Sebenarnya tidak ada keharusan
menggunakan ListView namun keuntungan menggunakan ListView widget
dibandingkan dengan column atau widget lainnya yaitu untuk memudahkan dalam
mengatur list Item dan vertical scrolling apabila item menu melebihi tinggi layar.
Anatomi Drawer
Anatomi dari sebuah navigation drawer menurut material design itu ada
delapan (8) point, namun disini kita sederhanakan saja menjadi 4 bagian yaitu
1. Header,
2. List Item,
3. Divider dan
4. Subtitle
Jenis Drawer
TAHAPAN PRAKTIKUM
1. Buat projek flutter baru dengan nama belajar_flutter_4 atau gunakan projek
flutter yang ada. Dalam folder lib, buat file baru bernama nav-drawer.dart
├── lib
│ ├── main.dart
│ └── nav-drawer.dart
2. Buka file nav-drawer.dart dan ketikan kode dibawah ini:
Padding dan Text digunakan untuk membuat subtitle navigation bar. Kita tidak pisahkan ke function
terpisah seperti drawerHeader dan drawerItem karena bentuknya yang sederhana dan hanya
menggunakannya satu kali.
Header yang kita gunakan yaitu UserAccountsDrawerHeader widget dimana memiliki empat properti utama
yaitu : accountName, accountEmail, currentAccountPicture, otherAccountsPictures. current dan other picture
properties digunakan untuk menampilkan foto
4. Setelah header maka selanjutnya kita buat _drawerItem widget kode nya
seperti di bawah ini
Tugas Mandiri
.........................................................................................................................................
.........................................................................................................................................
.........................................................................................................................................
.........................................................................................................................................
.........................................................................................................................................
...............