Visual Basic

**Microsoft Visual Basic** (sering disingkat sebagai **VB** saja) merupakan sebuah bahasa pemrograman yang menawarkan *[[Lingkungan pengembangan terpadu|Integrated Development Environment]]* (real) visual untuk membuat program perangkat lunak berbasis sistem operasi Microsoft Windows dengan menggunakan model pemrograman (COM).

Visual Basic merupakan turunan bahasa pemrograman BASIC dan menawarkan pengembangan perangkat lunak komputer berbasis grafik dengan cepat.

Beberapa bahasa skrip seperti Visual Basic for Applications (VBA) dan Visual Basic Scripting Edition (VBScript), mirip seperti halnya Visual Basic, tetapi cara kerjanya yang berbeda.

Para programmer dapat membangun aplikasi dengan menggunakan komponen-komponen yang disediakan oleh Microsoft Visual Basic Program-program yang ditulis dengan Visual Basic juga dapat menggunakan Windows API, tidak membutuhkan deklarasi fungsi luar tambahan.

Dalam pemrograman untuk bisnis, Visual Basic memiliki pangsa pasar yang sangat luas. Sebuah survey yang dilakukan pada tahun 2005 menunjukkan bahwa 62% pengembang perangkat lunak dilaporkan menggunakan berbagai bentuk Visual Basic, yang diikuti oleh C++, JavaScript, C#, dan Java.

## Sejarah

Bill Gates, pendiri Microsoft, memulai bisnis perangkat lunak dengan mengembangkan *interpreter* bahasa Basic untuk Altair 8800, untuk kemudian ia ubah agar dapat berjalan di atas IBM PC dengan sistem operasi DOS. Perkembangan berikutnya ialah diluncurkannya BASICA (*basic-advanced*) untuk DOS. Setelah BASICA, Microsoft meluncurkan Microsoft QuickBasic dan Microsoft Basic (dikenal juga sebagai Basic Compiler).

Visual Basic adalah pengembangan dari bahasa komputer BASIC (*Beginner’s All-purpose Symbolic Instruction Code*). Bahasa BASIC diciptakan oleh Professor John Kemeny dan Thomas Eugene Kurtz dari Perguruan Tinggi Dartmouth pada pertengahan tahun 1960-an. Bahasa program tersebut tersusun mirip dengan bahasa Inggris yang biasa digunakan oleh para
programer untuk menulis program-program komputer sederhana yang berfungsi sebagai pembelajaran bagi konsep dasar pemrograman komputer.

Sejak saat itu, banyak versi BASIC yang dikembangkan untuk digunakan pada berbagai platform komputer, seperti Microsoft QBASIC, QUICKBASIC, GWBASIC, IBM BASICA, Apple BASIC dan lain-lain.

Apple BASIC dikembangkan oleh Steve Wozniak, mantan karyawan Hewlett Packard dan teman dekat Steve Jobs (pendiri Apple Inc.). Steve Jobs pernah bekerja dengan Wozniak sebelumnya (mereka membuat game arcade “Breakout” untuk Atari). Mereka mengumpulkan uang dan bersama-sama merakit PC, dan pada tanggal 1 April 1976 mereka secara resmi mendirikan perusahaan komputer Apple. Popularitas dan pemakaian BASIC yang luas dengan berbagai jenis komputer turut berperan dalam mengembangkan dan memperbaiki bahasa itu sendiri, dan akhirnya berujung pada lahirnya Visual Basic yang berbasis GUI (*Graphical User Interface*) bersamaan dengan Microsoft Windows. Pemrograman Visual Basic begitu mudah bagi pemula dan programer musiman karena ia menghemat waktu pemrograman dengan tersedianya komponen-komponen siap pakai.

Hingga akhirnya Visual Basic juga telah berkembang menjadi beberapa versi, sampai yang terbaru, yaitu Visual Basic 2010. Bagaimanapun juga Visual Basic 6.0 tetap menjadi versi yang paling populer karena mudah dalam membuat programnya dan ia tidak menghabiskan banyak memori.

