Tugas Pertemuan 11 - MarketSiswa
Nama: Dewa Putu Ananda Taurean Mahesa
NRP: 5025231158
Kelas: Pemrograman Perangkat Bergerak C
1. Deskripsi Singkat Proyek
MarketSiswa adalah prototipe aplikasi marketplace sederhana yang dirancang khusus untuk memfasilitasi siswa dalam menjual dan membeli produk di lingkungan sekolah . Fokus pada fase ini adalah membangun antarmuka pengguna (UI) yang responsif dan pengalaman pengguna (UX) yang interaktif menggunakan teknologi modern dari Android.
2. Arsitektur dan Teknologi Utama
- Jetpack Compose: Digunakan sebagai pendekatan deklaratif untuk membangun UI, menggantikan sistem XML tradisional karena lebih ringkas dan intuitif
. - Material Design 3: Diimplementasikan untuk memastikan konsistensi visual, hierarki warna, dan tata letak standar aplikasi Android modern
. - State Management: Menggunakan "remember" dan "mutableStateListOf" untuk menyimpan data produk tiruan (mock data) secara sementara di dalam memori sebelum integrasi database SQLite/Room di masa mendatang.
3. Tahapan Pengembangan
A. Kerangka Utama (Scaffolding)
Pengembangan dimulai dengan membuat struktur navigasi dasar menggunakan komponen "Scaffold". Ini mencakup:
- Top Bar: Memberikan konteks halaman saat ini kepada pengguna
. - Bottom Navigation: Memungkinkan perpindahan cepat antara halaman utama (Home) dan profil pengguna (Profile)
. - Floating Action Button (FAB): Ditempatkan di sudut kanan bawah sebagai tombol aksi utama (menambah produk)
.
B. Implementasi Layar (Screens)
Aplikasi ini memiliki tiga layar utama:
- Home Screen: Menampilkan daftar produk menggunakan "LazyColumn" agar dapat di-scroll dengan mulus
. Setiap produk dibungkus menggunakan komponen "Card" untuk memberikan struktur visual yang jelas dan memudahkan pengguna membaca informasi . - Add Product Screen: Berisi text fields untuk memasukkan nama, harga, dan deskripsi produk
. Layar ini mengimplementasikan hierarki tombol yang jelas, membedakan antara aksi utama (Simpan) dan aksi sekunder (Batal) . - Profile Screen: Tampilan statis sederhana yang menunjukkan informasi pengguna saat ini.
C. Umpan Balik System (System Feedback)
Untuk memastikan UX yang baik, sistem harus memberikan respons terhadap aksi pengguna . Implementasinya meliputi:
- Loading State: Menggunakan "CircularProgressIndicator" untuk memberi tahu pengguna bahwa sistem sedang memproses data saat tombol "Simpan" ditekan
. - Success Notification: Menampilkan pesan pop-up singkat menggunakan "Snackbar" ketika produk baru berhasil ditambahkan tanpa mengganggu aliran navigasi
.
Comments
Post a Comment