Anda di halaman 1dari 11

MODUL 4

Membangun Aplikasi JavaBank

4.1 Tujuan

Tujuan dari pembelajaran materi ini adalah :


• Membaca dan memahami sebelum membuat program Java yang terdiri dari kelas dan objek
yang berinteraksi
• Menerapkan konsep pewarisan dalam pemecahan masalah
• Menguji kelas dalam isolasi
• Menjelaskan kapan lebih tepat menggunakan ArrayList dari pada sebuah Array

4.2. Mengubah Program yang Ada

Bila Anda memprogram dalam skenario dunia nyata, seperti untuk perusahaan, Anda akan sering
mempertahankan dan memodifikasi program yang ada.
• Dalam banyak kasus, masalah bisnis yang Anda selesaikan akan terkait dengan program yang
ada yang ditulis oleh pemrogram lain.
• Mampu memodifikasi program yang ada adalah keterampilan berharga yang harus Anda
terapkan dalam sebagian besar peran pemrogramer

4.3 Skenario pra penulisan Kode program

Bayangkan sebuah aplikasi perbankan.


• Apa yang harus dilakukan aplikasi perbankan?
- Izinkan pengguna untuk:
Buat akun, deposit di akun, tarik dari akun,
tampilkan saldo akun, dan hitung bunga.
• Apa saja komponen aplikasi perbankan?
- Akun
• Apa yang harus dilakukan masing-masing komponen?
- Buat, deposit, dan withdraw.

4.4 Membangun aplikasi perbankan :

a. Menyiapkan file JavaBank


Langkah-langkah untuk Menginstal Studi Kasus JavaBank
1. Pindahkan file JavaBank.jar.zip ke lokasi yang nyaman di komputer Anda.
Jangan unzip file.
2. Jalankan Eclipse.
3. Pilih lokasi ruang kerja dan jalankan WorkSpace.
Gambar 1. Pembuatan workspace

Langkah-langkah untuk Impor File Kode ke Workspace


1. Klik File, lalu Import.
2. Buka folder General.
3. Pilih Proyek yang Ada ke dalam Workspace.
4. Klik Next.

Gambar 2. Import file JavaBank

5. Klik Pilih file folder dan klik Browse dan cari file JavaBank.jar.zip. Klik open.
6. Pastikan keempat proyek (JavaBank (bin), JavaBank, JavaBankList, dan JavaBankListDel)
ada.
7. Klik Finish.
8. Klik Yes to All bila diminta untuk menimpa file.

Gambar 3. Tampilan file JavaBank

b. Menjalankan JavaBank

Untuk menjalankan JavaBank, kompilasi dan jalankan aplikasi JavaBank.java. Jendela JavaBank
akan muncul.

Saat Anda menjalankan program yang ditulis oleh orang lain, biasanya ada panduan pengguna.
Tidak ada panduan pengguna yang tersedia karena terserah pada Anda untuk bereksperimen
dengan aplikasi ini

Gambar 4. Tampilan aplikasi bank

c. Bereksperimen dengan JavaBank

Jalankan programnya.
• Anda harus menyimpan jurnal eksplorasi Anda dan mencatat perilaku aplikasi.
• Catat fitur yang menurut Anda harus ditambahkan.
• Ini akan membantu pemahaman Anda saat Anda mulai menyelidiki kode yang mendasarinya

d. Memeriksa Pra penulisan Kode Program

Saat Anda menerima program seperti JavaBank, dan Anda tidak terbiasa dengan kode ini,
penting bagi Anda untuk bereksperimen dengan aplikasi ini sebelum memeriksa kode yang
mendasarinya.

Anda telah mencoba menggunakan aplikasi dan mencatat perubahan dan fungsi tambahan yang
ingin Anda tambahkan. Sekarang periksa kode yang mendasari untuk menjadi terbiasa dengan
bagaimana aplikasi bekerja.

Pertimbangan Saat Memeriksa Kode


Saat memeriksa kode, perhatikan hal berikut ini:

• Carilah komentar di kode


// Komentar baris tunggal didahului dengan garis miring ganda

/* Komentar yang mencakup lebih dari satu baris diliputi oleh garis miring terbalik
dan tanda bintang */

• Identifikasi kelas.
Periksa setiap kelas dan baca komentar terkait untuk mendapatkan pemahaman tentang struktur
program.