Sejarah BASIC di tangan Microsoft sebagai bahasa yang diinterpretasi (BASICA) dan juga bahasa yang dikompilasi (BASCOM) membuat Visual Basic diimplementasikan sebagai gabungan keduanya.
Programmer yang menggunakan *Visual Basic* bisa memilih kode bahasa pemrograman yang dikompilasi atau kode yang harus bahasa pemrograman yang diinterpretasikan sebagai hasil porting dari kode VB. Sayangnya, meskipun sudah terkompilasi jadi bahasa mesin, DLL bernama `MSVBVMxx.DLL` tetap dibutuhkan. Namun karakteristik bahasa terkompilasi tetap muncul (ia lebih cepat dari kalau kita pakai mode terinterpretasi).

## Perkembangan Visual Basic
Visual Basic 1.0 dikenalkan pada tahun 1991. Konsep pemrograman dengan metode *drag-and-drop* untuk membuat tampilan aplikasi Visual Basic ini diadaptasi dari *prototype* generator *form* yang dikembangkan oleh Alan Cooper dan perusahaannya, dengan nama *Tripod*. Microsoft kemudian mengontrak Cooper dan perusahaannya untuk mengembangkan Tripod menjadi sistem *form* yang dapat diprogram untuk Windows 3.0, di bawah kode nama *Ruby*.

Tripod tidak memiliki bahasa pemrograman sama sekali. Ini menyebabkan Microsoft memutuskan untuk mengkombinasikan Ruby dengan bahasa pemrograman Basic untuk membuat Visual Basic.

