Postingan

Room Database - Registrasi Siswa

Gambar
Nama : Rafaela Shyra Ashma' Ramadhani NRP : 5025231217 Kelas : Pemrograman Perangkat Bergerak - B Tugas Room Database - Registrasi Siswa Hasil Aplikasi : Kode : LinkCode Penjelasan : Konsep Dasar Aplikasi ini menggunakan Room Database sebagai solusi penyimpanan data lokal, sesuai materi dari dosenmu. Room berperan sebagai abstraction layer di atas SQLite, sehingga kita tidak perlu menulis query SQL secara manual. Dalam project ini, Room diimplementasikan melalui tiga komponen utama: Entity, DAO, dan Database. Entity — Siswa.kt File ini mendefinisikan struktur tabel di dalam database. Anotasi @Entity(tableName = "siswa") memberitahu Room untuk membuat sebuah tabel bernama "siswa" di SQLite. Setiap properti dalam data class ini akan menjadi kolom di tabel tersebut. Kolom id diberi anotasi @PrimaryKey(autoGenerate = true) , artinya Room akan otomatis mengisi nilai id secara berurutan setiap kali data baru ditambahkan, sehingga kita tidak perlu mengatur id secara...

Arsitetur MVVM - Login Aplikasi

Gambar
Nama : Rafaela Shyra Ashma' Ramadhani NRP : 5025231217 Kelas : Pemrograman Perangkat Bergerak - B Tugas Arsitektur MVVM - Login Aplikasi   Source Code: GitHub   Hasil Aplikasi:   Penjelasan: Aplikasi ini adalah aplikasi login sederhana yang dibangun menggunakan arsitektur MVVM (Model-View-ViewModel) dengan Room Database sebagai penyimpanan data lokal. Tujuannya supaya kode lebih terstruktur, mudah di-maintain, dan UI bisa reaktif terhadap perubahan data.   User.kt — Entity / Model File ini adalah representasi tabel database. Anotasi @Entity memberitahu Room untuk membuat tabel bernama "users" di SQLite, dengan kolom id, username, dan password. @PrimaryKey(autoGenerate = true) membuat id terisi otomatis setiap kali ada data baru yang dimasukkan.   UserDao.kt — Data Access Object DAO adalah interface yang berisi operasi-operasi ke database. Ada dua fungsi di sini: insert() untuk menyimpan data user baru, dan login() yang menjalankan query SQL untuk mencari use...

Market Place Siswa

Gambar
Nama : Rafaela Shyra Ashma' Ramadhani NRP : 5025231217 Kelas : Pemrograman Perangkat Bergerak - B Tugas Material - Studi Kasus Marketplace Siswa   Source Code : GitHub   Penjelasan Code:  Struktur Data dan Tema Di bagian awal, didefinisikan sebuah data class Product yang menyimpan informasi produk seperti id, nama, harga, deskripsi, dan kategori. Id produk di-generate otomatis menggunakan timestamp. Setelah itu, StudentMartTheme mendefinisikan skema warna aplikasi berbasis pink dengan lightColorScheme dari Material 3, mulai dari warna primary, background, surface, hingga warna error. MainScreen — Inti Navigasi MainScreen adalah composable utama yang mengatur seluruh alur navigasi aplikasi. Navigasi dilakukan secara sederhana menggunakan variabel currentScreen bertipe String (nilainya bisa "home" , "add" , atau "profile" ). Tidak menggunakan NavController, cukup dengan AnimatedContent yang menampilkan screen berbeda dengan animasi fade. Di sini...

Daily Task Manager - ETS Pemrograman Perangkat Bergerak B

Gambar
Anggota Kelompok: Triana Velia Hutabalian - 5025231190 Rafaela Shyra Ashma' Ramadhani - 5025231217 ETS Pemrograman Perangkat Bergerak B Source Kode : GitHub Deskripsi Aplikasi Daily Task Manager adalah aplikasi manajemen tugas harian berbasis Android yang dikembangkan menggunakan Android Studio dengan bahasa pemrograman Java. Aplikasi ini dirancang untuk membantu pengguna dalam mengatur dan mengelola aktivitas sehari-hari secara lebih terstruktur dan efisien. Melalui aplikasi ini, pengguna dapat mencatat berbagai tugas yang perlu dilakukan, lengkap dengan informasi penting seperti judul, waktu deadline (tanggal dan jam), serta tingkat prioritas. Dengan adanya fitur-fitur tersebut, pengguna dapat dengan mudah mengidentifikasi tugas mana yang harus diselesaikan terlebih dahulu. Selain itu, aplikasi ini juga dilengkapi dengan tampilan yang sederhana namun informatif, sehingga memudahkan pengguna dalam memantau status setiap tugas. Perubahan status tugas dapat dilakukan secara langs...

