Anda di halaman 1dari 9

PEMROGRAMAN BERORIENTASI OBJEK

LAPORAN TUGAS PRAKTIKUM KE-5


TOPIK : CLEAN CODE, OOP

Disusun Oleh:
221511018 Muhamad Fatah Rozaq

KELAS 2 – A

JURUSAN TEKNIK KOMPUTER DAN INFORMATIKA PROGRAM


STUDI DIPLOMA III TEKNIK INFORMATIKA POLITEKNIK NEGERI
BANDUNG
2023
Soal 1
1. Screenshoot hasil akhir program
RestaurantMain.java

2. Screenshoot setiap jawaban soal yang dipertanyakan

3. Permasalahan yang dihadapi


a. Amati desain setiap class, Apakah desain class tersebut sudah memenuhi konsep OOP yang
benar? Jika tidak, coba anda perbaiki dengan mengacu pada Design Hint di Buku Chapter
4.10. Setiap perubahan yang dibuat harus dibubuhi penjelasan serta argumentasiyang jelas.
b. Ada kebutuhan untuk mengembangkan aplikasi tersebut, dengan menambah fitur pemesanan
dan mengurangi setiap stok yang ada. Apakah dengan desain program yang ada dapat
dikembangkan? Jika Sulit kemukakan alasannya dan bandingkan dengan desain class hasil
modifikasi anda.
c. Pada program, masih terdapat smell code. Perbaiki agar menjadi clean code
4. Solusi dari permasalahan yang dihadapi
a. 1. Perbaikan Encasulaption
Pada kode diatas, masih belum tepat karena variable/state masih menggunakan metode
public. Seharusnya kita ubah menjadi metode private agar variable tidak bisa direct untuk
diakses. Selain itu kita juga bisa membuat setter atau getter bila diperlukan.

2. Pemisahan class antara menu makanan dan restaurant


Hal ini dilakukan untuk membantu dalam mengelola menu makanan dengan lebih
terstruktur
MenuMakanan.java
3. Penggunaan List untuk daftar menu makanan pada class Retaurant
Karena pada list ini program bisa menjadi lebih dinamis untuk menyimpan daftar menu
makanan.

b. Dengan program yang telah saya modifikasi, fitur Pemesanan dan pengurangan stok bisa
dilakukan. Kode ada pada poin a pada soal.
c. Saat dalam bentuk smell code
Restaurant.java
Setelah Perbaikan menjadi clean code
Restaurant.java
Pada kode diatas, tanda panah merah(major) maupun hijau(minor) sudah tidak ada. Dan beberapa
variable yang asalnya public, sudah saya buat private dan saya pindahkan ke kelas lain. Lalu ada
beberapa syntax “System.out.println” yang dianggap major, untuk diperbaiki. Kode tersebut
diperbaiki dengan menggunakan library dan logging dengan menggunakan fungsi logger di
dalamnya.
5. Nama teman yang membantu memecahkan permasalahan di persoalan ini
Tidak ada

Soal 2
Pada kasus ini, saya melanjutkan dari kasus sebelumnya
1. Screenshoot hasil akhir program
Restaurant.java
Restaurant.java
MenuMakanan.java (Class Product)

Penjualan.java
2. Screenshoot setiap jawaban soal yang dipertanyakan

3. Permasalahan yang dihadapi


Masih bingung untuk tetap menggunakan logger.log agar clean code atau tidak.
4. Solusi dari permasalahan yang dihadapi
Pada akhirnya tidak menggunakan logger.log, karena menurut saya tampilan output akan lebih
rapih apabila tidak menggunakan logger.log
5. Nama teman yang membantu memecahkan permasalahan di persoalan ini
Tidak ada

Link Github : https://github.com/FatahRozaq/PBO_Praktikum5

Anda mungkin juga menyukai