### Dari waktu ke waktu
* 20 Mei 1991: Microsoft merilis Visual Basic versi 1.0 untuk Windows di Windows World 1991, Atlanta, Amerika Serikat. Programmer dapat membuat antar muka pengguna dengan mudah. Pembuatan aplikasi bisa lebih cepat dibandingkan sebelumnya. Kode ditulis oleh programmer untuk memberikan aksi terhadap Event dari pengguna (bagaimana pengguna merespon kepada object yang terdapat di antar muka.
* 2. 1 September 1992: Microsoft mengumumkan Microsoft Visual Basic for MS-DOS® dalam edisi Standard dan Professional. Seperti Visual Basic untuk Windows, versi ini mengkombinasikan kemudahan pendisainan secara grafis dengan kekuatan dan keunggulan dalam banyak hal di pemrograman
* 2 November 1992: Microsoft mengumumkan kemampuan dari Visual Basic versi 2.0 untuk Windows pada edisi Professional dan Standard. Versi ini menyertakan lebih dari 300 fitur baru dan peningkatan untuk pengembangan aplikasi yang lebih cepat, pengaksesan ke fitur-fitur tingkat lanjut di Windows, dan produktivitas pengembang yang lebih besar lagi. Di antaranya: MDI Forms, ODBC, dan variabel
* 14 Mei 1993: Microsoft mengumumkan Visual Basic versi 3.0 untuk edisi Standard dan Professional. Versi 3.0 menyediakan kemudahan akses ke berbagai sumber data yang banyak dengan mengintegrasikan mesin database Microsoft Access Database for Windows 1.1 dan kemampuan di bidang aplikasi melalui Object Linking and Embedding (OLE) 2.0. Juga ditambahkan tools baru berupa controls baru, penggunaan yang lebih mudah, dan sebuah peningkatan standardisasi control bagi
* 29 Juni 1993: Microsoft mengumumkan bahwa Microsoft Visual Basic for Applications (VBA) akan diintegrasikan ke dalam Microsoft Excel 5.0 dan Microsoft Project 4.0. Visual Basic akan melayani bahasa Macro yang umum di versi yang akan datang dari aplikasi-aplikasi untuk Windows dan Macintosh. Fitur Macro yang umum untuk aplikasi dan OLE 2.0, keduanya merupakan elemen penting di visi dan strategi Microsoft untuk aplikasi yang dapat diprogram —yang akan memberikan kemampuan bagi pengguna untuk mengintegrasikan aplikasi-aplikasi, tugas-tugas otomatis, dan pembuatan solusi yang bersifat kostumais. VBA memiliki mesin pengembangan tangguh dan fleksibel yang sama yang membuat Visual Basic menjadi terkenal, teknologi pemrograman yang memperoleh
* 14 November 1994: Visual Basic versi 4.0 untuk Windows didemonstrasikan di Fall/COMDEX ’94 di Las Vegas. Demonstrasi ini berfokus pada perannya sebagai aplikasi berbasis Windows 32-bit pertama yang menggunakan kontrol kostumais OLE (OCXs) — komponent perangkat lunak yang dapat digunakan kembali yang ditetapkan dengan spesifikasi OLE. Pada versi ini diperkenalkan: Class, OXC’s, dan programmer dapat membuat add-ins sendiri dengan
* 12 September 1995: Visual Basic versi 4.0 untuk MS-DOS, Microsoft Windows NT®, dan Windows 95 diumumkan. Untuk meningkatkan edisi Standard dan Professional, maka Edisi Enterprise yang baru diperkenalkan untuk memenuhi kebutuhan perusahaan dan team pengembang. Semua versi menyertakan dukungan teknologi OLE yang lebih dikembangkan, perbaikan akses data, sebuah lingkungan pengembangan yang bersifat visual, dan migrasi ke Windows 95 dan Windows NT untuk aplikasi-aplikasi yang sudah
* 7 Desember 1995: Microsoft mengumumkan Microsoft Visual Basic Scripting Edition (VBScript), sebuah bahasa skrip Internet berbasiskan pada Visual Basic. VBScript merupakan sebuah skrip dengan performansi yang tinggi yang didisain untuk membuat isi yang bersifat aktif pada suatu situs. VBScript membolehkan pengembang untuk mengaitkan dan mengotomatiskan berbagai jenis object di halaman situs, termasuk object OLE. VBScript menjadi sebuah spesifikasi yang diusulkan berlisensi gratis yang tersedia bagi komunitas
* 3 Februari 1997: Microsoft membuka sistem pemrograman Visual Basic versi 5.0, Edisi Professional — tool versi terakhir yang paling terkenal di dunia untuk membangun aplikasi yang tangguh (*Rapid Application Development RAD*) tool. Fitur-fitur Visual Basic versi 5.0 terdiri dari sejumlah performansi yang signifikan dan peningkatan produktivitas yang akan membuat para pengembang lebih efisien dan fleksibel serta cepat dalam memberikan solusi bagi pengguna akhir. Fitur-fitur tingkat lanjut — seperti kompilasi berjenis native code, akses database berkecepatan tinggi, dan sebuah lingkungan pengembangan yang ditingkatkan — membuat Visual Basic versi 5.0 menjadi versi yang paling hebat. Sebagai tambahan, kemampuan teknologi pembuatan komponen Microsoft ActiveX® di Visual Basic versi 5.0 akan membolehkan lebih dari 3 juta pengembang menggunakan Visual Basic dalam membuat aplikasi yang berbasis pada komponen yang bertujuan untuk digunakan di Internet, intranets, dan lingkungan tradisional client/
* 10 Maret 1997: Versi terakhir yang dirilis dari Visual Basic 5.0, Edisi Pembuatan Kontrol tersedia. Edisi Pembuatan Kontrol adalah cara mudah untuk membuat ActiveX Controls bagi Internet, intranets, dan aplikasi client/
* 15 Juni 1998: Microsoft mengumumkan Visual Basic versi 6.0, dan dimasukkan ke dalam Microsoft Visual Studio® versi 6.0. Fitur-fitur Visual Basic versi 6.0 menyediakan pengaksesan data secara terintegrasi dan bersifat grafis ke sumber data (data source) ODBC atau OLE DB manapun, dan perangkat tambahan database yang didisain untuk database Oracle dan Microsoft SQL Server™. Fitur unggulan di versi ini adalah: ActiveX Data Objects (ADO) untuk memanipulasi dan membuat database. Fitur Pengembangan Situs membawa kemudahan dalam penggunaan, model pemrograman berbasis komponen dari Visual Basic untuk membuat HTML – dan Dynamic HTML (DHTML) – berbasis aplikasi. Fitur-fitur baru ini — dikombinasikan dengan optimisasi performansi, pengembangan aplikasi yang disederhanakan dan debugging, dan dukungan untuk Microsoft teknologi server — membuat Visual Basic versi 6.0 sebuah pilihan yang ideal untuk membangun aplikasi berskala
* 2 September 1998: Visual Studio 6.0, solusi tool pengembangan lengkap berskala perusahaan tersedia. Visual Studio 6.0 menyertakan Visual Basic versi 6.0, Microsoft Visual C++®, Microsoft Visual FoxPro®, Microsoft Visual InterDev® Web, dan Microsoft Visual J++®. Bersamaan dengan diluncurkannya Developer Days ’98, lebih dari 115 perusahaan papan atas mengumumkan dukungan terhadap Visual Studio 6.
* 28 April 1999: Lingkungan pengembangan VBA versi 6.0 dan Software Development Kit (SDK) VBA (SDK) versi 6.0 tersedia bagi vendor perangkat lunak pihak ketiga melalui program lisensi VBA. VBA 6.0 merupakan sebuah teknologi pengembangan yang tangguh untuk aplikasi yang dikemas secara kostumais dan merupakan sebuah komponen utama di Microsoft Office
* 15 Februari 2000: Steve Ballmer, presiden yang baru saja ditunjuk dan CEO dari Microsoft Corporation, berbicara kepada lebih dari 2.000 pengembang dalam pidatonya pada Visual Basic Insiders Technical Summit (VBITS), menyatakan visi Microsoft terhadap situs yang dapat diprogram dan memaksa kembali komitmen perusahaan yang dalam terhadap para pengembang Visual
* 11 Juli 2000: Microsoft menyampaikan Tool Platform .NET untuk XML Web Services. Dalam pidatonya yang ditujukan pada acara Microsoft Professional Developers Conference (PDC) 2000 yang kedelapan, Paul Maritz, wakil presiden kelompok dari Platforms Group di Microsoft, memperlihatkan Microsoft .NET Framework dan Microsoft Visual Studio .NET. Ini merupakan versi terakhir dari perangkat pengembangan yang digunakan di seluruh dunia, Visual Studio .NET menyediakan dukungan untuk pengembangan drag-and-drop terhadap XML Web Services. Secara bersama, kedua produk tersebut menyediakan produktivitas yang tinggi kepada para pengembang, suatu lingkungan yang terdiri dari banyak bahasa untuk pembangunan, pengantaran, dan pengintegrasian XML Web Services pada platform Microsoft .
* 13 November 2000: Microsoft mengumumkan kemampuan Visual Studio .NET versi Beta 1. Dalam pidato acara COMDEX/Fall 2000, Bill Gates mengumumkan kemampuan versi beta pertama Visual Studio.NET dan .NET Framework, dua teknologi kunci untuk memungkinkan para pengembang membangun XML Web services pada platform .NET. XML Web services merupakan aplikasi dan komponen yang dibuat tersedia melewati situs dengan menggunakan XML dan Simple Object Access Protocol (SOAP), dan kunci yang dapat diprogram untuk membangun generasi masa depan Internet. Microsoft membuat Visual Studio .NET Beta 1 dan .NET Framework tersedia bagi jutaan pelanggan dan rekanan
* 13 Februari 2002: Microsoft mengumumkan kemampuan dari Visual Studio .NET versi akhir.

## Pemrograman Berorientasi Objek (OOP)
Visual Basic merupakan bahasa yang mendukung Pemrograman berorientasi objek, namun tidak sepenuhnya, Beberapa karakteristik objek tidak dapat dilakukan pada Visual Basic, seperti *Inheritance* tidak dapat dilakukan pada class module, *Polymorphism* secara terbatas bisa dilakukan dengan mendeklarasikan *class module* yang memiliki *Interface* tertentu. Visual Basic (VB) tidak bersifat case sensitif.

## Desain Visual dan Komponen
Visual Basic menjadi populer karena kemudahan desain form secara visual dan adanya kemampuan untuk menggunakan komponen-komponen *ActiveX* yang dibuat oleh pihak lain. Namun komponen *ActiveX* memiliki masalahnya tersendiri yang dikenal sebagai *DLL hell*,Pada Visual Basic .NET, Microsoft mencoba mengatasi masalah *DLL hell* dengan mengubah cara penggunaan komponen (menjadi independen terhadap registry).

## Kode sumber

Dalam ilmu komputer, kode sumber (Inggris: *source code*) atau kode program adalah suatu rangkaian pernyataan atau deklarasi yang ditulis dalam bahasa pemrograman komputer yang terbaca manusia. Kode sumber yang menyusun suatu program biasanya disimpan dalam satu atau lebih berkas teks, dan dapat pula ditampilkan dalam bentuk cuplikan kode (code snippet) yang dicetak pada buku atau media lainnya.

## Contoh kode

Kode berikut menampilkan kotak pesan "Hello, World!":

```vb
Private Sub Form_Load()
    ' Execute a simple message box that says "Hello, World!"
    MsgBox "Hello, World!"
End Sub
```

Kode berikut membuat sebuah perhitungan naik setiap 1 detik dan menampilkannya di label (sebuah kontrol label dan timer dibutuhkan di dalam form agar bisa bekerja):

```vb
Option Explicit
Dim Count As Integer
Private Sub Form_Load()
    Count = 0
    Timer1.Interval = 1000 'milidetik
End Sub
Private Sub Timer1_Timer()
    Count = Count + 1
    Label1.Caption = Count
End Sub
```

″code≈key″

## Jenis Project yang terdapat pada Visual Basic 6.0
Jenis tipe/aplikasi Project yang terdapat pada Visual Basic 6.0
* Standard EXE: Tipe aplikasi ini merupakan tipe aplikasi yang biasa dipakai untuk keperluan bisnis yang umum, tanpa harus berhubungan dengan aplikasi yang lain. Project standar dalam Visual Basic dengan komponen-komponen standar. Jenis project ini sangat sederhana, tetapi memiliki keunggulan bahwa semua komponennya dapat diakui oleh semua unit komputer dan semua user meskipun bukan administrator.
* ActiveX EXE: Tipe aplikasi yang digunakan untuk aplikasi lain sebagai bagian dari suatu service. Service ini dapat berjalan didalam komputer yang sama ataupun pada komputer lain melalui “remote automation” atau DCOM. Biasanya service ini tidak menyediakan interface visual. Project ini adalah project ActiveX berisi komponen-komponen kemampuan untuk berinteraksi dengan semua aplikasi di sistem operasi windows.
* ActiveX DLL: Tipe aplikasi ini biasanya dibuat untuk digunakan oleh aplikasi lain sebagai bagian dari suatu service. DLL terdapat pada komputer yang sama dengan aplikasi yang menjalankannya. Aplikasi ini tidak menyediakan Interface Visual. Namun, ia dapat juga dijalankan pada komputer yang lain yang menjalankan Microsoft Transaction Server. Project ini menghasilkan sebuah aplikasi library yang selanjutnya dapat digunakan oleh semua aplikasi di sistem operasi windows.
* ActiveX Control: Adalah komponen software yang bisa digunakan untuk perangkat-perangkat yang mendukung teknologi ActiveX. Control dari ActiveX ini, dapat ditulis dalam berbagai jenis bahasa pemrograman, termasuk C, C++, Visual Basic dan Java. Project ini menghasilkan komponen-komponen baru untuk aplikasi Visual Basic yang lain
* VB Application Wizard (Cekatan Aplikasi VB): Project ini memandu pengguna untuk membuat aplikasi secara mudah tanpa harus pusing-pusing dengan perintah-perintah pemrograman.
* Addin: Project seperti Standard EXE tetapi dengan berbagai macam komponen tambahan yang memungkinkan kebebasan kreasi dari pengguna.
* Data project: Project ini melengkapi komponennya dengan komponen-komponen database. Sehingga bisa dikatakan project ini memang disediakan untuk keperluan pembuatan aplikasi database.
* DHTML Application: Project ini digunakan untuk membuat aplikasi internet pada sisi client (client side) dengan fungsi-fungsi DHTML.
* IIS Application: Project ini menghasilkan aplikasi internet pada sisi server (server side) dengan komponen-komponen CGI (Common Gateway Interface).
* VB Wizard Manager biasanya digunakan untuk membangun sebuah wizard yaitu kumpulan informasi dari pengguna yang akan digunakan untuk membangun sebuah aplikasi.
* ActiveX Document Dll: Project jenis ini dapat membangun sebuah Document Active dengan ekstensi file berupa DLL.
* ActiveX Document Exe: ActiveX Document Exe hanpir sama dengan ActiveX Document DLL, namun format file yang dihasilkan berupa ekstensi Exe.
* VB Enterprise Edition Control: VB Enterprise Edition Control pada dasarnya sejenis dengan project Standard EXE, bedanya kalau VB Enterprise Edition Control semua tools VB Enterprise Edition akan di aktifkan.

## Tipe Data (Data Type) Visual Basic 6.0

Contoh penggunaan DataType dalam vb6:


```vb
Sub Simpan()
   Dim strTanya as String
   strTanya = Msgbox ("Data Saat ini akan tersimpan. Apakah anda ingin melanjutkan?",vbQuestion + vbYesNo," Pilih")
   If strTanya = vbYes then
      'Kode-simpan-disini
      msgbox "Data berhasil disimpan!",vbInformation," Simpan"
      Exit Sub
   ElseIf strTanya = vbNo then
      msgbox "Penyimpanan dibatalkan!",vbInformation," Batal"
      Exit Sub
   End if
End Sub
```


## Komponen ActiveX
* DateTimePicker Control: komponen untuk menampilkan tanggal pada aplikasi dengan tampilan kalender yang mudah dinavigasikan. yang dimasukkan melalui Date TimePicker Control telah memenuhi format penulisan tanggal yang benar.
* ProgressBar Control. Komponen sebagai penunjuk progres dalam bentuk bar.
* DataGrid Control: komponen yang dapat menampilkan *database* pada sebuah grid.
* TreeView Control: komponen untuk menampilkan data dalam bentuk hierarki, terutama data yang memiliki banyak level dan jenjang.
* MsChart Control: menambahkan grafik pada aplikasi dengan berbagai pilihan hanya perlu menyediakan data yang berupa angka pada aplikasi untuk membentuk sebuah grafik yang diinginkan.

## Lihat pula

* Visual Basic .NET
* Visual C++
* Microsoft Visual C Sharp
* Microsoft Visual Studio
* Microsoft Visual Studio Express
* J sharp
* Bahasa pemrograman
* Daftar bahasa pemograman

## Referensi

## Pranala luar
* Visual Basic 6.0 Resource Center
* Secure your Visual Basic 6.0 investment with Microsoft .NET: Migrating from Visual Basic 6.0 to Visual Basic 2008