Anda di halaman 1dari 24

MODULARISASI

DEVIT SUWARDIYANTO, S.SI., M.T.


ENDI SAILUL HAQ, S.T., M.KOM.
TUJUAN

• MENDESKRIPSIKAN KEUNTUNGAN MODULARISASI


• MODULARISASI SEBUAH PROGRAM
• MEMAHAMI BAGAIMANA SEBUAH MODUL MEMANGGIL MODUL YANG
LAIN
• MEMAHAMI CARA MENGGGUNAKAN VARIABEL DAN PARAMETER
DALAM MODUL
MODULARISASI

• Motor dibuat dengan


banyak bagian (unit) yang
memiliki fungsi khusus
• Dimana beberapa unit
dapat digunakan kembali
untuk jenis motor yang
berbeda
MODULARISASI

• Proses memecah sebuah program besar menjadi beberapa modul.


• Modul disebut juga sebagai
a) Subroutine -> COBOL, RPG, BASIC
b) Procedure -> PASCAL DAN BASIC
c) function/fungsi -> paling sering digunakan
d) method -> PEMROGRAMAN BERORIENTASI OBYEK
KEUNTUNGAN MODULARISASI

• Modularisasi menyediakan abstraksi


• Modularisasi memungkinkan beberapa programmer fokus pada satu masalah
• Modularisasi memungkinkan programmer menggunakan kembali modul yang
telah dibuat
• Modularisasi mempermudah mengidentifikasi struktur
MODULARISASI MENYEDIAKAN ABSTRAKSI

• Abstraksi merupakan sebuah proses memperhatikan sifat-sifat penting dengan


menghiraukan detil-detil yang kurang penting.
• Dengan daftar yang lebih abstrak, pekerjaan yang kompleks tampak
lebihsederhana.
MODULARISASI MENYEDIAKAN ABSTRAKSI
• Sebagai contoh, anda akan membuat daftar kegiatan yang akan dikerjakan pada hari minggu:
Mencuci pakaian
Olah raga basket
Mengerjakan tugas kuliah
• Tanpa abstraksi, daftar yang akan dilakukan mungkin seperti ini:
Memasukkan pakaian kotor ke dalam mesin cuci
Memasukkan detergen ke dalam mesin cuci
Membuka kran air
Menseting mesin cuci dan menjalankannya
Mengendarai motor ke lapangan basket
. . . dan seterusnya
MODULARISASI MEMUNGKINKAN BEBERAPA
PROGRAMMER BEKERJA MENYELESAIAKAN
SEBUAH MASALAH
• Jarang sekali sebuah pogram ditulis oleh seorang programmer.
• Jika program tersebut ditulis sendiri oleh seorang programmer, mungkin
membutuhkan waktu bertahun-tahun
• Pengembang perangkat lunak, biasaya membagi pekerjaan besar menjadi
beberapa modul, dan setiap modul akan dikerjakan oleh seorang programmer
atau tim programmer.
PENGGUNAAN KEMBALI MODUL
(REUSEABILITY)

• Untuk membuat mobil, perusahaan mobil tidak perlu membuat seluruh


komponen dari nol. Misal ban mobil, cukup dibeli dari perusahaan yang memang
khusus membuat ban, yang juga digunakan oleh perusahaan mobil lainny
• Jika modul memiliki manfaat dan ditulis dengan baik, maka dapat digunakan
lebih dari satu kali atau digunakan dalam program yang lain.
MODULARISASI MEMPERMUDAH
MENGIDENTIFIKASI STRUKTUR

• Semakin besar program, akan semakin sulit untuk mengidentifikasi struktur


program
• Dengan mengkombinasikan program dengan beberapa modul, akan
mempermudah untuk mengidentifikasi struktur .
MODULARISASI MEMPERMUDAH
MENGIDENTIFIKASI STRUKTUR
• TANPA MODUL DEGAN MODUL
MODULARISASI MEMPERMUDAH
MENGIDENTIFIKASI STRUKTUR
• MODUL LEMBUR
MODULARISASI PROGRAM

