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:
- Class & Object: Class adalah blueprint atau template untuk membuat object.
Dalam proyek ini, kita akan membuat kelas seperti TicketMachine, Ticket,
dan User.
- 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().
- 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
- 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.
- User : Class yang berisikan data dari user itu sendiri dan sebagai identitas yang akan melakukan transaksi
- UserTicketItem : Class yang berisikan data yang dibutuhkan untuk melakukan kalkulasi pada TicketMachine.
Implementasi Kode Dari TicketMachine, User, UserTicketItem, dan testnya berada pada
Project : Ticket Machine Project
Kode untuk melakukan alur dan hasilnya sebagai berikut:
Comments
Post a Comment