ETS
Nama : Dafarel Fatih Wirayudha
Nrp : 5025211120
Kelas : Pemrograman Perangkat Bergerak A
Proyek - Mobile Front End
Proyek 4: Aplikasi Catatan Keuangan Pribadi
Judul Proyek: “MyMoney Notes”
Deskripsi: Buat aplikasi sederhana untuk mencatat pengeluaran dan pemasukan harian.
Fitur Utama:
Input jenis transaksi (pemasukan/pengeluaran)
Pilih kategori dan nominal
Lihat daftar transaksi
Tampilan grafik sederhana (opsional menggunakan chart library untuk visualisasi)
1. Model Data (Transaction dan TransactionType)
-
Transactionadalah data class yang merepresentasikan satu transaksi, berisi:-
type: tipe transaksi (INCOME / EXPENSE), -
category: kategori seperti “Makan” atau “Gaji”, -
amount: jumlah uang.
-
-
TransactionTypeadalah enum untuk membedakan jenis transaksi.
2. ViewModel (TransactionViewModel)
-
Mengelola data transaksi yang tersimpan.
-
Menyediakan fungsi
addTransaction()untuk menambahkan data. -
Menyediakan daftar transaksi yang bisa di-observe oleh UI.
3. MainActivity
-
Entry point aplikasi.
-
Menampilkan UI utama.
-
Beralih antara layar tambah transaksi dan daftar transaksi menggunakan
rememberuntuk menyimpan status tampilan.
4. AddTransactionScreen
-
Layar input untuk pengguna memasukkan jenis transaksi, kategori, dan jumlah nominal.
-
Data ini dikirim ke
ViewModelsetelah tombol simpan ditekan.
5. TransactionListScreen
-
Menampilkan daftar transaksi dalam bentuk Card.
-
Setiap transaksi dibedakan warnanya (hijau untuk pemasukan, merah untuk pengeluaran).
-
Memiliki FAB (Floating Action Button) untuk berpindah ke layar tambah transaksi.
6. TotalBalance
-
Menampilkan perhitungan total pemasukan, pengeluaran, dan saldo akhir.
-
Menggunakan warna hijau jika saldo positif dan merah jika negatif.
7. TransactionChart
-
Menggunakan
Canvasuntuk menggambar grafik batang horizontal. -
Menampilkan perbandingan visual antara jumlah pemasukan dan pengeluaran.
8. Theme Custom
-
Warna-warna dan tipografi disesuaikan untuk membuat UI modern dan nyaman dilihat.
-
Semua komponen menggunakan Material 3 untuk konsistensi tampilan.
Comments
Post a Comment