Tuesday, May 19, 2026

Room Database - Registrasi Siswa

 




Dalam pengembangan aplikasi Android modern, penyimpanan data lokal merupakan bagian penting untuk menyimpan data pengguna secara permanen.

Android menyediakan SQLite sebagai database bawaan. Namun penggunaan SQLite secara langsung cukup kompleks karena developer harus menulis query SQL manual dan mengelola database secara detail.

Untuk mempermudah pengelolaan database lokal, Android menyediakan Room Database.

Room adalah bagian dari Android Jetpack yang berfungsi sebagai abstraction layer di atas SQLite.


Latihan

Buatlah aplikasi Registrasi Siswa dengan fungsi CRUD data siswa menggunakan Room Database.

Referensi :


Link Pengumpulan Tugas


Absensi




Tuesday, May 12, 2026

Arsitektur MVVM

 






Arsitektur MVVM dan Room Database 1. 

Dalam pengembangan aplikasi Android modern, Google merekomendasikan penggunaan:

  • Kotlin
  • Jetpack Compose
  • MVVM Architecture
  • Room Database
  • Coroutine
  • Flow

Tujuan penggunaan teknologi tersebut adalah:

  • Membuat aplikasi lebih scalable
  • Mudah maintenance
  • Reactive UI
  • Clean Architecture
  • Mudah dikembangkan oleh tim

Kombinasi MVVM dan Room menjadi standar pengembangan aplikasi Android modern.






Latihan

Buat aplikasi login sederhana yang memiliki fitur:

  • Input username
  • Input password
  • Tombol login
  • Validasi login
  • Menampilkan pesan sukses/gagal
  • Data user disimpan di Room Database

Referensi


Link Pengumpulan Tugas


Absensi




Video






Tuesday, May 5, 2026

Material - Studi Kasus Marketplace Siswa


Material Design adalah sistem desain yang dikembangkan oleh Google untuk membantu developer dan designer menciptakan UI yang:

  • Konsisten
  • Responsif
  • Menarik secara visual
  • Mudah digunakan (user-friendly)

Versi terbaru dikenal sebagai Material You (Material Design 3) yang lebih personal dan dinamis.

Prinsip Material Design

1. Material is the metaphor

  • UI dianalogikan seperti benda nyata (kertas, bayangan, layer)
  • Memberikan kesan depth (elevation)

Contoh:

  • Card memiliki bayangan
  • Floating Action Button (FAB) terlihat “mengambang”

2. Bold, graphic, intentional

  • Gunakan warna kontras
  • Tipografi jelas
  • Layout tidak berantakan

 Fokus:

  • Hierarki visual
  • Penekanan pada konten penting

3. Motion provides meaning

  • Animasi bukan sekadar estetika
  • Membantu user memahami perubahan UI

Contoh:

  • Transition antar halaman
  • Ripple effect saat tombol ditekan



Referensi


Latihan


Membuat Marketplace Siswa





Link Pengumpulan Tugas


Absensi




Video








Tuesday, April 14, 2026

Arsitektur dan Activity

 



Arsitektur Android terdiri dari beberapa lapisan (layer) komponen yang saling bekerja sama untuk mendukung kebutuhan berbagai perangkat Android. Sistem Android dibangun di atas kernel Linux open-source, serta dilengkapi dengan berbagai library C/C++ yang diakses melalui application framework.

Di dalam arsitektur ini, Linux Kernel berperan sebagai inti sistem operasi (mengatur hardware, memori, proses, dll), sedangkan Android Runtime (termasuk Dalvik Virtual Machine/DVM atau ART) menyediakan lingkungan untuk menjalankan aplikasi Android.

1. Applications (Aplikasi)

Lapisan paling atas adalah aplikasi yang langsung digunakan oleh pengguna.

Contohnya:

  • Aplikasi bawaan (Contacts, SMS, Camera)
  • Aplikasi pihak ketiga (WhatsApp, Instagram, dll)

Aplikasi ini dibangun menggunakan bahasa seperti Java atau Kotlin dan berjalan di atas Android Runtime.

2. Application Framework

Lapisan ini menyediakan berbagai layanan (services) yang dapat digunakan oleh aplikasi.

Beberapa komponen penting:

  • Activity Manager → mengatur siklus hidup aplikasi
  • Window Manager → mengatur tampilan layar
  • Content Provider → berbagi data antar aplikasi
  • Resource Manager → mengelola resource (layout, string, dll)

Framework ini memudahkan developer karena tidak perlu mengakses hardware secara langsung.

3. Android Runtime

Lapisan ini bertanggung jawab untuk menjalankan aplikasi Android.

Terdiri dari:

  • Core Libraries → menyediakan fungsi dasar seperti struktur data, utilitas, dll
  • Dalvik Virtual Machine (DVM) atau ART (Android Runtime) → menjalankan bytecode aplikasi Android

Setiap aplikasi berjalan dalam proses terpisah untuk keamanan dan stabilitas.

4. Platform Libraries (Native Libraries)

Berisi kumpulan library berbasis C/C++ yang digunakan oleh berbagai komponen Android.

Contohnya:

  • SQLite → database
  • WebKit → engine browser
  • OpenGL → grafis
  • Media Framework → audio & video

