Tugas Pertemuan 11 - MarketSiswa

Nama: Dewa Putu Ananda Taurean Mahesa

NRP: 5025231158

Kelas: Pemrograman Perangkat Bergerak C


Link Github Proyek

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:
  1. 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.
  2. 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).
  3. 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.

4. Hasil Akhir






Comments

Popular posts from this blog

Tugas Pertemuan 7 - LoginPage

Tugas 1 - Eksplorasi Perkembangan Teknologi

Tugas Pertemuan 6 - Kalkulator