Kelas adalah cetak biru untuk sebuah objek. Sebuah kelas menggambarkan apa yang diketahui
dan dilakukan objek.
e. Teknik Saat Memeriksa Kode

Berikut adalah beberapa teknik lain untuk mencoba saat membaca kode:
• Jalankan ulang aplikasi.
• Pelajari struktur kode tingkat tinggi dan kemudian temukan titik masuk dan bagaimana
cabangnya dari sana.
• Memahami konstruksi.
• Lakukan beberapa pengujian.

Jika Anda masih memiliki masalah dalam memahami kodenya, mintalah orang lain untuk
memikirkannya. Jangkau programmer lain di forum pemrogram.

1. Kelas Account

Periksa kelas Account dan catatlah jumlah:


• Konstruktor
• Metode
- Berapa banyak metode yang diakses?
- Berapa banyak metode yang mutator?

Accessor adalah metode yang dapat mengakses isi objek namun tidak memodifikasi objek
tersebut.
Sebuah mutator adalah metode yang bisa memodifikasi suatu objek.

2. Konstruktor di Kelas Account

Kelas Account memiliki dua konstruktor:


• Account konstruktor default () menetapkan Nama Akun menjadi "KOSONG", Nomor
Rekening ke 0 dan Saldo ke 0.
• Akun konstruktor yang kelebihan muatan (nama String, int num, int amt) mengambil nilai
sebagai parameter dan tetapkan nilai ini ke instance Akun yang sedang dibuat.

3. Metode dalam Account Class

- Simpanan void publik (int amt)


Memperbarui saldo dengan jumlah deposit.
- public void withdraw (int amt)
Memperbarui saldo dengan jumlah penarikan.
- public void setaccountname (nama String)
Mengatur nilai nama akun.
- public void setaccountnum (int num)
Mengatur nilai nomor akun.
- public void setbalance (int num)
Menetapkan nilai saldo akun.
- public String getaccountname ()
Mengembalikan nilai nama akun.
- public int getaccountnum ()
Mengembalikan nilai nomor rekening.
- public int getbalance ()
Mengembalikan nilai saldo akun.
- cetak void publik ()
Mencetak nama akun, nomor rekening dan nilai saldo akun. Ini termasuk untuk
mengakomodasi pengujian isolasi.

Metohd Deskripsi
public void deposit(int amt) Memperbarui saldo dengan
jumlah deposit.
public void withdraw(int amt) Memperbarui saldo dengan
jumlah penarikan
public void setaccountname(String Mengatur nilai nomor akun
name)
public void setaccountnum(int num) Menetapkan nilai saldo akun
public void setbalance(int num) Mengembalikan nilai nama
akun
public String getaccountname ( ) Mengembalikan nilai nama
akun
public int getaccountnum ( ) Mengembalikan nilai nomor
rekening
public int getbalance ( ) Mengembalikan nilai saldo
akun
public void print( ) Mencetak nama akun, nomor
rekening dan nilai saldo akun

f. Pengujian Kelas dalam Isolasi

Saat membuat kelas, ada baiknya berlatih kelas secara mandiri sebelum mengujinya dalam
aplikasi untuk mendeteksi masalah pada kode tersebut. Ini dikenal sebagai pengujian isolasi
atau pengujian unit.

Tujuan utama pengujian unit adalah untuk memverifikasi bahwa unit individu (kelas, di Java)
bekerja dengan benar sebelum digabungkan dengan komponen lain dalam sistem. Setelah
membuat kelas, ujilah secara terpisah dengan membuat program kecil yang memanggil
konstruktor, pengubah, dan pengakses.

Contoh Uji Program Unit


Contoh program uji unit di bawah ini memiliki instance utama dan membuat instance dari kelas
Akun.
Gambar 6. Hasil pengujian program unit testAccount

Contoh Pengujian Kelas dalam isolation

public class testAccount {


public static void main(String[] args) {
// Instantiate account using constructor with values
Account A1 = new Account("Irma",123456,300);
// Instantiate account using default constructor
Account A2 = new Account();
Account A3 = new Account();
A2.setaccountname("Nadia");
A2.setaccountnum(22338);
A2.setbalance(500);
A3.setaccountname("Ilya Mustafana");
A3.setaccountnum(44559);
A3.setbalance(1000);
// Print accounts
A1.print();
A2.print();
A3.print();
}
}

