Sunday, October 12, 2014

PROCEDURE, FUNCTION DAN MODULE



1. Procedure

Sejauh ini, anda telah menuliskan sub procedure yang dibuat secara otomatis pada saat menggunakan event . Sub procedure merupakan blok kode yang mempunyai nama dan berisi perintah yang dapat dipanggil suatu waktu. Artinya, hanya sekali dibuat yang kemudian di panggil berkali-kali sesuai dengan kebutuhan.

Bentuk Umum :

[Private|Public] Sub subname[(argumentlist)]
      Statements
End sub

Sub Procedure dapat dipanggil dengan perintah :

[call] subname[(argumentlist)]


Keterangan :
Sub procedure (Procedure) sebaiknya menggunakan kata kerja (verb)
Pemanggilan procedure yang masih dalam satu kelas (class) atau modul (module) dapat dilakukan dengan kata kunci Me.
Procedure dapat menerima argument melalui nilai (by value) atau juga reference (by reference). Jika menggunakan by value, nilai pada argument tidak berubah. Sedangkan jika menggunakan by reference, nilai argument yang digunakan dapat berubah sesuai dengan perintah dalam procedure.
Secara default, argument dimasukkan melalui nilai (by value) dapat menggunakan kata kunci ByVal dan ByRef untuk By Reference.
Syntaks argument :

[ByVal|ByRef] variabelname as type

Contoh :
a.      Procedure dengan argument di passing sebagai value
Sub HitungVal(byVal as Decimal)
        A+=1
        textAkhir.text=a
end sub

b.      Procedure dengan argument di passing sebagai value
Sub HitungRef(byRef as Decimal)
        A+=1
        textAkhir.text=a
end sub
c.      pemanggilan procedure
HitungVal(textAwal.Text)

2. Function (Fungsi)

Fungsi mempunyai banyak kemiripan dengan sub procedure. Bedanya, fungsi selalu mengembalikan nilai (return value)
Sintaks fungsi dituliskan sebagai berikut :

[Private|Public] function functionname[(argumentlist)] [As type]
      Statements{
      Functionname=expression | {return expression}
End function

Keterangan :
Perbedaan antara fungsi dengan procedure hanyalah pada pengembalian nilai saja (return value). 

Sebagai contoh :
Menggunakan argument berupa nilai (by value) dan reference (by reference)
Pengembalian nilai dapat dilakukan dengan menggunakan operator assignment “=” pada fungsi atau biasanya dengan perintah return.

Contoh :
Private  Function cekData() as Boolean
        if IsNumeric(TextAwal.text) then
                return true
        else
                return false
        endif
end function

Pemanggilan fungsi
if cekData()=true then
    HitungRef(textAwal.text)
else
    messageBox.Show(“Data yang dimasukkan bukan angka”,”Kesalahan data”,
    MessageBoxButtons.OK,MessageBoxIcons.Error)
endif
3. Module (Modul)

Modul merupakan bagian yang sengaja dipisahkan untuk memudahkan pemrograman. Dalam module dapat dimasukkan procedure dan fungsi dan kemudian digunakan oleh beberapa form.
-          Umumnya modul dideklarasikan secara public (public) agar dapat digunakan di dalam kode dimanapun
-          Modul dapat diisi dengan main procedure yang akan dijalankan pertama kali saat program dimulai
-          Modul merupakan salah satu argumentasi code  reuse yang bertujuan agar program lebih efesien.

Sintaks pembuatan modul sebagai berikut :

Module moduleName
      Statement
End module

Contoh :
Module Module

    Public intResponce, RoleId, Msg As Integer
    Public Username, Password, Nama As String

End Module

No comments:

Post a Comment