Library ini memberikan performa tinggi untuk fungsi-fungsi penting.

Ada beberapa komponen dasar yang diperlukan dalam sebuah aplikasi Android. Komponen-komponen ini bersifat loosely coupled (tidak saling bergantung secara ketat) dan dihubungkan oleh file manifest aplikasi (AndroidManifest.xml), yang berisi deskripsi setiap komponen serta bagaimana mereka saling berinteraksi.

File manifest juga memuat berbagai informasi penting seperti:

  • Metadata aplikasi
  • Konfigurasi perangkat keras (hardware)
  • Kebutuhan platform (versi Android)
  • Library eksternal yang digunakan
  • Izin (permissions) yang diperlukan aplikasi

5. Linux Kernel

Lapisan paling bawah yang menjadi inti dari sistem operasi Android.

Fungsinya:

  • Manajemen memori
  • Manajemen proses
  • Driver perangkat (kamera, audio, display, dll)
  • Keamanan sistem

Kernel Linux memastikan komunikasi antara hardware dan software berjalan dengan baik.

Adapun komponen utama dalam sebuah aplikasi Android adalah sebagai berikut:

1. Activities
2. Services
3. Content Providers
4. Broadcast Receivers
5. Intents
6. Widgets
7. Notifications

Referensi


Latihan



Pengisian Form



Absensi





Tuesday, March 10, 2026

Jet Pack Compose - Text

 Jetpack Compose adalah toolkit modern untuk membangun user interface (UI) aplikasi Android menggunakan bahasa Kotlin secara deklaratif tanpa menggunakan XML layout.

Framework ini dikembangkan oleh Google sebagai bagian dari Android Jetpack untuk mempermudah pengembangan UI Android agar lebih sederhana, cepat, dan modern.

1. Struktur Utama Program

Kode ini terdiri dari dua bagian utama:

  1. MainActivity → Entry point aplikasi Android

  2. Composable Function (MyTextView) → Fungsi UI yang menampilkan teks

Arsitektur Jetpack Compose biasanya seperti ini:

MainActivity

setContent{}

Composable Function

UI Components (Text, Column, Row, dll)

2. Penjelasan Class MainActivity

class MainActivity : ComponentActivity() {
  • MainActivity adalah activity utama pada aplikasi Android.

  • ComponentActivity adalah class dasar yang mendukung Jetpack Compose.

Pada sistem Android lama biasanya:

Activity → setContentView(XML)

Sedangkan pada Jetpack Compose:

Activity → setContent { Composable }



Tuesday, April 22, 2025

Proyek - Mobile Front End

 


Proyek 1: Aplikasi To-Do List Personal

Judul Proyek: “Daily Task Manager”
Deskripsi: Buatlah aplikasi pengelola tugas harian yang memungkinkan pengguna menambahkan, menghapus, dan menandai tugas sebagai selesai.

Fitur Utama:

  • Input tugas dengan tanggal dan waktu deadline

  • Checkbox status tugas

  • Penyortiran berdasarkan deadline atau status

  • UI intuitif dan responsive (menggunakan Material Design)


Proyek 2: Aplikasi Resep Masakan

Judul Proyek: “ResepKita”
Deskripsi: Buat aplikasi front-end untuk menampilkan daftar resep masakan lengkap dengan gambar, bahan, dan langkah-langkah memasak.

Fitur Utama:

  • Tampilan daftar resep (ListView/RecyclerView)

  • Detail resep dengan gambar dan deskripsi

  • Pencarian resep berdasarkan nama atau bahan

  • Desain menarik, responsif, dan ramah pengguna


Proyek 3: Aplikasi Booking Tempat Olahraga

Judul Proyek: “BookSport”
Deskripsi: Aplikasi ini bertujuan untuk memudahkan pengguna memesan lapangan olahraga seperti futsal, badminton, atau basket.

Fitur Utama:

  • Tampilan daftar tempat olahraga

  • Formulir pemesanan dengan tanggal, waktu, dan pilihan jenis olahraga

  • Validasi input form

  • Tampilan konfirmasi pemesanan


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)


Proyek 5: Aplikasi Galeri Foto Pribadi

Judul Proyek: “MyGallery”
Deskripsi: Aplikasi front-end untuk menampilkan galeri gambar lokal dari perangkat atau dari URL dummy.

Fitur Utama:

  • GridView/RecyclerView untuk menampilkan gambar

  • Halaman detail gambar

  • Simulasi upload (dummy)

  • Tampilan estetis, responsive, dan mendukung mode gelap

Ketentuan Pengumpulan

  • Tuliskan Title Aplikasi yang dibuat
  • Deskripsi Aplikasi dan Fitur
  • Foto Infografis Aplikasi - Thumbnail
  • PPT - Deskripsi, Desain, Cara Mengerjakan (dalam pdf)
  • Link Blog Anggota 1
  • Video Presentasi
  • Link Source Code
  • Link Aplikasi/ Download

Pengisian Form

Peserta


Absensi







Room Database - Registrasi Siswa

  Dalam pengembangan aplikasi Android modern, penyimpanan data lokal merupakan bagian penting untuk menyimpan data pengguna secara permanen....