|
UNIVERSITAS AMIKOM YOGYAKARTA
|
RPS-S1SI-SI085 |
| RENCANA PEMBELAJARAN SEMESTER | ||||||
| MATA KULIAH (MK) | KODE | Rumpun MK | BOBOT (sks) | SEMESTER | Tanggal Penyusunan | |
| BAHASA PEMROGRAMAN II | SI085 | Application Development/Programming | T= 2 | P= 2 | 3 | 23 Sep 2026 |
| Pengesahan | Dosen Pengembang RPS | Koordinator RMK | Ka PRODI |
|
Stevi Ema Wijayanti, M.Kom |
Aditya Rizki Yudiantika, ST, M.Eng |
Dr. Anggit Dwi Hartanto, S.Kom., M.Kom. |
| Capaian Pembelajaran | CPL-PRODI yang dibebankan pada MK | |
| CPL06 | Mampu menerapkan dasar-dasar sistem informasi atau aplikasi interaktif, pemrograman dasar, pemrograman lanjut, keamanan dasar serta infrastruktur teknologi sebagai dasar pengembangan sistem informasi | |
| CPL07 | Mampu menjelaskan pemahaman mengenai dasar-dasar sistem informasi atau aplikasi interaktif, pemrograman dasar, pemrograman lanjut, keamanan dasar serta infrastruktur teknologi sebagai dasar pengembangan sistem informasi | |
| Capaian Pembelajaran Mata Kuliah (CPMK) | ||
| CPMK15 | Mampu menerapkan pemrograman lanjut sebagai dasar pengembangan sistem informasi | |
| CPMK18 | Mampu menjelaskan pemahaman mengenai pemrograman lanjut sebagai dasar pengembangan sistem informasi | |
| Kemampuan akhir tiap tahapan belajar (Sub-CPMK) | ||
| sub.cpmk.SI085.CPMK15.1 | Mampu menerapkan sintaks dasar, tipe data, operator, struktur kontrol, fungsi, koleksi, dan null safety dalam bahasa Dart. | |
| sub.cpmk.SI085.CPMK15.2 | Mampu menerapkan konsep pemrograman berorientasi objek dalam Dart yang meliputi class, object, constructor, encapsulation, inheritance, abstraction, interface, dan polymorphism. | |
| sub.cpmk.SI085.CPMK15.3 | Mampu memahami dan menerapkan antarmuka aplikasi Flutter, event handling, navigasi, pengiriman data antarlayar, form, validasi, dan pengelolaan state dalam aplikasi Flutter. | |
| sub.cpmk.SI085.CPMK15.4 | Mampu menerapkan operasi CRUD, autentikasi sederhana, pengelolaan sesi, mengonsumsi REST API, mengintegrasikan aplikasi Flutter dengan backend serta basis data MySQL. | |
| sub.cpmk.SI085.CPMK15.5 | Mampu merancang struktur aplikasi yang modular, melakukan pengujian dan debugging, menggunakan version control, serta menerapkan keamanan dasar aplikasi. | |
| sub.cpmk.SI085.CPMK18.1 | Mampu menjelaskan karakteristik aplikasi lintas platform, arsitektur Flutter, lingkungan pengembangan, serta peran Dart dalam pengembangan aplikasi mobile. | |
| sub.cpmk.SI085.CPMK18.2 | Mampu menjelaskan sintaks dasar, tipe data, operator, struktur kontrol, fungsi, koleksi, dan null safety dalam bahasa Dart. | |
| sub.cpmk.SI085.CPMK18.3 | Mampu menjelaskan konsep pemrograman berorientasi objek dalam Dart yang meliputi class, object, constructor, encapsulation, inheritance, abstraction, interface, dan polymorphism. | |
| sub.cpmk.SI085.CPMK18.4 | Mampu memahami dan menjelaskan antarmuka aplikasi Flutter, event handling, navigasi, pengiriman data antarlayar, form, validasi, dan pengelolaan state dalam aplikasi Flutter. | |
| sub.cpmk.SI085.CPMK18.5 | Mampu merancang REST API, memahami konversi JSON, dan integrasi aplikasi Flutter dengan backend serta basis data MySQL. | |
| sub.cpmk.SI085.CPMK18.6 | Mampu mengembangkan, mendemonstrasikan, menjelaskan, dan mempertanggungjawabkan aplikasi Flutter terintegrasi REST API dan MySQL secara kolaboratif. | |
| Korelasi CPMK terhadap Sub-CPMK | ||
| CPMK18 |
sub.cpmk.SI085.CPMK18.1 sub.cpmk.SI085.CPMK18.2 sub.cpmk.SI085.CPMK18.3 sub.cpmk.SI085.CPMK18.4 sub.cpmk.SI085.CPMK18.5 sub.cpmk.SI085.CPMK18.6 |
|
| CPMK15 |
sub.cpmk.SI085.CPMK15.1 sub.cpmk.SI085.CPMK15.2 sub.cpmk.SI085.CPMK15.3 sub.cpmk.SI085.CPMK15.4 sub.cpmk.SI085.CPMK15.5 |
|
| Deskripsi Singkat MK | Mata kuliah Bahasa Pemrograman II membahas pengembangan aplikasi mobile lintas platform menggunakan Flutter dan bahasa pemrograman Dart. Mahasiswa mempelajari konsep dasar Dart, pemrograman berorientasi objek, null safety, asynchronous programming, struktur proyek Flutter, widget, layout, navigasi, form dan validasi, pengelolaan state, serta penyajian data dinamis. Pembelajaran dilanjutkan dengan pengembangan aplikasi yang terintegrasi dengan REST API dan basis data MySQL. Aplikasi Flutter tidak mengakses MySQL secara langsung, tetapi berkomunikasi dengan layanan backend melalui protokol HTTP dan pertukaran data JSON. Mahasiswa mempelajari operasi pengambilan, penambahan, perubahan, dan penghapusan data, autentikasi sederhana, penanganan kesalahan, pengujian, serta penyusunan aplikasi mobile yang modular dan terdokumentasi. Pada akhir perkuliahan, mahasiswa mampu merancang, mengimplementasikan, menguji, mendemonstrasikan, dan mendokumentasikan aplikasi mobile Flutter yang menggunakan REST API dan basis data MySQL sebagai proyek akhir. | |
| Bahan Kajian : Materi Pembelajaran | Bahan kajian mata kuliah Bahasa Pemrograman II mencakup pengembangan aplikasi mobile menggunakan Flutter dan bahasa pemrograman Dart. Materi diawali dengan pengenalan pengembangan aplikasi mobile, konsep native dan cross-platform, lingkungan pengembangan Flutter, serta dasar-dasar bahasa Dart yang meliputi variabel, tipe data, operator, struktur kontrol, collection, function, null safety, dan pemrograman berorientasi objek. Selanjutnya mahasiswa mempelajari struktur project Flutter, widget, layout, state, form, validasi, event handling, navigasi, dan pengelolaan antarmuka aplikasi. Pembelajaran dilanjutkan dengan asynchronous programming, penggunaan REST API, pertukaran data JSON, integrasi aplikasi Flutter dengan backend dan database MySQL, implementasi operasi CRUD, autentikasi, pengelolaan session/token, serta keamanan dasar aplikasi. Pada tahap akhir, mahasiswa mempelajari arsitektur aplikasi, debugging, testing, version control menggunakan Git, dokumentasi, proses build, dan finalisasi proyek aplikasi mobile terintegrasi sebagai bentuk implementasi kompetensi secara menyeluruh. | |
| Pustaka | Utama | |
|
||
| Pendukung | ||
|
||
| Dosen Pengampu | M. Nuraminudin, S.Kom., M.Kom., Dewi Anisa Istiqomah, S.Pd., M.Cs., Stevi Ema Wijayanti, M.Kom., Arif Nur Rohman, M.Kom | |
| Mata Kuliah Syarat | Logika dan Algoritma | |
| Pertemuan Ke | Kemampuan akhir tiap tahapan belajar (Sub-CPMK) | Penilaian | Bentuk Pembelajaran; Metode Pembelajaran; Penugasan Mahasiswa; | Materi Pembelajaran | Bobot Penilaian | ||
|---|---|---|---|---|---|---|---|
| Indikator | Kriteria & Teknik | Luring | Daring | ||||
| 1 |
sub.cpmk.SI085.CPMK18.1-Mampu menjelaskan karakteristik aplikasi lintas platform, arsitektur Flutter, lingkungan pengembangan, serta peran Dart dalam pengembangan aplikasi mobile. sub.cpmk.SI085.CPMK18.2-Mampu menjelaskan sintaks dasar, tipe data, operator, struktur kontrol, fungsi, koleksi, dan null safety dalam bahasa Dart. |
Mahasiswa mampu menjelaskan ruang lingkup mata kuliah, prinsip OBE, konsep aplikasi mobile lintas platform, karakteristik Flutter dan Dart, serta perangkat pengembangan yang digunakan. Mahasiswa mampu menjelaskan dan menggunakan struktur program, variabel, konstanta, tipe data, operator, serta konversi data dalam Dart. |
Kriteria Ketepatan jawaban kuis sesuai perintah soal Teknik Kuis tentang pengenalan Flutter dan Dart Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Ceramah Langsung,[C=75 Menit] Kuliah,Kuis,[K=15 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Ceramah Langsung,[C=60 Menit] Kuliah,Kuis,[K=30 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit] |
Topik Pengenalan Pengembangan Aplikasi Mobile. Dasar Bahasa Dart Sub Topik Konsep aplikasi mobile; native vs cross-platform; pengenalan Flutter; pengenalan Dart; single codebase; Hot Reload. Struktur program Dart; main(); variabel; var, final, const; tipe data; operator; String interpolation |
1 |
| 3 | |||||||
| 2 |
sub.cpmk.SI085.CPMK15.1-Mampu menerapkan sintaks dasar, tipe data, operator, struktur kontrol, fungsi, koleksi, dan null safety dalam bahasa Dart. |
Mahasiswa mampu memasang, mengonfigurasi, dan memverifikasi lingkungan pengembangan Flutter. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas praktikum mengenai pengenalan Flutter dan Dart serta Development Enviroment Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=60 Menit] Praktikum,Video Pembelajaran,[VA=30 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Topik Persiapan Lingkungan Pengembangan Sub Topik VS Code; Flutter SDK; Dart SDK; Android SDK; emulator/device; extension Flutter dan Dart; flutter doctor; project pertama |
2 |
| 4 |
sub.cpmk.SI085.CPMK15.1-Mampu menerapkan sintaks dasar, tipe data, operator, struktur kontrol, fungsi, koleksi, dan null safety dalam bahasa Dart. |
Mahasiswa mampu membuat program Dart sederhana menggunakan variabel, tipe data, operator, input-output, dan konversi data. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas praktikum mengenai variabel dan tipe data Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Ceramah Langsung,[C=60 Menit] Praktikum,Video Pembelajaran,[VA=30 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Topik Praktikum Dasar Dart Sub Topik Deklarasi variabel; operasi aritmetika; konversi tipe data; input-output sederhana; latihan program dasar |
2 |
| 5 |
sub.cpmk.SI085.CPMK18.2-Mampu menjelaskan sintaks dasar, tipe data, operator, struktur kontrol, fungsi, koleksi, dan null safety dalam bahasa Dart. |
Mahasiswa mampu menjelaskan dan menerapkan percabangan, perulangan, serta pengolahan koleksi dalam Dart. Mahasiswa mampu menjelaskan fungsi, parameter, return value, scope, anonymous function, dan modularisasi program. |
Kriteria Ketepatan jawaban kuis sesuai perintah soal Teknik Kuis tentang kontrol flow dan fungsi di Dart Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Proses Belajar,[PB=75 Menit] Penugasan,Kuis,[K=15 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Video Pembelajaran,[VA=30 Menit] Kuliah,Diskusi,[DS=40 Menit] Penugasan,Kuis,[K=20 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit] |
Topik Struktur Kontrol dan Collection. Function dan Modular Programming. Sub Topik if; else; switch; for; while; do-while; List; Set; Map; Function; parameter; return value; named parameter; optional parameter; arrow function; scope |
1 |
| 7 | |||||||
| 6 |
sub.cpmk.SI085.CPMK15.1-Mampu menerapkan sintaks dasar, tipe data, operator, struktur kontrol, fungsi, koleksi, dan null safety dalam bahasa Dart. |
Mahasiswa mampu menyelesaikan kasus pengambilan keputusan dan pengolahan data berulang menggunakan Dart. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas praktikum tentang kontrol flow (percabangan dan perulangan) Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Praktikum Online,[PR=30 Menit] Praktikum,Video Pembelajaran,[VA=60 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Topik Praktikum Struktur Kontrol Sub Topik Implementasi percabangan; perulangan; pengolahan List dan Map; latihan algoritma sederhana |
2 |
| 8 |
sub.cpmk.SI085.CPMK15.1-Mampu menerapkan sintaks dasar, tipe data, operator, struktur kontrol, fungsi, koleksi, dan null safety dalam bahasa Dart. |
Mahasiswa mampu memecah program menjadi fungsi-fungsi yang modular dan dapat digunakan kembali. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas membuat program dengan menerapkan fungsi. Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=30 Menit] Praktikum,Video Pembelajaran,[VA=60 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Praktikum Function Sub Topik Pembuatan function; validasi; perhitungan; modularisasi program; refactoring |
2 |
| 9 |
sub.cpmk.SI085.CPMK18.3-Mampu menjelaskan konsep pemrograman berorientasi objek dalam Dart yang meliputi class, object, constructor, encapsulation, inheritance, abstraction, interface, dan polymorphism. |
Mahasiswa mampu menjelaskan class, object, property, method, constructor, encapsulation, getter, setter, dan data modeling dalam Dart. |
Kriteria Ketepatan jawaban kuis sesuai perintah soal Teknik Kuis tentang class, object, property dan method Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Proses Belajar,[PB=60 Menit] Kuliah,Diskusi,[DS=15 Menit] Penugasan,Kuis,[K=15 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Video Pembelajaran,[VA=30 Menit] Kuliah,Diskusi,[DS=30 Menit] Penugasan,Kuis,[K=30 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit] |
Topik OOP Dasar pada Dart Sub Topik Class; object; property; method; constructor; encapsulation; getter dan setter |
1 |
| 10 |
sub.cpmk.SI085.CPMK15.2-Mampu menerapkan konsep pemrograman berorientasi objek dalam Dart yang meliputi class, object, constructor, encapsulation, inheritance, abstraction, interface, dan polymorphism. |
Mahasiswa mampu mengimplementasikan class dan object dalam kasus sistem informasi sederhana. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas tentang penerapan class dan object dalam program menggunakan Dart Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=30 Menit] Praktikum,Video Pembelajaran,[VA=60 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Praktikum OOP Dasar Sub Topik Implementasi class dan object; constructor; method; collection of objects; studi kasus sederhana |
3 |
| 11 |
sub.cpmk.SI085.CPMK18.3-Mampu menjelaskan konsep pemrograman berorientasi objek dalam Dart yang meliputi class, object, constructor, encapsulation, inheritance, abstraction, interface, dan polymorphism. |
Mahasiswa mampu menjelaskan inheritance, abstraction, interface, polymorphism, mixin, serta null safety. |
Kriteria Ketepatan jawaban kuis sesuai perintah soal Teknik Tugas mengenai inheritance, abstraction, interface, dan polymorphism serta contoh implementasinya Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Proses Belajar,[PB=60 Menit] Kuliah,Diskusi,[DS=30 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Video Pembelajaran,[VA=30 Menit] Kuliah,Diskusi,[DS=60 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Topik OOP Lanjutan dan Null Safety Sub Topik Inheritance; abstraction; interface; polymorphism; mixin; nullable dan non-nullable type |
1 |
| 12 |
sub.cpmk.SI085.CPMK15.2-Mampu menerapkan konsep pemrograman berorientasi objek dalam Dart yang meliputi class, object, constructor, encapsulation, inheritance, abstraction, interface, dan polymorphism. |
Mahasiswa mampu menerapkan inheritance, abstraction, interface, polymorphism, mixin, dan null safety pada kasus pemrograman. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas tentang OOP lanjutan dan Null Safety Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=30 Menit] Praktikum,Video Pembelajaran,[VA=60 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Praktikum OOP Lanjutan Sub Topik Inheritance; overriding; abstract class; interface; mixin; null safety |
3 |
| 13 |
sub.cpmk.SI085.CPMK18.4-Mampu memahami dan menjelaskan antarmuka aplikasi Flutter, event handling, navigasi, pengiriman data antarlayar, form, validasi, dan pengelolaan state dalam aplikasi Flutter. |
Mahasiswa mampu menjelaskan struktur proyek Flutter, widget tree, StatelessWidget, StatefulWidget, BuildContext, dan siklus hidup state. |
Kriteria Ketepatan jawaban kuis sesuai perintah soal Teknik Kuis tentang widget pada Flutter Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Proses Belajar,[PB=40 Menit] Kuliah,Diskusi,[DS=30 Menit] Penugasan,Kuis,[K=20 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Video Pembelajaran,[VA=30 Menit] Kuliah,Proses Belajar,[PB=40 Menit] Penugasan,Kuis,[K=20 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit] |
Topik Fundamental Flutter Sub Topik Struktur project Flutter; pubspec.yaml; main.dart; widget tree; StatelessWidget; StatefulWidget; state |
1 |
| 14 |
sub.cpmk.SI085.CPMK15.3-Mampu memahami dan menerapkan antarmuka aplikasi Flutter, event handling, navigasi, pengiriman data antarlayar, form, validasi, dan pengelolaan state dalam aplikasi Flutter. |
Mahasiswa mampu membangun aplikasi Flutter sederhana menggunakan widget dasar dan perubahan state lokal. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Responsi mengenai Dasar Dart hingga penerapan OOP pada Dart. Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Tugas Responsi,[TR=90 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Tugas Responsi,[TR=90 Menit] Penugasan,Tugas Take Home,[TH=40 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=30 Menit] |
Topik Praktikum Widget Dasar Sub Topik MaterialApp; Scaffold; AppBar; Text; Button; Image; Container; setState; Hot Reload |
10 |
| 15 |
sub.cpmk.SI085.CPMK18.1-Mampu menjelaskan karakteristik aplikasi lintas platform, arsitektur Flutter, lingkungan pengembangan, serta peran Dart dalam pengembangan aplikasi mobile. sub.cpmk.SI085.CPMK18.2-Mampu menjelaskan sintaks dasar, tipe data, operator, struktur kontrol, fungsi, koleksi, dan null safety dalam bahasa Dart. sub.cpmk.SI085.CPMK18.3-Mampu menjelaskan konsep pemrograman berorientasi objek dalam Dart yang meliputi class, object, constructor, encapsulation, inheritance, abstraction, interface, dan polymorphism. sub.cpmk.SI085.CPMK18.4-Mampu memahami dan menjelaskan antarmuka aplikasi Flutter, event handling, navigasi, pengiriman data antarlayar, form, validasi, dan pengelolaan state dalam aplikasi Flutter. |
Mahasiswa mampu memahami keseluruhan materi yang telah dipahami |
Kriteria Ketepatan jawaban ujian sesuai perintah soal Teknik Tes Tulis (UTS) Rubrik Holistik |
Ujian terjadwal,Durasi sesuai DAAK,[D=98 Menit] |
Ujian terjadwal,Durasi sesuai DAAK,[D=100 Menit] |
Topik Ujian Tengah Semester Sub Topik Evaluasi Dart dasar; struktur kontrol; function; OOP; null safety; dasar Flutter |
15 |
| 16 |
sub.cpmk.SI085.CPMK18.4-Mampu memahami dan menjelaskan antarmuka aplikasi Flutter, event handling, navigasi, pengiriman data antarlayar, form, validasi, dan pengelolaan state dalam aplikasi Flutter. |
Mahasiswa mampu menjelaskan prinsip layout, styling, asset, tema, dan desain antarmuka responsif pada Flutter. Mahasiswa mampu menjelaskan mekanisme input, event handling, form, validasi, navigasi, route, dan pengiriman data antarlayar. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas membuat rancangan aplikasi yang akan dibuat sebagai final project Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Proses Belajar,[PB=30 Menit] Kuliah,Diskusi,[DS=60 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Video Pembelajaran,[VA=30 Menit] Kuliah,Diskusi,[DS=60 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Layout dan Desain Antarmuka. Form, Event, dan Navigation. Sub Topik Row; Column; Stack; Padding; SizedBox; Expanded; Flexible; ListView; GridView; Theme; MediaQuery. TextField; TextFormField; controller; Form; validator; event handling; Navigator; route; passing data. |
1 |
| 18 | |||||||
| 17 |
sub.cpmk.SI085.CPMK15.3-Mampu memahami dan menerapkan antarmuka aplikasi Flutter, event handling, navigasi, pengiriman data antarlayar, form, validasi, dan pengelolaan state dalam aplikasi Flutter. |
Mahasiswa mampu membuat antarmuka Flutter yang terstruktur, konsisten, dan responsif. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas merancang dan menerapkan desain antarmuka yang dibuat ke dalam Flutter Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Proses Belajar,[PB=20 Menit] Kuliah,Video Pembelajaran,[VA=70 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Praktikum UI Flutter Sub Topik Pembuatan layout; halaman login/dashboard; asset; theme; responsive layout; reusable widget |
2 |
| 19 |
sub.cpmk.SI085.CPMK15.3-Mampu memahami dan menerapkan antarmuka aplikasi Flutter, event handling, navigasi, pengiriman data antarlayar, form, validasi, dan pengelolaan state dalam aplikasi Flutter. |
Mahasiswa mampu membangun form tervalidasi dan navigasi antarlayar yang membawa data. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas membangun form dan navigasi antarlayar pada aplikasi sederhana. Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=20 Menit] Praktikum,Video Pembelajaran,[VA=70 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Praktikum Form dan Navigasi Sub Topik Form input; validasi; perpindahan halaman; pengiriman data; halaman detail |
2 |
| 20 |
sub.cpmk.SI085.CPMK18.4-Mampu memahami dan menjelaskan antarmuka aplikasi Flutter, event handling, navigasi, pengiriman data antarlayar, form, validasi, dan pengelolaan state dalam aplikasi Flutter. |
Mahasiswa mampu menjelaskan state lokal, lifting state up, pemisahan UI dan logika, serta pengantar pola pengelolaan state. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas membuat rancangan aplikasi untuk final project Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Proses Belajar,[PB=60 Menit] Kuliah,Diskusi,[DS=30 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Video Pembelajaran,[VA=30 Menit] Kuliah,Proses Belajar,[PB=30 Menit] Kuliah,Diskusi,[DS=30 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik State Management Sub Topik Konsep state; local state; setState; lifting state up; separation of concerns; pengantar Provider |
1 |
| 21 |
sub.cpmk.SI085.CPMK15.3-Mampu memahami dan menerapkan antarmuka aplikasi Flutter, event handling, navigasi, pengiriman data antarlayar, form, validasi, dan pengelolaan state dalam aplikasi Flutter. |
Mahasiswa mampu mengelola state aplikasi sederhana dan memisahkan widget, model, serta logika. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas membuat program sederhana Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=20 Menit] Praktikum,Video Pembelajaran,[VA=70 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Praktikum State Management Sub Topik Pengelolaan data lokal; tambah/hapus data; pemisahan model, widget, dan logic; refactoring |
3 |
| 22 |
sub.cpmk.SI085.CPMK18.5-Mampu merancang REST API, memahami konversi JSON, dan integrasi aplikasi Flutter dengan backend serta basis data MySQL. |
Mahasiswa mampu menjelaskan asynchronous programming, Future, async, await, Stream, exception handling, HTTP, REST, status code, dan JSON. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas merancang API untuk aplikasi yang dipilih sebagai final project Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Proses Belajar,[PB=60 Menit] Kuliah,Diskusi,[DS=30 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Video Pembelajaran,[VA=30 Menit] Kuliah,Diskusi,[DS=60 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Asynchronous Programming dan REST API Integrasi Flutter, API, dan MySQL Sub Topik Future; async-await; Stream; exception handling; HTTP; REST; endpoint; status code; JSON. Client-server; backend API; database MySQL; GET; POST; PUT/PATCH; DELETE; request-response JSON. |
2 |
| 24 | |||||||
| 23 |
sub.cpmk.SI085.CPMK15.4-Mampu menerapkan operasi CRUD, autentikasi sederhana, pengelolaan sesi, mengonsumsi REST API, mengintegrasikan aplikasi Flutter dengan backend serta basis data MySQL. |
Mahasiswa mampu mengambil data dari REST API, mengonversi JSON menjadi objek Dart, dan menampilkannya pada aplikasi Flutter. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas menerapkan REST API pada aplikasi sederhana Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=20 Menit] Praktikum,Video Pembelajaran,[VA=70 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Praktikum REST API Sub Topik HTTP GET; package http; jsonDecode; model fromJson; FutureBuilder; loading dan error handling |
3 |
| 25 |
sub.cpmk.SI085.CPMK15.4-Mampu menerapkan operasi CRUD, autentikasi sederhana, pengelolaan sesi, mengonsumsi REST API, mengintegrasikan aplikasi Flutter dengan backend serta basis data MySQL. |
Mahasiswa mampu mengimplementasikan proses tambah, baca, ubah, dan hapus data melalui REST API dan MySQL. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas menerapkan REST untuk proses tambah, baca, ubah, dan hapus data Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=20 Menit] Praktikum,Video Pembelajaran,[VA=70 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Praktikum CRUD Sub Topik Menampilkan data; tambah data; edit data; hapus data; form CRUD; refresh data |
3 |
| 26 |
sub.cpmk.SI085.CPMK18.5-Mampu merancang REST API, memahami konversi JSON, dan integrasi aplikasi Flutter dengan backend serta basis data MySQL. |
Mahasiswa mampu menjelaskan autentikasi berbasis API, pengelolaan sesi, token, penyimpanan lokal, header otorisasi, serta keamanan dasar aplikasi. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas hasil rancangan REST API dalam aplikasi serta penerapannya dalam aplikasi Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Proses Belajar,[PB=60 Menit] Kuliah,Diskusi,[DS=30 Menit] Penugasan,Tugas Take Home,[TH=30 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=40 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Video Pembelajaran,[VA=30 Menit] Kuliah,Proses Belajar,[PB=20 Menit] Kuliah,Diskusi,[DS=40 Menit] Penugasan,Tugas Take Home,[TH=30 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=40 Menit] |
Topik Authentication dan Keamanan Dasar Sub Topik Login API; authentication; authorization; token/session; Authorization header; HTTPS; validasi |
2 |
| 27 |
sub.cpmk.SI085.CPMK15.4-Mampu menerapkan operasi CRUD, autentikasi sederhana, pengelolaan sesi, mengonsumsi REST API, mengintegrasikan aplikasi Flutter dengan backend serta basis data MySQL. |
Mahasiswa mampu menerapkan login, pengelolaan sesi, akses endpoint terproteksi, dan logout pada aplikasi Flutter. |
Kriteria Ketepatan jawaban tugas sesuai perintah soal Teknik Tugas implementasi autentikasi pada halaman login Rubrik Holistik |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=90 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Praktikum,Persiapan Perkuliahan,[P=10 Menit] Praktikum,Proses Belajar,[PB=20 Menit] Praktikum,Video Pembelajaran,[VA=70 Menit] Penugasan,Tugas Take Home,[TH=50 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=20 Menit] |
Topik Praktikum Authentication Sub Topik Login; penyimpanan sesi/token; halaman terproteksi; pengecekan status login; logout |
3 |
| 28 |
sub.cpmk.SI085.CPMK18.6-Mampu mengembangkan, mendemonstrasikan, menjelaskan, dan mempertanggungjawabkan aplikasi Flutter terintegrasi REST API dan MySQL secara kolaboratif. |
Mahasiswa mampu menjelaskan arsitektur aplikasi modular, pengujian, debugging, version control, dokumentasi, build, dan persiapan distribusi aplikasi. Mahasiswa mampu mengintegrasikan seluruh komponen aplikasi, melakukan pengujian, memperbaiki kesalahan, dan menyiapkan produk akhir. |
Kriteria Ketepatan hasil proyek sesuai topik yang dipilih Teknik Presentasi Rubrik Holistik |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Presentasi,[PS=90 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit] |
Kuliah,Persiapan Perkuliahan,[P=10 Menit] Kuliah,Presentasi,[PS=90 Menit] Pemahaman materi mandiri,Kegiatan Mandiri,[PM=70 Menit] |
Topik Arsitektur, Testing, dan Version Control. Finalisasi Proyek Sub Topik Struktur aplikasi modular; service; repository; debugging; testing; Git; dokumentasi; build APK. Integrasi fitur; code review; functional testing; debugging; Git repository; dokumentasi; build APK |
4 |
| 29 | |||||||
| 30 |
sub.cpmk.SI085.CPMK15.5-Mampu merancang struktur aplikasi yang modular, melakukan pengujian dan debugging, menggunakan version control, serta menerapkan keamanan dasar aplikasi. |
Mahasiswa mampu mengembangkan, mendemonstrasikan, menjelaskan, menguji, dan mempertanggungjawabkan aplikasi Flutter terintegrasi REST API dan MySQL. |
Kriteria Ketepatan jawaban ujian sesuai perintah soal Teknik Tes Tulis (UAS) Rubrik Holistik |
Ujian terjadwal,Durasi sesuai DAAK,[D=100 Menit] |
Ujian terjadwal,Durasi sesuai DAAK,[D=100 Menit] |
Topik Ujian Akhir Semester Sub Topik Presentasi proyek; demonstrasi aplikasi; Flutter–REST API–MySQL; CRUD; authentication; evaluasi source code; pelaporan aplikasi |
30 |
| CPL | MK | CPMK | Kuis | Tugas Praktikum | Tugas Teori (Individu) | Responsi | UTS | Tugas Teori (Kelompok) | Unjuk Kerja (Presentasi) | UAS |
|---|---|---|---|---|---|---|---|---|---|---|
| CPL06 | BAHASA PEMROGRAMAN II | CPMK15 | Y | Y | Y | |||||
| CPL07 | BAHASA PEMROGRAMAN II | CPMK18 | Y | Y | Y | Y | Y |
| CPL | CPMK | Sub-CPMK | Detail Penugasan (Teknik Penilaian) | Bobot % | Kriteria Penilaian |
|---|---|---|---|---|---|
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.1, sub.cpmk.SI085.CPMK18.2 | Kuis tentang pengenalan Flutter dan Dart | 1 | Ketepatan jawaban kuis sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.1 | Tugas praktikum mengenai pengenalan Flutter dan Dart serta Development Enviroment | 2 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.1 | Tugas praktikum mengenai variabel dan tipe data | 2 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.2 | Kuis tentang kontrol flow dan fungsi di Dart | 1 | Ketepatan jawaban kuis sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.1 | Tugas praktikum tentang kontrol flow (percabangan dan perulangan) | 2 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.1 | Tugas membuat program dengan menerapkan fungsi. | 2 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.3 | Kuis tentang class, object, property dan method | 1 | Ketepatan jawaban kuis sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.2 | Tugas tentang penerapan class dan object dalam program menggunakan Dart | 3 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.3 | Tugas mengenai inheritance, abstraction, interface, dan polymorphism serta contoh implementasinya | 1 | Ketepatan jawaban kuis sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.2 | Tugas tentang OOP lanjutan dan Null Safety | 3 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.4 | Kuis tentang widget pada Flutter | 1 | Ketepatan jawaban kuis sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.3 | Responsi mengenai Dasar Dart hingga penerapan OOP pada Dart. | 10 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.1, sub.cpmk.SI085.CPMK18.2, sub.cpmk.SI085.CPMK18.3, sub.cpmk.SI085.CPMK18.4 | Tes Tulis (UTS) | 15 | Ketepatan jawaban ujian sesuai perintah soal |
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.4 | Tugas membuat rancangan aplikasi yang akan dibuat sebagai final project | 1 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.3 | Tugas merancang dan menerapkan desain antarmuka yang dibuat ke dalam Flutter | 2 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.3 | Tugas membangun form dan navigasi antarlayar pada aplikasi sederhana. | 2 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.4 | Tugas membuat rancangan aplikasi untuk final project | 1 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.3 | Tugas membuat program sederhana | 3 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.5 | Tugas merancang API untuk aplikasi yang dipilih sebagai final project | 2 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.4 | Tugas menerapkan REST API pada aplikasi sederhana | 3 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.4 | Tugas menerapkan REST untuk proses tambah, baca, ubah, dan hapus data | 3 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.5 | Tugas hasil rancangan REST API dalam aplikasi serta penerapannya dalam aplikasi | 2 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.4 | Tugas implementasi autentikasi pada halaman login | 3 | Ketepatan jawaban tugas sesuai perintah soal |
| CPL07 | CPMK18 | sub.cpmk.SI085.CPMK18.6 | Presentasi | 4 | Ketepatan hasil proyek sesuai topik yang dipilih |
| CPL06 | CPMK15 | sub.cpmk.SI085.CPMK15.5 | Tes Tulis (UAS) | 30 | Ketepatan jawaban ujian sesuai perintah soal |
| Total | 100 | ||||
| CPL | MK | CPMK | Kuis | Tugas Praktikum | Tugas Teori (Individu) | Responsi | UTS | Tugas Teori (Kelompok) | Unjuk Kerja (Presentasi) | UAS | Total |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CPL06 | BAHASA PEMROGRAMAN II | CPMK15 | 0% | 30% | 0% | 10% | 0% | 0% | 0% | 30% | 70% |
| CPL07 | BAHASA PEMROGRAMAN II | CPMK18 | 4% | 0% | 1% | 0% | 15% | 6% | 4% | 0% | 30% |
| 100% | |||||||||||
| Predikat | Skor | Deskripsi |
|---|---|---|
| Sangat Baik | 81 - 100 | Sangat baik melakukan analisis perancangan dan implementasi |
| Baik | 61 - 80 | Baik melakukan analisis perancangan dan implementasi |
| Cukup | 41 - 60 | Cukup melakukan analisis, perancangan, implementasi, pengujian, dokumentasi, menunjukkan sikap, mengembangkan ide, serta menjelaskan pemahaman |
| Kurang | 21 - 40 | Kurang melakukan analisis, perancangan, implementasi, pengujian, dokumentasi, menunjukkan sikap, mengembangkan ide, serta menjelaskan pemahaman |
| Sangat Kurang | 0 - 20 | Sangat kurang melakukan analisis, perancangan, implementasi, pengujian, dokumentasi, menunjukkan sikap, mengembangkan ide, serta menjelaskan pemahaman |