RPP

Rencana Pelaksanaan Pembelajaran โ€” Mobile Development (Semester 1)

Satuan PendidikanSMA/SMK
Mata PelajaranInformatika (Mobile Development)
Kelas / SemesterXI / 1 (Ganjil)
Alokasi Waktu4 JP ร— 16 minggu
Jumlah Pertemuan32 Pertemuan
ModelProject Based Learning (PjBL)

Komponen RPP

KD

Kompetensi Dasar

Memahami, merancang, dan menerapkan dasar bahasa pemrograman Dart, OOP Dart, visual widget, responsive layout, data persistence, dan deployment APK.

INDIKATOR

Indikator Pencapaian

Siswa mampu menulis logika Dart, merancang UI Flutter, menggunakan Provider, mengelola database SQLite lokal, dan menghasilkan build rilis APK.

TUJUAN

Tujuan Pembelajaran

Setelah mengikuti pembelajaran, siswa mandiri dapat membangun, menguji, dan merilis aplikasi mobile database dinamis lintas platform (Android/iOS).

MATERI

Materi Ajar

Flutter Overview, Dasar Dart, OOP Dart, Flutter Widgets, Responsive UI, Form Validation, Rute Navigasi, Provider, SQLite Storage, Material Theme, Build Release.

METODE

Metode

Ceramah interaktif, demonstrasi langsung (live code), latihan mandiri (lab practice), pengerjaan tugas proyek akhir kelompok.

MEDIA

Media & Alat

Modul belajar, laptop, koneksi internet, Flutter SDK, Dart SDK, Android Studio, VS Code, Emulator, HP Android fisik.

LANGKAH

Langkah Kegiatan

Apersepsi/Pendahuluan โ†’ Inti (Demonstrasi & Praktik Laboratorium Mandiri) โ†’ Penutup (Code Review & Evaluasi).

PENILAIAN

Penilaian

Sikap (kedisiplinan coding, penyusunan dokumentasi), Pengetahuan (kuis & ujian teori tulis), Keterampilan (penyusunan lab & rilis APK).

