1 Pertemuan 04 Variable Matakuliah: T0063/Pemrograman Visual Tahun: 2005 Versi: 1/0
2 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Menerangkan tipe data yang ada dan cara mendeklarasikan variable (C2)
3 Outline Materi Variable Variable Name Scope dan Lifetime Native Data Type Aggregate Data Type Class Module sebagai Tipe Data Property Get dan Let Contoh penggunaan Class Module
4 Variable Name Tidak lebih dari 255 karakter Berisi huruf, angka dan underscore (_) Karakter pertama harus berupa huruf Tidak boleh menggunakan spasi atau titik Tidak dapat menggunakan reserved word (variable built-in dari Visual Basic) Tidak case-sensitive Contoh : Dim Myvar Dim _myvar as String Public MyVar123 as Long Private MyV4r as Variant
5 Scope dan Lifetime Scope (visibilty) variable adalah bagian bagian dari aplikasi dimana sebuah variable masih bisa diakses Variable yang dianggap public di dalam modul BAS akan bisa diakses di bagian manapun dari aplikasi tersebut, namun jika dianggap private di dalam modul BAS, maka variable tersebut hanya bisa dibaca di dalam scope BAS tersebut. Lifetime variable adalah rentang hidup sebuah variable. Variable yang bersifat public di modul BAS, maka rentang hidupnya adalah selama aplikasi tersebut jalan, namun sebuah variable didefinisikan sebagai private di modul X, maka VB akan mengcreate variable tersebut ketika modul X dipanggil dan menghapus variable tersebut jika keluar dari modul X.
6 Scope dan Lifetime Global Variable –Secara umum yang dianggap global variable adalah semua variable bertipe Public yang ditaruh di modul BAS, namun bisa juga menggunakan keyword Global –Variable ini bisa dibaca dan diupdate di semua bagian aplikasi –Disarankan tidak terlalu banyak –Biasa diawali dengan prefix g_ atau glo_
7 Scope dan Lifetime Global UDT (User Define Type) Satu cara yang disarankan, jika harus menggunakan banyak variable global, yaitu penggunaan UDT Module.BASForm Code
8 Scope dan Lifetime Module Level Variable –Private Module Level, dideklarasikan dengan keyword Private atau Dim di bagian deklarasi variable suatu form dan class module –Public Module Level, dideklarasikan dengan keyword Public –Public Module Level bisa diakses oleh dari luar form atau class module, sedangkan private module level tidak bisa
9 Scope dan Lifetime Dynamic and Static Local Variable –Dynamic Local Variable Didefinisikan dengan keyword Dim di dalam sebuah Procedure (Sub/Function) Scope : procedure level Lifetime : procedure level –Static Local Variable Didefinisikan dengan keyword Static di dalam Procedure Scope : procedure level Lifetime : module level
10 Native Data Type Tipe DataBatasan Nilai Byte 8 bit (1 byte) angka antara Integer 16 bit (2 byte) angka berkisar dari – s/d Long 32 bit (4 byte) angka berkisar dari – sampai Single 32 bit (4 byte) angka floating point yang berkisar dari –3.4E38 sampai 3.8E38 dan angka pecahan dari –1.4E-45 sampai 1.4E-45 Double 64-bit (8 byte) angka floating-point dari –1.7E308 sampai 1.7E308, dan pecahan dari –4.9E-324 sampai 4.9E-324 Currency 64 bit (8 byte) angka integer dari – ,5808 sampai ,5807 Boolean 16 bit (2 byte) angka yang hanya bisa diisi dengan True / False String Variable yang bisa berisi kira kira 2 milyar karakter / alfabet Date 64 bit (8 byte) angka floating-point yang menyimpan tanggal dari 1 Januari 100 sampai 31 Desember 9999 dan waktu dari jam 0:00:00 sampai 23:59:59 Object 32 bit (4 byte) alamat memori yang menunjuk ke object Variant (Default) 16 bit (2 byte) Variable yang bisa menampung semua tipe data yang ada di VB
11 Aggregate Data Type User-Defined Type (UDT) –Merupakan struktur data yang tersusun dari data data yang bertipe lebih sederhana –Pengguna mendefinisikan sesuai kebutuhan –Biasanya dideklarasikan dalam module BAS Private Type EmployeeUDT Name As String DepartmentID As Long Salary As Currency End Type
12 Aggregate Data Type Array –Berupa sekumpulan data yang homogen –Dimensi : 1 s/d 60 –Secara umum deklarasi array adalah seperti diatas, namun kadangkala programmer tidak mengetahui secara pasti jumlah array : –Array juga bisa dikombinasikan dengan UDT dan bahkan dengan Array itu sendiri (Array of Arrays) –LBound dan UBound digunakan untuk mengetahui indek terbesar dan terkecil Dim NIM(100) As String Dim NIM() as String... ReDim NIM(100) as String
13 Aggregate Data Type Array of Arrays
14 Aggregate Data Type Collection –Collection adalah sekumpulan dari object yang mempunyai struktur yang sama. –Kelebihan Collection adalah kita bisa membuat array object. –Secara umum Collection mempunyai 4 buah property dan method, yaitu Count, Item, Add dan Remove
15 Aggregate Data Type –Contoh : (n adalah nomor dari item yang ada, untuk pemakaian lebih lanjut bisa menggunakan For Each) –Form Collection dan Control Collection adalah collection yang sudah built-in dalam VB Form Collection adalah sebuah Collection dimana setiap elemennya mewakili setiap form dalam sebuah aplikasi Control Collection berisi semua object control di dalam sebuah form colMyCollection.Item(n) atau collMyCollection(n)
16 Aggregate Data Type –Cara mengakses Collection sama dengan Array –Menggunakan For Each For n=0 to colMyCollection.Count-1 colMyCollection(n).Visible= False Next n For Each objItem in colMyCollection objItem.Visible= False Next objItem
17 Aggregate Data Type –Untuk membangun sebuah Collection kita perlu deklarasi variable menggunakan tipe data Collection –Collection yang dibangun tersebut otomatis akan mempunyai 4 properties dan method : Count property - jumlah item dalam collection Item property - menunjuk suatu object dalam Collection Add method - menempatkan object dalam Collection Remove method - menghapus object dalam Collection Dim colMyCollection as New Collection
18 Class Module sebagai Tipe Data Class Module dalam VB menjelaskan tentang class dari object-object (template untuk object), setiap object mempunyai variasi property, tetapi mempunyai struktur dan kemampuan yang sama Dari sebuah class module bisa dibuat banyak instance (yang berupa object) Class module menggunakan prefix cls Deklarasi : Dim objMhs as clsMahasiswa
19 Property Get dan Let Property Get dan Let adalah rutin yang akan dijalankan pada saat property dipanggil Property Get –mengambil nilai property Property Let –mengeset nilai property
20 Contoh penggunaan Class Module Let (NIM) dijalankan Get (NIM) dijalankan