Langsung ke konten utama

Unggulan

Pertemuan 11 - Market Siswa

Market Siswa — Penjelasan Aplikasi Nama : Christoforus Indra Bagus Pratama NRP : 5025231124 Mata Kuliah : Pemrograman Perangkat Bergerak (C) Tanggal : 6 Mei 2026 Pertemuan : 11 Link : Github Market Siswa — Aplikasi Marketplace untuk Pelajar Market Siswa adalah aplikasi Android yang dibuat sebagai tugas mata kuliah Mobile Programming . Aplikasi ini dirancang sebagai platform jual-beli sederhana yang ditujukan untuk siswa di lingkungan sekolah. Dengan Market Siswa, siswa bisa menampilkan produk yang mereka jual, menambahkan produk baru, hingga mengelola daftar produk mereka — semua dari satu aplikasi yang ringan dan mudah digunakan. Aplikasi ini dibangun menggunakan Jetpack Compose , yaitu toolkit modern dari Google untuk membangun tampilan aplikasi Android secara deklaratif. Selain itu, aplikasi ini menerapkan prinsip-p...

Tugas Pertemuan 12 - Sistem Reservasi Tiket Pesawat

Tugas Pertemuan 12 - Sistem Reservasi Tiket Pesawat

Buatlah sistem reservasi tiket pesawat yang mendukung tiga jenis kelas penerbangan :

  1. Ekonomi
  2. Bisnis
  3. First Class

Setiap kelas penerbangan memiliki perhitungan tarif yang berbeda-beda. Selain itu, setiap kelas juga memiliki kebijakan khusus, seperti fasilitas tambahan, batas bagasi, atau layanan yang disediakan.
Struktur Kelas :

  1. Kelas Ticket adalah kelas dasar atau superclass yang berfungsi sebagai kelas umum untuk semua jenis reservasi tiket pesawat.
  2. Kelas EconomyTicket, BusinessTicket, dan FirstClassTicket adalah subclass yang mewarisi dari Ticket. Setiap subclass mengoverride metode calculateFare() untuk menentukan tarif sesuai kelas penerbangan.
  3. Ketentuan Diskon ticket :
    • EconomyTicket memberikan diskon 10%.
    • BusinessTicket menambahkan biaya 25%.
    • FirstClassTicket menambahkan biaya 50%.

Penjelasan

Polymorphism pada program ini diterapkan ketika metode calculateFare() dan displayInfo() dipanggil pada objek dengan tipe referensi Ticket tetapi mengacu pada objek subclass (EconomyTicket, BusinessTicket, atau FirstClassTicket).
Fungsi polymorphism di sini adalah untuk mempermudah pengelolaan berbagai jenis tiket penerbangan dengan tarif yang berbeda tanpa menggunakan struktur kontrol kompleks, memungkinkan ekspansi program dengan mudah, dan mengurangi duplikasi kode.

Source Code : Link Github

Superclass Ticket

  • Berfungsi sebagai kelas dasar yang menyimpan informasi umum tiket seperti nama penumpang dan harga dasar.
  • Metode calculateFare() dihitung berdasarkan harga dasar, akan dioverride oleh subclass untuk perhitungan tarif yang lebih spesifik.

Source Code : Link Github Ticket

Kelas EconomyTicket (Subclass)

  • Mengoverride metode calculateFare() untuk menerapkan diskon 10%.
  • Menambahkan informasi diskon dalam metode displayInfo().

Source Code : Link Github Economy

Kelas BusinessTicket (Subclass)

  • Mengoverride metode calculateFare() untuk menambahkan biaya 25%.
  • Menampilkan informasi tambahan biaya dalam metode displayInfo().

Source Code : Link Github Business

Kelas FirstClassTicket (Subclass)

  • Mengoverride metode calculateFare() untuk menambahkan biaya 50%.
  • Menampilkan informasi tambahan biaya dalam metode displayInfo().

Source Code : Link Github First Class

Kelas Main

  • Membuat objek tiket untuk setiap kelas penerbangan (Ekonomi, Bisnis, First Class).
  • Menampilkan informasi setiap tiket menggunakan metode polymorphism displayInfo().

Source Code : Link Github Main

Diagram Kelas

Membuat Penumpang Baru

Pesan Tiket Ekonomi

Pesan Tiket Bisnis

Pesan Tiket First Class

Komentar

Postingan Populer