Postingan

Menampilkan postingan dari Oktober, 2025

Pertemuan 9: Desain World of Zuul

Gambar
Tugas Pertemuan 9 Nama: Farrel Aqilla Novianto NRP: 5025241015 Kelas: Pemrograman Berorientasi Objek (A) Source Code World of Zuul Pada tugas ini dilakukan analisis desain kelas (class design) terhadap program game World of Zuul. Analisis difokuskan pada dua aspek penting dalam rekayasa perangkat lunak, yaitu Cohesion dan Coupling. Cohesion (Kohesi) Kohesi menggambarkan sejauh mana tanggung jawab dan fungsi di dalam suatu kelas saling berkaitan secara logis. Sebuah kelas dikatakan memiliki high cohesion (kohesi tinggi) apabila seluruh metodenya berfokus pada satu tujuan atau tanggung jawab utama. Sebaliknya, low cohesion (kohesi rendah) terjadi bila satu kelas menangani banyak hal yang tidak berhubungan, sehingga sulit dipelihara dan diperluas. Dengan kata lain, kohesi yang tinggi menunjukkan bahwa kelas tersebut “berdiri sendiri” dan hanya melakukan hal yang memang menjadi perannya, tanpa mencampur urusan kelas lain. Coupling (Kopling) Kopling menunjukkan seberapa kuat ketergantungan ...

ETS: Membuat Vending Coffee Machine

Gambar
ETS Nama: Farrel Aqilla Novianto NRP: 5025241015 Kelas: Pemrograman Berorientasi Objek (A) Source Code Video Demo Mesin Kopi - myCoffee myCoffee adalah aplikasi yang mensimulasikan mesin penjual otomatis untuk minuman kopi. Pengguna dapat memilih jenis kopi, ukuran gelas, menambahkan gula atau susu, melakukan pembayaran, dan menerima kopi yang telah disiapkan oleh mesin. Sistem ini mengelola stok bahan (kopi, gula, susu, air), memproses pembayaran, serta memberikan laporan transaksi dan status mesin. Fitur myCoffee Menampilkan menu pilihan kopi. Konsumen dapat memilih jenis dan ukuran kopi. Konsumen dapat memilih gula atau menambah susu. Mesin menampilkan total harga dan dapat menghitung kembalian. Transaksi disimpan ke log dan hanya admin yang bisa mengakses. Jika stok habis, admin diingatkan untuk refill di menu stok. Untuk kelas dan objek ada 3, yaitu Menu sebagai halaman utama myCoffee, Coffee untuk menyimpan data-data kopi yang tersedia, dan BuyLog untuk mencatat log setiap pembel...

Pertemuan 7: Membuat TechSupport FRS

Gambar
Tugas Pertemuan 7 Nama: Farrel Aqilla Novianto NRP: 5025241015 Kelas: Pemrograman Berorientasi Objek (A) Source Code TechSupport FRS - mySupport Pada pertemuan ini, saya membuat program sistem bantuan (support system) berbasis teks yang meniru percakapan antara pengguna dengan asisten FRS (Formulir Rencana Studi). Sistem ini dirancang untuk memberikan respons otomatis terhadap berbagai masalah yang sering muncul dalam proses pengisian FRS.  Selain memberi respons berdasarkan kata kunci, program ini mengadopsi ide dari konsep “More-Sophisticated Behavior” agar tingkah laku sistem tidak monoton dan lebih adaptif. Latihan ini menerapkan konsep  “More-Sophisticated Behavior”  dan Pemrograman Berorientasi Objek (OOP), dengan cara membagi program menjadi beberapa kelas yang memiliki tanggung jawab berbeda: SupportSystem → pengendali utama alur program InputReader → menangani input pengguna Responder → menyimpan dan mengembalikan jawaban sesuai masalah Dengan cara ini, setiap k...

Pertemuan 6: Latihan Grouping Object

Gambar
Tugas Pertemuan 6 Nama: Farrel Aqilla Novianto NRP: 5025241015 Kelas: Pemrograman Berorientasi Objek (A) Source Code Grouping Object Grouping object adalah cara untuk mengelompokkan beberapa objek agar dapat saling berhubungan dan bekerja sama membentuk suatu sistem yang lebih kompleks. Objek pada OOP biasanya berdiri sendiri, tetapi dalam kenyataannya banyak kasus di mana satu objek memiliki relasi dengan objek lainnya. Misalnya pada kasus ini, seorang User bisa memiliki banyak Note. Dengan grouping object, hubungan tersebut bisa dimodelkan dengan baik sehingga aplikasi yang dibangun lebih realistis dan sesuai kebutuhan dunia nyata. Penerapan pada Personal Note App Untuk menerapkan konsep grouping object, saya membuat sebuah aplikasi sederhana bernama Personal Note App. Pada aplikasi ini: Kelas Note merepresentasikan sebuah catatan yang berisi judul dan isi Kelas NotebookApp bertindak sebagai container yang menyimpan banyak objek Note ke dalam sebuah ArrayList Relasi ini dapat dijelas...

Pertemuan 5: Konsep dan Sifat Objek

Gambar
Tugas Pertemuan 5 Nama: Farrel Aqilla Novianto NRP: 5025241015 Kelas: Pemrograman Berorientasi Objek (A) Source Code I mplementasi Grouping Object  mahasiswa biasanya harus mengisi Formulir Rencana Studi (FRS) untuk memilih mata kuliah yang akan diambil pada suatu semester. Proses ini melibatkan mahasiswa , dosen pengampu mata kuliah , dan daftar mata kuliah yang tersedia. Dalam tugas kali ini, saya akan membuat simulasi sistem FRS sederhana menggunakan Java berbasis console menu . Sistem ini memungkinkan mahasiswa untuk: Melihat daftar mata kuliah yang tersedia Mengambil mata kuliah (selama kuota masih ada) Menghapus/drop mata kuliah yang sudah diambil Menampilkan daftar mata kuliah yang sudah dipilih Kode Dosen.java /** * * @author Farrel Aqilla Novianto */ public class Dosen{ String nama; String nip; public Dosen(String namaInput, String nipInput){ nama = namaInput; nip = nipInput; } } Kode Mahasiswa.java /** * * @author Farrel Aqilla N...