Langkah Pembelajaran (Umum)

  1. Pendahuluan (15') โ€” Apersepsi modul sebelumnya, pre-test logika pemrograman, dan penayangan tujuan target bab hari ini.
  2. Kegiatan Inti (90') โ€” Guru melakukan live coding, siswa mengikuti modul praktik, eksplorasi mandiri, dan debugging bersama kasus eror.
  3. Penutup (15') โ€” Code review acak perwakilan siswa, simpulan pemecahan bug utama, penugasan portofolio git, dan doa bersama.

Rincian RPP per Bab (Pertemuan)

Pertemuan 1โ€“2 ยท Pengenalan Mobile DevelopmentBab 1
Tujuan: Memahami arsitektur mobile development, setup Flutter SDK, and Android Studio emulator.
Kegiatan: Analogi cross-platform vs native, instalasi Flutter SDK, setup VS Code extension, running default counter app di emulator.
Penilaian: Cek kesiapan editor & command `flutter doctor` berjalan lancar. Buka materi โ†’
Pertemuan 3โ€“4 ยท Dasar Bahasa DartBab 2
Tujuan: Memahami penulisan sintaks program dasar menggunakan variabel, loop, percabangan, dan fungsi Dart.
Kegiatan: Latihan menulis variabel data type (List/Map), penentuan logika diskon barang dengan if-else, looping print.
Penilaian: Kuis mandiri online logika dasar Dart. Buka materi โ†’
Pertemuan 5โ€“6 ยท Object Oriented Programming (OOP) DartBab 3
Tujuan: Menerapkan enkapsulasi, pewarisan kelas, dan antarmuka abstraksi OOP di Dart.
Kegiatan: Membuat class data siswa, enkapsulasi property private, implements interface, mixin untuk status keanggotaan.
Penilaian: Kerapian modularitas class & proyek OOP. Buka materi โ†’
Pertemuan 7โ€“8 ยท Flutter FundamentalBab 4
Tujuan: Membedakan Stateless vs Stateful Widget dan memahami siklus hidup widget (initState, dispose).
Kegiatan: Membuat widget pencatat skor game sederhana yang mengamati daur hidup widget via print logs.
Penilaian: Tugas lab lifecycle widget. Buka materi โ†’
Pertemuan 9โ€“10 ยท Flutter Widget DasarBab 5
Tujuan: Menyusun widget structural layout (Container, Row, Column, Image, Icon, Button) secara proporsional.
Kegiatan: Merancang kartu identitas digital interaktif dengan hiasan border radius dan gambar profil.
Penilaian: Kerapian susunan susun komponen UI kartu nama. Buka materi โ†’
Pertemuan 11โ€“12 ยท Flutter Layout & Responsive UIBab 6
Tujuan: Merancang tata letak gulir ListView/GridView dan responsif builder adaptif multi-device.
Kegiatan: Membuat layout galeri katalog produk e-commerce yang menyesuaikan rasio layar hp potret & lanskap.
Penilaian: Tugas responsif UI LayoutBuilder. Buka materi โ†’
Pertemuan 13โ€“14 ยท Penilaian Tengah Semester (PTS)PTS
Kegiatan: Ujian terpadu mengenai koding logika bahasa Dart, paradigma OOP Dart, and perancangan layout UI Flutter.
Penilaian: Rekapitulasi nilai PTS teori dan evaluasi mandiri hasil pengerjaan project UI statis.
Pertemuan 15โ€“16 ยท Form & Input UserBab 7
Tujuan: Mengambil masukan teks dari pengguna dan memvalidasi isian form sebelum disimpan.
Kegiatan: Membuat halaman login lengkap validasi surel, kekuatan password, checkbox persetujuan syarat.
Penilaian: Fungsionalitas validasi form secara real-time. Buka materi โ†’
Pertemuan 17โ€“18 ยท Navigation & RoutingBab 8
Tujuan: Mengimplementasikan rute navigasi named routes dan pengiriman data rute antar halaman.
Kegiatan: Membuat alur navigasi dari daftar produk (list view) menuju detail produk (detail view) dengan membawa data objek.
Penilaian: Keterhubungan rute alur data navigasi. Buka materi โ†’
Pertemuan 19โ€“20 ยท State Management DasarBab 9
Tujuan: Mengurangi ketergantungan setState dan menerapkan arsitektur state management Provider global.
Kegiatan: Membuat fitur keranjang belanja interaktif yang update otomatis di seluruh screen aplikasi via Provider ChangeNotifier.
Penilaian: Struktur pengelolaan data state app. Buka materi โ†’
Pertemuan 21โ€“22 ยท Local Storage & Data ManagementBab 10
Tujuan: Menyimpan data persistent terstruktur menggunakan sqflite database lokal.
Kegiatan: Membuat modul aplikasi catatan harian (Notes App) dengan fungsionalitas simpan, baca, dan hapus sqlite lokal.
Penilaian: Keberhasilan integrasi query DB sqflite CRUD. Buka materi โ†’
Pertemuan 23โ€“24 ยท UI/UX Mobile ProjectBab 11
Tujuan: Mendesain tema Material 3 modern, google fonts, dan transisi implicit animation.
Kegiatan: Merancang UI aplikasi cuaca dengan transisi transparan dinamis dan animasi pembuka (splash screen).
Penilaian: Penilaian visual estetika kustomisasi tema UI/UX. Buka materi โ†’
Pertemuan 25โ€“26 ยท Final Project & Deployment APKBab 12
Tujuan: Melakukan sign APK dan build release APK siap instalasi.
Kegiatan: Inisialisasi app icon launcher kustom, konfigurasi build.gradle, generate keytool, running build command APK release.
Penilaian: Hasil build file release APK yang sukses diinstal di HP.
Buka materi โ†’
Pertemuan 27โ€“28 ยท Presentasi & Portofolio GitHubFinal
Tujuan: Mendemonstrasikan fungsionalitas APK final dan mendokumentasikan kode di repositori GitHub.
Kegiatan: Presentasi hasil karya kelompok di depan kelas, demo APK, upload source code ke GitHub repo dengan README.md profesional.
Penilaian: Kelengkapan presentasi, kualitas README, dan tautan repositori online.
Pertemuan 29โ€“32 ยท Ujian Akhir Semester (UAS) / PASPAS
Kegiatan: Rekapitulasi portofolio ajar siswa, review total evaluasi error, dan ujian akhir teori semester ganjil.
Penilaian: Nilai UAS tulis dan nilai akumulasi portofolio code.