๐ป Sistem Pengambilan Mata Kuliah
Proyek ini saya buat sebagai simulasi sederhana dari sistem yang biasa digunakan mahasiswa untuk mengambil mata kuliah setiap awal semester. Program ini ditulis menggunakan bahasa Java dan dijalankan melalui terminal BlueJ.
๐ฏ Tujuan Proyek
Tujuan utama dari proyek Sistem Pengambilan Mata Kuliah ini adalah untuk memahami konsep pemrograman berorientasi objek (OOP) seperti:
- Encapsulation dan penggunaan class
- Relasi antar objek (Mahasiswa, Dosen, Mata Kuliah, dan Kelas)
- Penerapan ArrayList untuk menyimpan data dinamis
- Interaksi antar objek dengan menu berbasis teks
๐๏ธ Struktur Program
Program ini terdiri dari beberapa class utama:
- Dosen.java โ Menyimpan data dosen dan laboratoriumnya
- MataKuliah.java โ Berisi informasi mata kuliah dan daftar kelas yang tersedia
- KelasMK.java โ Mewakili satu kelas dari suatu mata kuliah dan dosen pengajarnya
- Mahasiswa.java โ Menyimpan data mahasiswa dan daftar mata kuliah yang diambil
- MainApp.java โ Program utama yang berisi logika menu dan proses interaksi
Berikut Visualisasi Struktur Programnya :

๐ง Fitur Utama
Program ini memiliki beberapa fitur sederhana yang mensimulasikan sistem akademik kampus:
- Login menggunakan NRP mahasiswa
- Menampilkan daftar mata kuliah dan dosen pengampu
- Memilih mata kuliah dan kelas yang diinginkan
- Mencetak daftar Kartu Rencana Studi (KRS)
- Setiap pergantian menu dilakukan dengan clear screen agar tampilannya bersih dan interaktif
๐งโ๐ป Tampilan Program
Berikut Demonstrasi dari Tampilan Programnya :
๐ฆ Kode Program Java
Akses kode pada Link Github berikut : https://github.com/rafly-alpha/task3-sistem-pengambilan-matakuliah
๐ Hasil Akhir
Setelah mahasiswa memilih beberapa mata kuliah, sistem akan menampilkan hasil KRS seperti ini:
=== Kartu Rencana Studi (KRS) ===
Nama: Rafly Al Fahrezi
NRP: 5025241131
Jurusan: Teknik Informatika
Mata Kuliah yang diambil:
- Jaringan Komputer - A (Dosen: Dr. Baskoro Adi P., S.Kom., M.Kom.)
- Konsep Kecerdasan Artifisial - D (Dosen: Imam Mustafa Kamal, S.ST, Ph.D.)
- Pemrograman Berorientasi Objek - A (Dosen: Fajar Baskoro, S.Kom., MT.)
- Teori Graf - D (Dosen: Victor Hariadi, S.Si., M.Kom.)
Tekan ENTER untuk kembali...
โจ Kesimpulan
Proyek Sistem Pengambilan Mata Kuliah ini membantu saya memahami bagaimana sebuah sistem akademik sederhana bekerja. Dengan memanfaatkan konsep OOP di Java, kita dapat membuat simulasi interaktif yang menyerupai sistem real seperti KRS online.
Selain sebagai latihan logika dan struktur data, proyek ini juga memperkenalkan bagaimana mengelola data antar objek, dan membangun program yang lebih terorganisir serta modular.
๐งพ Penutup
Proyek ini bisa dikembangkan lebih lanjut dengan fitur seperti:
- Penyimpanan data ke file (database sederhana)
- Validasi waktu dan batas SKS
- Tampilan GUI menggunakan JavaFX atau Swing
Semoga proyek ini bisa jadi inspirasi buat teman-teman yang sedang belajar Java, khususnya untuk memahami konsep OOP dengan studi kasus nyata di dunia kampus. ๐