Dasar program Visual Basic
Program VB.NET anda yang pertama.
Sebagaimana tradisi dari proses belajar pemrograman komputer adalah membuat sebuah
program Hello World yang memiliki struktur yang paling sederhana sehingga kita dengan
mudah dapat melihat struktur dasar program dari bahasa pemrograman tersebut.
Module Hello
Sub Main()
System.Console.WriteLine("Hello World !")
End Sub
End Module
Ketiklah program diatas dengan text editor (notepad pada Windows ataupun edit pada
Dos Prompt), dan kemudian simpan dengan nama hello.vb (anda wajib menyimpannya
dengan ekstension .vb).
Proses Kompilasi
Agar program yang kita buat diatas dapat dijalankan oleh komputer, maka diperlukan
suatu kompiler untuk menterjemahkan perintah-perintah yang telah kita buat menjadi
instruksi yang dapat dikenali oleh sistem komputer.
Kompiler Visual Basic dapat diperoleh dengan melakukan instalasi Microsoft .NET
framework sdk v1.1.
Sesaat setelah instalasi .NET framework, maka kompiler VB telah tersedia pada
komputer anda, dan proses kompilasi dapat dilakukan dengan :
1. Mengatur path environment pada Command Prompt
path=%path%;c:\windows\microsoft.net\framework\v1.1.4322
2. Selanjutnya anda dapat mengkompilasi program anda dengan perintah :
Vbc <nama file>.vb
Pada saat kompilasi, anda wajib menulis lengkap nama file dan ekstension
Contoh :
vbc hello.vb
Microsoft (R) Visual Basic .NET Compiler version 7.10.3052.4
Bahasa pemrograman VB.NET Hendra, S.T.
for Microsoft (R) .NET Framework version 1.1.4322.573
Copyright (C) Microsoft Corporation 1987-2002. All rights reserved.
Jika proses kompilasi tidak menampilkan adanya kesalahan, maka akan terbentuk suatu
hello.exe yang dapat dijalankan langsung pada Command Prompt.
Sesuatu hal yang perlu anda pahami adalah file hello.exe hanya dapat dijalankan pada
komputer yang sudah terinstalasi Microsoft .NET framework.
Kemudian suatu hal yang perlu anda ketahui adalah file hello.exe bukanlah berisi binari
yang merupakan kode mesin, melainkan merupakan binari yang berisi Intermediate
Language (IL) yang pada saat dijalankan akan dikompilasi menjadi bahasa mesin oleh
kompiler Just In Time (JIT) yang terdapat pada Common Language Runtime (CLR) yang
merupakan salah satu komponen dari .NET framework.
Struktur program Visual Basic
Sebagai bahasa yang telah dirancang kembali dari awal, suatu program Visual Basic
memiliki urutan berikut yang merupakan struktur dari program:
1. Option statements
2. Imports statements
3. Main procedure
Option Statements
Perintah Option akan menentukan aturan dasar penanganan kode dalam program pada
saat kompilasi.
Option Explicit
Option Explicit On/Off, menentukan apakah variabel-varibel yang digunakan dalam
program harus dideklarasikan terlebih dahulu atau tidak (defaultnya adalah On).
Contoh :
Option Explicit Off
Module Modmain
Sub Main()
a = 100000
End Sub
End Module
Yang jika di kompilasi tidak menyebabkan kesalahan walaupun variabel a tidak pernah
dideklarasikan.
Option Explicit On
Bahasa pemrograman VB.NET Hendra, S.T.
Module Modmain
Sub Main()
a = 100000
End Sub
End Module
Yang jika dikompilasi akan menyebabkan kesalahan sebagai berikut :
Microsoft (R) Visual Basic .NET Compiler version 7.10.3052.4
for Microsoft (R) .NET Framework version 1.1.4322.573
Copyright (C) Microsoft Corporation 1987-2002. All rights reserved.
D:\BELAJA~1\coba.vb(5) : error BC30451: Name 'a' is not declared.
a = 100000
Agar terhindar dari kesalahan maka variabel a harus dideklarasikan terlebih dahulu sesuai
dengan setting Option Explicit On.
Option Explicit On
Module Modmain
Sub Main()
Dim a As Integer
a = 100000
End Sub
End Module
Option Strict
Option Strict On/Off, menentukan apakah kompiler memperbolehkan konversi nilai
implicit yang berpotensi menyebabkan kehilangan data (default adalah Off), misalnya
kita memasukan nilai dari suatu variabel dengan tipe data yang lebih lebar ke variabel
dengan tipe data yang lebih sempit (lihat pada kolom nominal storage allocation pada
tabel tipe data).
Contoh :
Option Explicit On
Option Strict On
Module Hello
Sub Main()
Dim a As Integer
Dim b As Short
a = 100000
b = a
End Sub
End Module
Bahasa pemrograman VB.NET Hendra, S.T.
Yang jika dikompilasi akan menyebabkan pesan kesalahan berikut ini karena variabel b
yang bertipe short (16 bit), tidak dimungkinkan menampung nilai dari tipe integer (32
bit), yang memiliki potensi kehilangan data pada saat runtime, sehingga pemakaian
Option Strict On akan menampilkan pesan kesalahan pada saat kompilasi.
Microsoft (R) Visual Basic .NET Compiler version 7.10.3052.4
for Microsoft (R) .NET Framework version 1.1.4322.573
Copyright (C) Microsoft Corporation 1987-2002. All rights reserved.
D:\BELAJA~1\coba.vb(8) : error BC30512: Option Strict On disallows
implicit conversions from 'Integer' to 'Short'.
b = a
~
Sebaliknya jika digunakan Option Strict Off:
Option Explicit On
Option Strict Off
Module Hello
Sub Main()
Dim a As Integer
Dim b As Short
a = 100000
b = a
End Sub
End Module
Maka pada saat kompilasi tidak terjadi kesalahan, tetapi pada saat runtime akan
menimbulkan runtime error (System.OverflowException), karena variabel a yang bertipe
short hanya memiliki jangkauan daya tampung dari -32767 s/d 32768.
Bahasa pemrograman VB.NET Hendra, S.T.
Option Compare
Perintah Option Compare Binary/Text akan menentukan bagaimana bertipe data string
akan dibandingkan antara satu dengan lainnya (default adalah Binary).
Adapun aturan perbandingan pada masing-masing setting adalah sebagai berikut :
• Pada Option Compare Binary : A < B < E < Z < a < b < e < z < À < Ê < Ø < à < ê
< ø
• Pada Option Compare Text : (A=a) < (À= à) < (B=b) < (E=e) < (Ê= ê) < (Ø = ø)
< (Z=z)
Contoh :
Option Compare Binary
Module Hello
Sub Main()
Dim a,b As String
a = "ABC"
b = "abc"
System.Console.WriteLine(a = b) 'False
End Sub
End Module
Yang jika dijalankan akan menghasilkan False, karena perbandingan data berdasarkan
nilai biner dari masing-masing data string (lihat aturan untuk Binary).
Bahasa pemrograman VB.NET Hendra, S.T.
Tetapi jika :
Option Compare Text
Module Hello
Sub Main()
Dim a,b As String
a = "ABC"
b = "abc"
System.Console.WriteLine(a = b) 'True
End Sub
End Module
Yang jika dijalankan akan menghasikan True, karena sebagai text-nya "ABC" dianggap
sama dengan "abc" tanpa melihat huruf besar atau kecil (lihat aturan untuk Text).
Imports Statements
Perintah Imports berfungsi memudahkan pengetikan tanpa harus mengetik nama class
didalam namespace yang di import.
Contoh :
Module Hello
Sub Main()
System.Console.WriteLine("Hello World !")
End Sub
End Module
Yang setelah adanya Imports System penulisan Console.WriteLine menjadi sebagai
berikut.
Imports System
Module Hello
Sub Main()
Console.WriteLine("Hello World !")
End Sub
End Module
Dalam hal ini kita tidak perlu lagi mengetik System.Console.WriteLine, tapi cukup
Console.WriteLine, karena kita telah melakukan Imports System.
Main Procedure
Procedure Main merupakan titik awal dari program anda – merupakan procedure yang
pertama kali dieksekusi ketika anda menjalankan kode anda. Jadi apa yang ingin anda
jalankan pertama kali pada program anda ditempatkan pada procedure main ini. Ada
empat cara penulisan Main, yaitu sebagai Sub atau Function yang memiliki parameter
atau tidak.
Bahasa pemrograman VB.NET Hendra, S.T.
• Sub Main()
• Sub Main(ByVal CmdArgs() As String)
• Function Main() As Integer
• Function Main(ByVal CmdArgs() As String) As Integer
Bentuk procedure yang paling sering digunakan adalah Sub Main( ) seperti pada contoh
yang sudah-sudah.
Contoh Sub Main dengan parameter :
Imports System
Module Hello
Sub Main(ByVal CmdArgs() As String)
Dim i As Integer
Console.WriteLine("Jumlah Parameter :" & CmdArgs.Length())
For i = 0 to CmdArgs.Length()-1
Console.WriteLine("Parameter :" & i.ToString() & "adalah :"
& CmdArgs(i))
Next
End Sub
End Module
Yang kalau dieksekusi dengan
Coba Hello World
Jumlah Parameter :2
Parameter :0 adalah :Hello
Parameter :1 adalah :World
Dalam hal ini kita menjalankan program Coba.exe pada command prompt dengan
mengirim dua parameter yaitu kata Hello dan World yang dianggap sebagai array bertipe
string.
Catatan :
Index Array dimulai dari 0, sehingga pada contoh diatas looping dimulai dari 0 s/d
CmdArgs.Length()-1.
Program yang menggunakan parameter jarang digunakan pada lingkungan Windows, dan
sering digunakan pada program di lingkungan Console.
Pemberian komentar
Jika kita hari ini membuat program, dan pada saat yang sama semua logika serta rumusan
dapat kita ingat dengan baik, tetapi bagaimana kalau kita membaca kembali program
yang pernah kita buat untuk 3 bulan yang lalu, apakah anda masih mengingatnya ?
Bagaimana kita membuat program kita mudah di pahami kembali ? Tentu saja dengan
memberikan keterangan secukupnya.
Bahasa pemrograman VB.NET Hendra, S.T.
Pada Visual Basic pembuatan keterangan dapat menggunakan simbol ' (petik tunggal)
maupun keyword REM.
Contoh :
' Ini adalah keterangan
REM Ini adalah keterangan
Type Data
Sebagaimana bahasa pemrograman lainnya, Visual Basic menyediakan berbagai type
data yang dapat digunakan oleh pemrogram sesuai dengan konteks pemakaiannya. Type
data pada Visual Basic dibagi atas dua kelompok besar yaitu Value Type (Tipe data
primitif) dan Reference (String, Array dan Objek).
Berikut ini adalah tabel tipe data pada VB disertai dengan alokasi storage yang
dibutuhkan serta jangkauan nilai yang dapat ditampung oleh masing-masing tipe.
Visual Basic
type
Common language
runtime type
structure
Nominal
storage
allocation
Value range
Boolean System.Boolean 2 bytes True or False.
Byte System.Byte 1 byte 0 through 255 (unsigned).
Char System.Char 2 bytes 0 through 65535 (unsigned).
Date System.DateTime 8 bytes 0:00:00 on January 1, 0001 through 11:59:59
PM on December 31, 9999.
Decimal System.Decimal 16 bytes 0 through +/-
79,228,162,514,264,337,593,543,950,335 with
no decimal point;
0 through +/-
7.9228162514264337593543950335 with 28
places to the right of the decimal; smallest
nonzero number is
+/-0.0000000000000000000000000001 (+/-
1E-28).
Double
(doubleprecision
floating-point)
System.Double 8 bytes -1.79769313486231570E+308 through
-4.94065645841246544E-324 for negative
values; 4.94065645841246544E-324 through
1.79769313486231570E+308 for positive
values.
Integer System.Int32 4 bytes -2,147,483,648 through 2,147,483,647.
Long
(long integer)
System.Int64 8 bytes -9,223,372,036,854,775,808 through
9,223,372,036,854,775,807.
Object System.Object (class) 4 bytes Any type can be stored in a variable of type
Object.
Short System.Int16 2 bytes -32,768 through 32,767.
Single
(singleprecision
floating-point)
System.Single 4 bytes -3.4028235E+38 through -1.401298E-45 for
negative values; 1.401298E-45 through
3.4028235E+38 for positive values.
String
(variablelength)
System.String (class) Depends on
implementing
platform
0 to approximately 2 billion Unicode characters.
User-
Defined
Type
(inherits from
System.ValueType)
Depends on
implementing
platform
Each member of the structure has a range
determined by its data type and independent of
the ranges of the other members.
Bahasa pemrograman VB.NET Hendra, S.T.
(structure)
Walaupun dewasa ini, memori dan media penyimpanan data tidak menjadi masalah
seperti pada awal kelahiran komputer, tetapi hendaklah programmer bijaksana dalam
pemakaian type data berkaitan dengan perfomance yang dihasilkan.
Deklarasi Variabel
Pemrogram yang baik tentu saja menggunakan pendekatan yang terstruktur dalam
pengembangan program, salah satu ciri dari program yang terstruktur adalah
mendeklarasikan semua variabel yang digunakan dalam program.
Pada Visual Basic printah Dim digunakan untuk mendeklarasikan variabel dan
memberikan nilai awal kepadanya.
Contoh :
Dim Harga, Jumlah As Single
Dim Kuantitas As Integer = 10
Dim Lanjutkan As Boolean = True
Dim Keterangan As String = "Visual Studio .NET"
Catatan :
Pada Visual Basic pemakaian variabel harus dideklarasikan terlebih dahulu, jika tidak
anda akan mendapatkan kesalahan kompiler, karena default setting Explicit pada Visual
Basic adalah Option Explicit On.
Kemudian Jika anda tidak memberikan nilai awal pada suatu variabel pada
dideklarasikan, maka nilai berikut akan diberikan sebagai nilai awal variabel tersebut :
• 0 untuk semua tipe data numerik (termasuk Byte).
• Binary 0 untuk Char.
• Nothing untuk semua tipe reference (termasuk Object, String, dan semua array).
• False untuk Boolean.
• 12:00 AM pada 1 Januari 1 untuk Date.
Sesuatu hal yang perlu anda perhatikan adalah daya tampung variabel berdasarkan tipe
yang ditentukan, jika anda memasukan nilai diluar dari daya tampung variabel, suatu
kesalahan overflow exception akan terjadi.
Tidak ada komentar:
Posting Komentar