PBO-5 Konsep dan Sifat Obyek

Laporan mata kuliah Pemrograman Berorientasi Objek (A) - Pertemuan 5

Nama: Nabil Irawan

NRP: 5025241231

Kelas: Pemrograman Berorientasi Objek (A)

Laporan

Membuat aplikasi sistem pengambilan mata kuliah yang melibatkan Dosen, Mahasiswa, dan mata kuliah yang diambil

Pada laporan ini saya telah berhasil mengimplementasikan aplikasi FRS sederhana.

Dosen.java

Merepresentasikan seorang dosen dengan dua informasi penting, yaitu nama dan NIP. Objek dibuat lewat konstruktor, bisa dibaca lewat getter, dan punya toString() agar tampil rapi saat dicetak. Class ini dipakai oleh MataKuliah untuk menunjukkan siapa pengampunya.

Code:

MataKuliah.java

Menyimpan detail satu mata kuliah, seperti kode, nama, jumlah SKS, kapasitas kelas, jumlah peserta yang sudah terisi, jadwal, serta referensi ke Dosen. Terdapat logika sederhana untuk ketersediaan kursi, pendaftaran, dan pembatalan. Representasi teksnya dirangkum via toString() sehingga mudah ditampilkan di daftar maupun KRS.

Code:

Mahasiswa.java

Menampung identitas mahasiswa seperti nama dan NRP, serta daftar MK yang sudah diambil. Penambahan MK hanya dilakukan jika belum terdaftar dan kursi masih tersedia, sekalian memanggil mekanisme pendaftarannya di MataKuliah. Penghapusan MK dari KRS juga sinkron dengan pengurangan terisi di MK. Tedapat juga fitur untuk menghitung total SKS dari seluruh MK yang sedang diambil.

Main.java

Menjadi titik masuk program dan mengatur interaksi di terminal. Di awal kode membuat beberapa contoh dosen dan mata kuliah, lalu meminta input nama dan NRP untuk membuat objek Mahasiswa. Selanjutnya menampilkan menu FRS yang terdiri dari melihat daftar MK, mengambil, drop, melihat KRS, dan mengekspor KRS ke berkas teks krs_{nrp}.txt. Ekspor KRS menulis ringkasan nama/NRP, daftar MK (kode, nama, SKS, jadwal, dosen), serta total SKS ke berkas di folder proyek.

Proof

Input dan tampilan awal:

Lihat daftar mata kuliah:

Ambil mata kuliah:

Drop mata kuliah:

Lihat KRS:

Ekspor KRS record:

Exit:

Last updated