Pertemuan 3 OOP - Ticket Machine Project

Nama : Kadek Fajar Pramartha Yasodana

NRP : 5025231185

Kelas : PBO (A)


Ticket Machine Project adalah salah satu contoh proyek yang sering digunakan untuk mengajarkan konsep Object-Oriented Programming (OOP). Proyek ini biasanya melibatkan pembuatan sebuah sistem sederhana untuk menjual tiket dan digunakan untuk memperkenalkan konsep-konsep dasar OOP seperti class, object, atribut, dan metode.

Berikut adalah beberapa konsep OOP yang biasanya diajarkan melalui proyek Ticket Machine:

  1. Class & Object: Class adalah blueprint atau template untuk membuat object. Dalam proyek ini, kita akan membuat kelas seperti TicketMachine, Ticket, dan User.
  2. Atribut dan Metode: Atribut adalah variabel yang menyimpan data tentang object, sedangkan metode adalah fungsi yang melakukan operasi pada data tersebut. Misalnya, kelas TicketMachine mungkin memiliki atribut seperti price dan balance, serta metode seperti addBalance() dan showBalanceAndTickets().
  3. Enkapsulasi: Konsep ini mengajarkan bagaimana menyembunyikan detail implementasi dari pengguna kelas dan hanya menyediakan antarmuka publik yang diperlukan.
Dalam proyek yang saya kerjakan, saya mengimplementasi Ticket Machine yang bisa mensuport multi user dalam melakukan penambahan balance dan membeli ticket. Beberapa class yang saya implementasikan sebagai berikut
  1. TicketMachine : Class yang berisikan implementasi Ticket Machine berisikan atribut price yang digunakan untuk komputasi pembelian ticket, dan berisi hashmap dengan key adalah User dan value adalah UserTicketItem. terdapat beberapa metode seperti printTicketMachineLog, printTicketMachineLogWithUser, addUserBalance, userBuyTicket, dan showUserBalanceAndTickets.
  2. User : Class yang berisikan data dari user itu sendiri dan sebagai identitas yang akan melakukan transaksi
  3. UserTicketItem : Class yang berisikan data yang dibutuhkan untuk melakukan kalkulasi pada TicketMachine.
Alur yang digunakan sederhana, pertama kita menginstansiasi object TicketMachine. setelah itu kita juga harus menginstansiasi User yang akan bertransaksi. Lalu, kita bisa langsung memanggil fungsi pada TicketMachine object, yang sebagian besar mengambil identitas User sebagai parameter.

Implementasi Kode Dari TicketMachine, User, UserTicketItem, dan testnya berada pada

Kode untuk melakukan alur dan hasilnya sebagai berikut:








Comments

Popular posts from this blog

Pertemuan 6 KPPL - Implementasi Web ChatBot Tech Support System, Web & Prototipe & Metodologi

Pertemuan 13 OOP - Abstraksi & Simulasi Fox & Rabit

Pertemuan 7 KPPL - Studi Kasus Pembuatan Aplikasi dengan Agile