Modular
Pemrograman Modular adalah suatu teknik pemrograman di mana program yang biasanya cukup besar dibagi-bagi menjadi beberapa bagian program yang lebih kecil sehingga akan mudah dipahami dan dapat digunakan kembali, baik untuk program itu sendiri maupun program lain yang memiliki proses yang sama.
• Modul pada bahasa C++ dikenal dengan nama fungsi (function)
• Bahasa C terdiri dari fungsi-fungsi, baik yang langsung dideklarasikan dalam program ataupun dipisah di dalam header file.
• Fungsi yang selalu ada pada program C++ adalah fungsi main
Kelebihan modular :
• Program lebih pendek
• Mudah dibaca dan dimengerti
• Mudah didokumentasi
• Mengurangi kesalahan dan mudah mencari kesalahan
• Kesalahan yang terjadi bersifat “lokal”
Function (fungsi)
• Fungsi/function adalah suatu kumpulan instruksi/perintah/program yang dikelompokkan menjadi satu, letaknya terpisah dari program yang menggunakan fungsi tersebut, memiliki nama tertentu yang unik, dan digunakan untuk mengerjakan suatu tujuan tertentu.
• Dalam bahasa pemrograman lain fungsi dapat disebut sebagai subrutin (basic, VB) atau procedure (pascal, Delphi)
Kelebihan fungsi
• Dapat melakukan pendekatan top-down dan divide-and conquer:
– Divide-and-conquer: program besar dapat dipisah menjadi program-program kecil.
• Kode program menjadi lebih pendek, mudah dibaca, dan mudah dipahami
• Program dapat dikerjakan oleh beberapa orang sehingga program cepat selesai dengan koordinasi yang mudah.
• Mudah dalam mencari kesalahan-kesalahan karena alur logika jelas dan sederhana
• Kesalahan dapat dilokalisasi dalam suatu modul tertentu saja.
• Modifikasi program dapat dilakukan pada suatu modul tertentu saja tanpa mengganggu program keseluruhan
• Fungsi – fungsi menjadikan program mempunyai struktur yang jelas.
– Dengan memisahkan langkah – langkah detail ke satu atau lebih fungsi – fungsi, maka fungsi utama (main) akan menjadi lebih pendek, jelas dan mudah dimengerti.
• Fungsi –fungsi digunakan untuk menghindari penulisan program yang sama yang ditulis secara berulang – ulang.
• Langkah – langkah tersebut dapat dituliskan sekali saja secara terpisah dalam bentuk fungsi. Selanjutnya bagian program yang membutuhkan langkah – langkah ini tidak perlu selalu menuliskannya, tidak cukup memanggil fungsi tersebut.
• Mempermudah dokumentasi.
• Reusability: Suatu fungsi dapat digunakan kembali oleh program atau fungsi lain
Jenis fungsi ada 2:
Standard Library Function
• Yaitu fungsi-fungsi yang telah disediakan oleh C dalam file-file header atau librarynya.
• Misalnya: clrscr(), getch()
• Untuk function ini kita harus mendeklarasikan terlebih dahulu library yang akan digunakan, yaitu dengan menggunakan preprosesor direktif.
• Misalnya: #include <conio.h>
Programmer-Defined Function
• Adalah function yang dibuat oleh programmer sendiri.
• Function ini memiliki nama tertentu yang unik dalam program, letaknya terpisah dari program utama, dan bisa dijadikan satu ke dalam suatu library buatan programmer itu sendiri yang kemudian juga di-includekan jika ingin menggunakannya.
Rancangan pembuatan fungsi
Dalam membuat fungsi, perlu diperhatikan:
• Data yang diperlukan sebagai inputan
• Informasi apa yang harus diberikan oleh fungsi yang dibuat ke pemanggilnya
• Algoritma apa yang harus digunakan untuk mengolah data menjadi informasi
Contoh deklarasi dan definisi fungsi
Kapan menggunakan deklarasi dan definisi funsi ?
Karena prinsip kerja program C sekuensial, maka
• Jika bagian dari program yang menggunakan fungsi diletakkan sebelum definisi dari fungsi, maka deklarasi dari fungsi diperlukan.
• Akan tetapi jika bagian dari program yang menggunakan fungsi terletak setelah definisi dari fungsi, maka deklarasi dari fungsi dapat tidak dituliskan.
Jenis fungsi di C++ :
• Fungsi yang tidak mengembalikan nilai (void)
• Fungsi yang mengembalikan nilai (nonvoid)
Fungsi void
• Fungsi yang void sering disebut juga prosedur
• Disebuta void karena fungsi tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses fungsi tersebut.
• Ciri: - tidak adanya keyword return.
- tidak adanya tipe data di dalam deklarasi fungsi.
- menggunakan keyword void.
• Tidak dapat langsung ditampilkan hasilnya
• Tidak memiliki nilai kembalian fungsi
• Keyword void juga digunakan jika suatu function tidak mengandung suatu parameter
Fungsi non void
• Fungsi non-void disebut juga function
• Disebut non-void karena mengembalikan nilai kembalian yang berasal dari keluaran hasil proses function tersebut
• Ciri:
- ada keyword return
- ada tipe data yang mengawali deklarasi fungsi
- tidak ada keyword void
• Memiliki nilai kembalian
• Dapat dianalogikan sebagai suatu variabel yang memiliki tipe data tertentu sehingga
Pemanggilan fungsi
• Pada dasarnya fungsi dapat memanggil fungsi lain, bahkan fungsi dapat memanggil dirinya sendiri (rekursif)