EAS

 Nama: Aryaka Leorgi Eprideka

NRP: 5025231117

Kelas: PBO G


Soal EAS PBO:

  1. 1. Apa yang dimaksud dengan Inheritance dalam Java. Bagaimana implementasi inheritance dalam Final Project yang sedang dikerjakan.
  2. Inheritance dalam Java adalah fitur  ketika sebuah kelas memungkinkan  untuk mewarisi properti/atribut  dan fungsi dari kelas lain.
  3. Contoh implementasi kode pada final project : 
  4. ------------------------------------
  5. public class musicPlayer extends playbackListener {


  6.     }
  7. Penjelasan kode
  8. karena di dalam kode terdapat extends yang digunakan untuk menunjukkan bahwa kelas musicPlayer adalah subclass (child class) dari kelas playbackListener, sehingga konsep inheritance diterapkan.
  9. 2. Jelaskan fitur Aplikasi yang ada dalam Final Project
  10. pada final project kami membuat aplikasi yaitu pemutar Mp3 dan memiliki berbagai macam fitur seperti:
  11. Play: Digunakan untuk memulai file Mp3
  12. Pause: Digunakan untuk menghentikan file Mp3 yang sedang berjalan 
  13. Slider: Digunakan untuk mengatur posisi waktu lagu yang sedang diputar.
  14. Load song: Digunakan untuk mengambil file Mp3 yang ada pada directory, pada bagian ini file-file yang bukan merupakan file Mp3 akan terfilter dan hanya akan menyisakan file mp3 aja
  15. 3. Buatlah desain Diagram Kelas dari aplikasi Final Project


  16. 4. Implementasikan Aplikasi yang telah didesain dengan menggunakan Pemrograman Berbasis Obyek Java
  17. source code: github
  18. sebelum mulai kita harus menimport library library yang akan digunakan di aplikasi ini.
  19. langkah-langkah menambahkan libraries: 
  20. buka bluej dan ketik ctrl+, (atau click tools terus prefrences), setelah itu ke libraries dan import semua libraries di directory lib aplikasi kita.
  21. Run aplikasi:
  22. tinggal run fungsi yang app
  23. penjelasan kode:

  24. Kelas MusicPlayer

    Kelas ini mengatur pemutaran lagu menggunakan pustaka javazoom untuk memutar file MP3. Fungsinya mencakup memuat lagu dengan loadSong(), memutar lagu dengan playCurrentSong(), menjeda pemutaran dengan pauseSong(), dan menghentikan lagu dengan stopSong(). Pemutaran diatur melalui thread untuk menjaga kelancaran operasi seperti memperbarui slider pemutaran dan melanjutkan lagu dari posisi terakhir saat dijeda. Selain itu, kelas ini juga mengelola metadata lagu saat pemutaran berlangsung.

    Kelas MusicPlayerGUI

    Kelas ini menangani antarmuka grafis (GUI) pemutar musik menggunakan Swing. Komponen GUI meliputi toolbar, slider pemutaran, tombol play/pause, serta label untuk menampilkan judul dan artis lagu. Kelas ini juga memungkinkan pengguna untuk memuat lagu melalui file chooser (JFileChooser) dan menyediakan logika interaksi pengguna, seperti mengatur slider untuk melompat ke waktu tertentu dalam lagu, atau memperbarui tampilan saat lagu berubah.

    Kelas Song

    Kelas ini merepresentasikan sebuah lagu MP3, membaca metadata seperti judul, artis, durasi, dan frame rate per milidetik menggunakan pustaka mp3agic dan jaudiotagger. Metode-memetodenya termasuk mendapatkan informasi file lagu (getFilePath()) serta memproses durasi lagu ke dalam format yang dapat ditampilkan. Metadata ini diambil saat lagu dimuat dan digunakan oleh antarmuka GUI untuk memberikan informasi kepada pengguna.

    Kelas App

    Kelas ini adalah titik masuk aplikasi. Ia memulai GUI pemutar musik menggunakan SwingUtilities.invokeLater() untuk memastikan GUI berjalan di thread yang aman. Fungsinya hanya untuk menjalankan aplikasi dengan membuat dan menampilkan instance dari MusicPlayerGUI.

  25. 5. Buat PPT presentasi yang menunjang Demo Aplikasi
  26. https://www.canva.com/design/DAGZD8CvV08/SFhv_RyRvge8G2vB-6BT8A/edit?utm_content=DAGZD8CvV08&utm_campaign=designshare&utm_medium=link2&utm_source=sharebutton
  27. 6. Demokan aplikasi dengan membuat video dan diupload di Youtube.
  28. video demo: https://youtu.be/ZyUeacUZHFM


Komentar

Postingan populer dari blog ini

Tugas Pertemuan 2 PPB

Tugas Pertemuan 3 PPB

Tugas Pertemuan 1 PPB