• Penamaan modul (function) berbeda-beda di setiap bahasa pemrograman, memiliki aturan yang
hamper sama dengan penamaan variable
• Nama modul sebaiknya mencerminkan fungsi dari modul tersebut (kata kerja)
• Untuk membedakan dengan variabel, penulisan modul biasanya diikuti dengan kurung buka
dan tutup
• Biasanya dalam sebuah modul mengandung parameter, yaitu variabel yang digunakan sebagai
data masukan yang akan diproses oleh modul.
MODULARISAS
PROGRAM
• DIAGRAM PENJUMLAHAN
DUA BILANGAN
PENERAPAN DALAM BAHASA PROGRAM JAVA

• Metod adalah urutan pernyataan yang dikelompokkan bersama untuk


melakukan operasi.
• Method dalam java selalu terletak dalam sebuah kelas
• Dalam topik ini, semua metode akan ditempatkan di kelas yang sama
yang berisi metode utama
SINTAKS DASAR METHOD

1. sebuah nama;
2. satu set pengubah (public, static, private, protected);
3. jenis nilai return;
4. daftar parameter (juga dikenal sebagai parameter formal) dalam tanda
kurung ();
5. daftar pengecualian/exceptions;
6. sebuah badan yang berisi pernyataan untuk melakukan operasi.
METHOD SEDERHANA

public static int sum(int a, int b) {
    return a + b;
}
SIGNATURES

Kombinasi nama metode dan parameternya disebut signatures.


public static int sum(int a, int b) {
    return a + b;
}
Memuliki signature sum(int, int)
Contoh signature:
• sum(double, double)
• min(long, long, long)
• getValue()
PENAMAAN METHOD

• identifiers peka terhadap huruf besar-kecil;


• identifiers dapat menyertakan huruf Unicode, digit, dan dua karakter khusus ($, _);
• identifiers tidak dapat diawali dengan angka;
• identifiers tidak boleh menggunakan kata kunci.
• nama metode harus berupa kata kerja dalam huruf kecil atau nama multi-kata yang
dimulai dengan kata kerja dalam huruf kecil, diikuti oleh kata sifat, kata benda,
dll.
• Dalam nama multi-kata, huruf pertama dari huruf kedua dan kata-kata berikut
harus ditulis dengan huruf besar.
PENAMAAN METHOD

Contoh:
• Sum
• Getvalue
• Calculatenumberoforanges
• Finduserbyname
• printarray
JENIS NILAI PARAMETER
PENGEMBALIAN/RETURN.
• Suatu metode dapat mengembalikan nilai tunggal atau tidak sama
sekali.
• Untuk mendeklarasikan metode yang tidak menghasilkan apa-apa,
Anda harus menulis kata kunci khusus void sebagai jenis nilai hasil.

public static void printsum(int a, int b) {
    System.out.println(a + b);
}
JENIS NILAI PARAMETER
PENGEMBALIAN/RETURN.
• Suatu metode dapat mengambil satu atau beberapa parameter dengan tipe yang
sama atau berbeda. Selain itu, dimungkinkan untuk mendeklarasikan metode
tanpa parameter apa pun, tetapi "()" masih diperlukan.

public static void method2(long a, double b) {
    // do something
}

public static int method3() {
    return 3;
}
BADAN METHOD
• Dapat berisi statement apapun. Misal kondisional, looping dll
• Contoh program pembagian dengan return value
public static int divideBy2(int number, int times) {
    if (times <= 0) {
        return number;
    }
        
    for (int i = 0; i < times; i++) {
        number /= 2;
    }
    return number;
}
BADAN METHOD
• Contoh program tanpa return value
public static void returnNothingOrPrintNumbers(int a, int b) 
{
    if (a <= 0 || b <= 0) {
        return;
    }
 
    System.out.println(a + " " + b);
}

Anda mungkin juga menyukai