Metohd Deposito
Berikut adalah kode untuk metode deposit.

public void deposit(int amt) {


balance=balance+amt;
}

Bila metode ini dipanggil, nilai dari kotak edit dilewatkan sebagai amt dan ditambahkan ke
saldo instance akun saat ini. Tindakan serupa dilakukan dengan metode withdrawal dan
setaccountname, setaccountnum dan setbalance.
Method Getaccountname
Dibawah ini koding untuk method getaccountname

public String getaccountname ( )


{
return accountname;
}

Bila metode ini dipanggil, nilai nama akun instance akun saat ini dikembalikan ke metode
pemanggilan. Tindakan serupa dilakukan dengan metode getaccountnum dan getbalance.

Method Getaccountname

Dibawah ini kode untuk method getaccountname.

public String getaccountname ( )


{
return accountname;
}

Bila metode ini dipanggil, nilai accountname instance saat ini dikembalikan ke metode
pemanggilan. Tindakan serupa dilakukan dengan metode getaccountnum dan getbalance

4.6 Pewarisan/Inheritance

Pewarisan adalah ketika Anda memiliki satu kelas yaitu kelas induk (disebut kelas super) dan
kelas lain yaitu kelas anak (disebut sub kelas). Kelas anak dikatakan berasal dari kelas induk.

Alasan untuk memiliki kelas anak adalah menjaga agar informasi tetap terpisah. Anak bisa
mewarisi semua metode dan bidang dari induknya, tapi kemudian bisa bertindak mandiri.

a. Menggunakan kata kunci extend

Gunakan kata kunci extend saat membuat subkelas baru untuk menghubungkan kelas yang ada.
• Ini akan menghubungkan kelas Akun sebagai Rekening Kredit yang memiliki perilaku yang
sama dengan akun standar namun akan menambahkan kemampuan untuk menetapkan batas
kredit.
• Kelas CreditAccount akan mewarisi semua metode dari kelas Account.
public class CreditAccount extends Account{
}
b. Menggunakan Array

ArrayList atau Array?

Aplikasi JavaBank menggunakan Array untuk menyimpan data di akun.

Metode create, withdraw, deposit, dan display memanipulasi data dalam array untuk
menghasilkan hasil yang diinginkan.

Di Java, sebuah Array memiliki panjang tetap.


• Setelah array dibuat, programmer perlu mengetahui panjang Array karena ukuran tidak dapat
tumbuh atau menyusut.
• Jika Anda memiliki situasi di mana Anda tidak dapat memprediksi jumlah objek yang akan
Anda simpan, maka alih-alih menggunakan Array, Anda bisa menggunakan ArrayList.

Operasi ArrayList

Dalam Array, Anda perlu mengetahui panjang dan jumlah elemen saat ini yang tersimpan.

Dalam ArrayList Anda dapat menggunakan perilaku yang telah ditetapkan untuk melakukan
operasi ini.
• IsEmpty: Mengembalikan nilai true jika daftar ini tidak berisi elemen.
• ukuran: Mengembalikan jumlah elemen dalam daftar ini

Operasi ArrayList Deskripsi


add Tambahkan ke akhir daftar ini.

clear Hapus semua elemen dari daftar ini.

contains berisi Returns true jika daftar ini berisi


elemen yang ditentukan.
get dapatkan kembali elemen pada posisi
yang ditentukan dalam daftar ini.
remove Hapus Menghapus elemen dalam daftar
ini
set Menggantikan elemen pada posisi yang
ditentukan dalam daftar ini
TrimToSize Potong kapasitas instance ArrayList ini
menjadi ukuran daftar saat ini

ArrayList di JavaBank

Dalam aplikasi JavaBank, Anda dapat menggunakan ArrayList menggantikan Array


myAccounts ke:
• Secara dinamis menyimpan akun.
• Simpan rekening tabungan dan kredit.
• Gunakan operasi ArrayList untuk menambahkan, menghapus, mencari, dan sebagainya.
• Kurangi jumlah kode yang diperlukan

Latihan