Membuat Halaman Simple Login

Gambar
Nama : Rafaela Shyra Ashma' Ramadhani NRP : 5025231217 Kelas : Pemrograman Perangkat Bergerak - B Tugas Halaman Login Dalam pengembangan aplikasi Android modern, tampilan antarmuka menjadi salah satu aspek penting yang menentukan pengalaman pengguna. Salah satu fitur dasar yang hampir selalu ada dalam aplikasi adalah halaman login. Pada tugas ini, saya membuat halaman login sederhana menggunakan Jetpack Compose di Android Studio. Compose merupakan toolkit UI modern dari Android yang memungkinkan pembuatan tampilan secara deklaratif, sehingga kode menjadi lebih ringkas dan mudah dipahami. Pada implementasi ini, saya menggunakan dua file utama, yaitu MainActivity.kt sebagai entry point aplikasi, dan LoginScreen.kt yang berisi desain serta komponen halaman login. Kodenya: GitHub   Dalam pengerjaan tugas ini, langkah pertama adalah membuat project baru dengan Empty Activity, kemudian menghapus greeting preview bawaan. Setelah itu, dibuat composable LoginScreen yang berisi komponen ...

Membuat Kalkulator Sederhana Dengan Kotlin

Gambar
Nama : Rafaela Shyra Ashma' Ramadhani NRP : 5025231217 Kelas : Pemrograman Perangkat Bergerak  Tugas 5 - Pertemuan 5 Pada tugas ini saya mengembangkan sebuah aplikasi kalkulator sederhana menggunakan bahasa pemrograman Kotlin berbasis Android dengan memanfaatkan Jetpack Compose sebagai framework modern untuk membangun antarmuka pengguna. Aplikasi ini dirancang untuk melakukan operasi aritmatika dasar seperti penjumlahan, pengurangan, perkalian, dan pembagian. Selain berfungsi sebagai alat bantu perhitungan, proyek ini juga menjadi sarana pembelajaran dalam memahami konsep dasar pengembangan aplikasi Android, khususnya dalam hal pengelolaan state dan pembuatan UI secara deklaratif. Kode: GitHub Penjelasan Kode: Kode program dimulai dari class MainActivity yang berperan sebagai entry point dalam aplikasi Android. Pada method onCreate() , digunakan setContent {} untuk menampilkan antarmuka aplikasi dengan menerapkan tema Material Design melalui MaterialTheme dan Surface . Di dalam...

Komponen Button (Aplikasi Dice Roller)

Gambar
Nama : Rafaela Shyra Ashma' Ramadhani NRP : 5025231217 Kelas : Pemrograman Perangkat Bergerak (B) Tugas  4 - Pertemuan 4 Pada pertemuan keempat ini, dilakukan pengerjaan tugas berdasarkan CodeLab Android Basics with Compose , yaitu membuat aplikasi sederhana bernama Dice Roller . Aplikasi ini berfungsi untuk mensimulasikan pelemparan dadu secara digital, di mana pengguna dapat menekan tombol untuk menghasilkan angka acak dari 1 hingga 6. Hasil dari proses tersebut kemudian ditampilkan dalam bentuk gambar dadu serta nilai angka yang sesuai. Melalui tugas ini, dipelajari penggunaan komponen Button pada Jetpack Compose sebagai sarana interaksi pengguna, serta penerapan state management menggunakan remember dan mutableIntStateOf . Dengan konsep state tersebut, setiap perubahan nilai akan secara otomatis memperbarui tampilan melalui mekanisme recomposition tanpa perlu melakukan pembaruan UI secara manual. Selain itu, tugas ini juga membantu memahami bagaimana membangun antarmuka ap...