1. Menginstal JavaBank
Jika Anda tidak menginstal Studi Kasus JavaBank selama pelajaran, ikuti langkah-langkah ini.
Untuk menginstal JavaBank:
• Unzip file JavaBank.jar.zip dan pindahkan ke lokasi yang nyaman di komputer Anda.
• Di Eclipse, pilih File → New → Java Project.
• Pilih "Buat proyek dari sumber yang ada".
• Klik Browse.
• Pilih folder proyek pertama dari lokasi yang telah Anda download dan mengekstrak file
JavaBank.jar.zip.
• Klik OK.
• Klik Finish.
• Di jendela Package Explorer, pilih proyek.
• Dari menu, pilih Project → Properties.
• Klik Java Build Path.
• Pilih tab Libraries.
• Klik tombol Add External JARs ....
• Arahkan ke folder yang berisi Banking.jar. Pilih file Banking.jar.
• Klik tanda + di sebelah Paket Default dan jalankan aplikasi Banking.java

2. Periksa kode di JavaBankList untuk melihat bagaimana cara mendeklarasikan dan


menggunakan ArrayList Accounts.

// ArrayList to store Account details


ArrayList<Account>
Accounts = new ArrayList<Account>();
replaces
// Array to store Account details static Account myAccounts[] = new Account[MaxAccounts];

3. Uji kode di JavaBankList untuk melihat bagaimana kode dibuat pada akun menggunakan
ArrayList.

//add a new account to the list using the Account constuctor


Accounts.add(new Account(Name,Accountnum,Balance));

//Set a temp Account for display purposes


Account tempAccount = (Account)Accounts.get(noAccounts);

//Display tempAccount
displayJTextArea.setText(tempAccount.getaccountname() + " " + tempAccount.getaccountnum()
+ " " + tempAccount.getbalance());

4. Periksa kode di JavaBankArrayList untuk melihat bagaimana kode untuk membuat deposit
atau withdrawal digunakan.

5. Amandemen program JavaBankArrayList untuk menghapus akun dengan menggunakan


operasi hapus. Petunjuk: Ini serupa dengan operasi yang ditetapkan untuk transaksi.
6. Unit menguji kode baru Anda.
7. Jelajahi JavaBank. Catat pengamatan Anda dan jawaban atas pertanyaan berikut di jurnal
Anda.
• Apa yang terjadi saat Anda:
◦ Tampilkan Akun
◦ Buat Akun
◦ Hapus Akun
◦ Buat Transaksi Penarikan
◦ Lakukan Transaksi Deposito
• Dapatkah Anda menampilkan akun sebelum ada yang dibuat?
• Dapatkah Anda membuat akun tanpa memasukkan apapun di kolom?
• Dapatkah Anda melakukan transaksi penarikan dengan jumlah di kolom Withdrawal?
• Dapatkah Anda melakukan transaksi deposit tanpa jumlah di bidang Deposito?
• Pertanyaan lain apa yang Anda miliki tentang aplikasi JavaBank?
• Perubahan apa yang akan Anda buat pada aplikasi saat ini agar fungsinya lebih baik?
• Penambahan apa yang akan Anda lakukan pada aplikasi saat ini untuk meningkatkan
fungsinya?

8. Periksa file kode dan catat jawaban atas pertanyaan berikut di Journal Anda.
• Berapa banyak file kode yang ada?
• Dimana kode utama?
• Apa panggilan utama?
• Apa yang dipanggil saat Anda mengklik tombol create?
• Pertanyaan lain apa yang Anda miliki tentang aplikasi JavaBank?
• Perubahan apa yang akan Anda buat pada aplikasi saat ini agar fungsinya lebih baik?
• Tambahan apa yang akan Anda buat pada aplikasi untuk meningkatkan fungsinya?

9. Jalankan JavaBank dan lakukan tindakan berikut:


Aksi Nama Nasabah Nomor Rekening Saldo
Create Ade Irma 11556 300
Create Nadia 22338 500
Create Dhani 44559 1000

Tampilkan akun untuk memastikannya telah dibuat.

10.Performasikan transaksi berikut dan tampilkan akun untuk memastikan semuanya telah
selesai.
Aksi Nama Nasabah Nomor Rekening Saldo

Penarikan Ade Irma 11556 100


Simpanan Nadia 22338 200
Penarikan Andi S 44559 700

• Apa saja metode accessor di kelas akun?


• Prosedur mana yang memanggil accessors ini?
• Apa metode modifikatornya?
• Prosedur manakah yang memanggil pengubah ini?

Anda mungkin juga menyukai