jam analog

Sabtu, 29 Oktober 2011

Membuat Program Kontak Berfoto dengan VB.NET dan SQLServe



Biasanya jika membuat program sederhana yang menggunakan basisdata (database), program kontak-lah yang sering menjadi kasus. Karena membuat programnya kontak tidak ada proses yang berarti hanya mengisi data, simpan dan ditampilkan kembali. Kali ini saya akan berbagi membuat program kontak lengkap dengan foto dari isi kontak menggunakan bahasa pemrograman Visual Basic.NET 2008 dan basisdatanya menggunakan SQLServer2008. Program ini juga dapat dicoba menggunakan versi sebelumnya.
Ada beberapa tahapan yang harus dilakukan untuk membuat program kontak ini, yaitu :
A. Menyiapkan Basisdata
Buatlah database dengan nama yang dipilih, misal vbnet_saya. Kemudian buatlah sebuah table sesuai dengan skrip SQL dibawah ini :
CREATE TABLE [dbo].[tbl_kontak]( [id] [varchar](6) NOT NULL, [nama] [varchar](50) NULL, [alamat] [varchar](50) NULL, [phone] [varchar](50) NULL, [email] [varchar](50) NULL, [foto] [varchar](50) NULL ) ON [PRIMARY]
Jika pernyataan diatas di-eksekusi maka akan tercipta sebuah table yang bernama tbl_kontak.
B. Membuat Project Baru Visual Basic.NET
Sekarang memulai membuat project baru di Visual Basic.NET, untuk pertama kali tambahkan sebuah Class yang berisi pernyataan koneksi ke basisdata. Caranya dari menu Project, pilih Add Item, pilih Class, kemudian berinama clskoneksi.vb dan masukkan kodenya.  Kode koneksi harus disesuaikan dengan nama database (YYYY) dan nama server (XXXXX) yang digunakan.
cn = New OleDb.OleDbConnection("Provider=SQLOLEDB.1;Integrated Security=SSPI; Persist Security Info=False;User ID=sa;Password=;Initial Catalog=YYYY;Data Source=XXXXX")
Kode dapat didownload disini.
C. Membuat Form Kontak
Setelah membuat class untuk koneksi database, selanjutnya buatlah sebuah form kontak. Untuk menambahkan form baru, klik menu Project, pilih Add Windows Form, kemudian berinama form tersebut dengan frmKontak.vb. Untuk form kontak dibutuhkan beberapa objek yaitu, Label, TextBox, Button dan ListView. Dibawah ini adalah layout form kontak :

Form Kontak
D. Kode Form Kontak
Agar form dapat berfungsi dibutuhkan kode untuk mengontrol jalannya objek form tersebut.  Jika program dieksekusi maka akan memeriksa ke database IDKontak terakhir, jika belum ada maka akan mencetak KON001, jika sudah ada maka akan menambahkan 1 angka pada angka terakhir. Pada Listview (lstKontak) akan menampilkan isi table tbl_kontak yang terurut berdasarkan nama.
Untuk menambahkan data baru cukup memasukkan nama, alamat, telepon dan email pada kolom yang ada. Untuk menambahkan foto cukup meng-klik kotak foto maka akan muncul kotak dialog untuk memilih foto yang diinginkan. Kemudian klik tombol Simpan untuk menyimpan data yang dimasukkan.
Untuk mengubah data yang diinginkan cukup memilih nama dalam ListView maka akan muncul data yang siap di-edit pada form. Lakukan perubahan terhadap nama, alamat, telepon, email dan foto, kemudian klik tombol Ubah.
Untuk menghapus data, lakukan langkah seperti meng-edit data dan menekan tombol Hapus. Sedangkan tombol Batal untuk membatalkan semua proses yang telah dilakukan. Kode lengkap dapat didownloaddisini.
Setiap memilih baris data pada Listview maka form akan memuat data yang dipilih dan menampilkan foto kontak.
Berikut ini adalah hasil dari eksekusi program kontak.
Program ini masih banyak kekurangan, sekiranya dapat disempurnakan kembali. Selamat mencoba.

pengenalan vb net

   VB.NET sendiri merupakan bahasa pemrograman yang terdapat dalam Visual Studio .NET untuk mendukung rencana Microsoft ke depan dalam platform .NET-nya.. Bisa dikatakan VB.NET sebagai bahasa pemrograman yang telah cukup matang menjadikan VB.NET menjadi bahasa pemrograman yang akan menjadi pintu gerbang bagi banyak kalangan developer dalam platform Microsoft yang baru. 
Microsoft Visual Basic .NET adalah pengembangan lebih lanjut dari bahasa pemrograman Visual Basic 6.0 yang dikenal dengan kemampuan Rapid Application Development dan mengimplementasikan konsep OOP (Object Oriented Programming) secara penuh. Visual Basic .Net merupakan bahasa pemrograman yang berorientasi objek yang memiliki fitur seperti abstraction, encapsulation, inheritance, polymorphism, dan juga termasuk penambahan keyword Class untuk mendefinisikan kelas-kelas dan keyword Inheritance untuk objek Inheritance. Microsoft VB.NET dirilis untuk mempernbaiki kekurangan pada visual basic seperti : 
oo .Tidak memiliki kemampuan multi-threading, yakni kemampuan yang memungkinkan suatu tugas dapat dijalankan pada thread terpisah. 
oo .Kurangnya dukungan pemrograman berorinteasi objek 
oo .Terbatasnya kemampuan menangani error 
Sebagai tambahan VB.Net juga menyediakan fitur-fitur yang lebih baik dan tidak ada pada versi sebelumnya seperti multithreading dan structured exception handling. Hasil coding pada Visual Basic versi sebelumnya tidak bisa dikompilasi pada Visual Basic .NET tanpa modifikasi yang signifikan, namun kita tidak perlu kuatir, karena Microsoft menyediakan tools untuk migrasi untuk menangani hal tersebut. 
Fitur-Fitur baru yang terdapat pada VB.NET 
Dengan dirilisnya .NET platform, Visual Basic telah microsoft telah membuat beberapa perubahan sbb: 
Pemrograman Full Object-Oriented (OOP) sepenuhnya.Pemrograman berorientasi objek. Pemrograman ini mempertinggi kualitas dan produktifitas pengembangan software. Program pengembangannya dilakukan dengan pendekatan building block. Setiap block, disebut object, bersifat independen dan mampu berjalan sendiri atau saling kunci dengan object lain dengan mudah dan otomatis. 
Object-object berinteraksi dengan saling memberikan informasi satu terhadap yang lainnya. Masing-masing object harus berisikan informasi mengenai dirinya sendiri(encapsulation) dan object yang dapat diwariskan (Inheritance). 
Aplikasi dan komponen yang ditulis di Visual Basic .NET memiliki akses penuh untuk .NET Framework sebagai class library yang menyediakan system dan application services. 
Berikut adalah fitur-fitur kunci Visual Basic .Net : 
1. Inheritance ( Pewarisan ) 
Inheritance adalan kemampuan dari derived class untuk mendapat karakter seperti anggota-anggota data maupun anggota function dari base class. Menggunakan VB .Net kita dapat membuat kelas yang kemampuan dasarnya dapat diwarisi kelas lain yang menjadi anggota kelas tersebut. Sebuah kelas yang mendapat atau diwarisi karakter dari kelas lain disebut derived class, dan kelas yang mewarisi derived class disebut base class Dalam istilah pemrograman berorientasi objek base class di sebut superclass dan derived class disebut subclass. 
2. Constructor dan Destructor 
Constructor adalah sebuah special tipe dari method yang dipanggil ketika pembuatan kelas. Constructor digunakan untuk mengenali anggota dari kelas. Destructor, dilain pihak dipanggil ketika objek dihancurkan destructor tersebut akan melepaskan sumber daya yang digunakan oleh sebuah objek. 
3. Overloading 
Overloading memperbolehkan sebuah method didefinisikan dengan nama yang sama tetapi berbeda parameter. Dengan kata lain, memperbolehkan kita mempunyai multi implementasi dalam sebuah method. 
4. Overriding 
Overriding adalah kemampuan dari kelas yang diberi karakter untuk menolak karakter dari base classnya. VB .Net memperkenalkan kata kunci Overrides untuk mengimplemantasikan anggota di kelas derived. 
5. Structired Exception Handling 
Exception adalah error yang muncul pada saat runtime sebagai hasil dari kesalahan statement kode ataupun dari keadaan yang tidak diinginkan dari sebuah aplikasi. Untuk sebuah program VB .Net mendukung structured exception handling untuk menangani exceptions yang memproteksi kode dan menyaring exception yang bisa muncul saat program dijalankan 
6. Multithreading 
VB .NET mendukung untuk pembuatan aplikasi multithreading. Multithreading membuat aplikasi menjalankan beberapa thread pada saat program tersebut dijalankan dengan melakukan lebih dari satu pekerjaan dalam satu waktu. 
Selain fitur kunci yang telah di sebutkan tadi VB .NET juga mendukung fitur yang unik disebut Background compilation. Fitur ini lagsung mengenali error dan menampilkan dalam bentuk pesan error pada kode ketika programmer menulis kode. 

Beberapa template yang dapat digunakan: 
>> Windows Application 
Aplikasi standar berbasis window 
>> Class Library 
Pustaka kelas menyedikan fungsionalitas yang sama seperti Microsoft ActiveX dynamic–link library (DLLs) dengan membuat kelas-kelas yang dapat diakses aplikasi lain 
>> Windows ControlLibrary 
Yaitu fungsi yang sama dengan ActiveX Control (.ocx) dalam pemrograman VB6, anda dapat membuat kontrol sendiri dan memasukan fungsi yang anda butuhkan. 
>> ASP .NET Web Service 
Aplikasi Web yang menyediakan XML Web Service yang diletakan di Web server dan dapat diakses oleh aplikasi manapun. 
>> Web Control Library 
Web kontrol yang dapat anda buat sendiri, dapat digunakan pada halaman Web dengan cara yang sama juga dapat digunakan pada Aplikasi berbasis window 
>> Console Application 
Aplikasi berbasis console yang dapat berjalan didalam Command line 
>> Windows Service 
Aplikasi yang berjalan sebagai service di windows. 
Masing-masing Project memiliki file yang unik pada setoiap project. Untuk menyederhanakan pengaturan, file-file tersebut disimpan pada folder yang sama dengan project 
*. Solution (.sln, .suo ) 
Ekstensi .sln digunakan untuk file solution yang menghubungkan satu atau lebih project bersamaan, dan juga digunakan untuk menyimpan informasi global. File ini sama seperti Visual Basic groups (.vbg file) di versi VB sebelumnya. File Solution otomatis dibuat pada project Visual Basic .NET yang anda buat. File yang berekstensi .suo digunakan untuk file Solution User Option yang menyimpan record seperti breakpoints serta beberapa item task dan beberapa perubahan yang anda buat ketika membuka solution. 
*. Project (.vbproj) 
File Project adalah sebuah dokumen XML ( Extensible Markup Language ) yang berisi referensi terhadap berbagai item project, seperti form dan kelas-kelas. 
*. Lokal Project (.vb) 
Versi sebelumnya dari VB menggunakan estensi file yang berbeda untuk membedakan antara kelas (.cls), form (.frm), module (.bas) dan user control (.stl). VB.NET mengizinkan anda untuk mencampurkan berbagai tipe menjadi sebuah .vb file. Sebagai contoh , anda dapat membuat lebih dari satu item dalam file yang sama, didalamnya anda dapat memiliki sebuah kelas dan beberapa modul, sebuah form dan sebuah kelas ataupun beberapa kelas dalam file yang sama. 
*. Web Project (.aspx,.asmx,.asax) 
Web project menyimpan item-item mereka dalam Virtual Ditrectory pada Web Server dan dalam keadaan offline. Seperti local project , Web project juga menggunakan extensi .vb untuk kelas dan modul. Bagaimanapun, item Web project meliputi file Web-specific, seperti . aspx untuk Web Forms, . asmx untuk XML Web Services, dan . asax untuk kelas aplikasi global

KONSEP OOP PD PEMOGRAMAN VB DAN VB..NET

   Sebelum memulai membangun sebuah sistem programmer hendaknya terlebih dahulu memahami konsep dasar pemrograman apakah termasuk Pemrograman terstruktur atau Pemrograman berorientasi objek.
Pemrograman berorientasi Objek yang dalam istilah Inggris disebut sebagai Object Oriented Programming (disingkat OOP) adalah salah satu pendekatan pemrograman atau paradigma untuk pengembangan / development suatu perangkat lunak komputer dimana dalam struktur perangkat lunak tersebut didasarkan kepada interaksi objek dalam penyelesaian suatu proses .
OOP  dengan Procedural Programming
Selain menggunakan paradigma OOP, programer dapat menuliskan struktur kode program yang baik dengan menggunakan Procedural Programming, di mana programer membuat kode program dengan pendekatan procedural dan bekerja dengan function/procedure di dalam aplikasinya. Tetapi, tidak ada jawaban yang benar-benar tepat jika Anda diberi pertanyaan: apakah sebaiknya menggunakan OOP atau Procedural Programming? Karena jawabannya sangat relatif, terutama tergantung pada aplikasi yang ingin Anda buat. Jika Anda mempertimbangkan pemeliharaan dan pengembangan aplikasi yang efisien di masa yang akan datang, mungkin Anda dapat memilih pendekatan OOP. Tetapi, jika aplikasi Anda merupakan program sederhana yang dapat dibuat dengan mudah dan cepat dengan function/procedure, gunakanlah pendekatan Procedural Programming. Semua itu juga tergantung pada Anda sebagai programer, untuk memilih pendekatan yang cocok dan lebih baik bagi Anda dalam mengerjakan sebuah aplikasi.
Apakah VB6 menggunakan Konsep OOP ?
Pada Visual Basic 6.0 (dan Visual Basic versi sebelumnya), banyak diperdebatkan apakah bahasa pemrograman Visual Basic termasuk sebagai bahasa pemrograman berorientasi object ataukah tidak. Pada satu sisi, Visual Basic 6.0 mendukung object dan interface, dan juga mengimplementasikan class yang didefinisikan pada class module dan disimpan pada file dengan ekstensi .cls. Bahkan implementasi drag and drop control yang pasti dikenal oleh setiap programer Visual Basic merupakan contoh object yang dapat di-reuse. Pada saat Anda meletakkan sebuah control, misalnya sebuah command button pada form Visual Basic, Anda telah menciptakan object baru yang memiliki members berupa property, method, dan events. Visual Basic 6.0 juga mengenal keyword private, friend, public, dan static yang digunakan untuk mengatur level akses dari elemen yang dideklarasikan. Tetapi, pada sisi lain Visual Basic 6.0 dianggap tidak mengimplementasikan inheritance dan hanya memiliki fitur object oriented yang terbatas. Sebuah class pada Visual Basic 6.0 tidak mendukung untuk menurunkan property dan function-nya pada class yang lain. Bagaimana dengan polymorphism? Visual Basic 6.0 mendukung polymorphism melalui interface pada ActiveX. Pada Component Object Model (COM) yang membentuk infrastruktur spesifi kasi ActiveX, terdapat multiple interface yang memungkinkan komponen software dikembangkan tanpa mengubah kode program yang ada. Secara umum, OOP pada Visual Basic 6.0 lebih diimplementasikan pada user interface dan kurang memberikan dukungan bagi programer untuk mengimplementasikan OOP pada kode program. Paradigma ini yang kemudian diubah pada generasi Visual Basic .NET.
Bagaimana dengan VB.Net ?
Perdebatan apakah Visual Basic merupakan bahasa pemrograman berorientasi object ataukah tidak, berakhir pada saat dirilisnya Visual Studio .NET dan generasi seterusnya. Pada .NET, Visual Basic murni merupakan bahasa pemrograman berorientasi object. Kegunaan OOP yang utama adalah memaksimalkan penggunaan kembali kode program (code reuse). Saat Anda melakukan drag and drop, prosesnya dikerjakan oleh control designer sehingga Anda tidak perlu mengetahui bagaimana object itu bekerja. Bahkan Anda bebas menggunakan sebanyak mungkin control dan memodifikasi warna, bentuk, judul, bahkan event handling dari object. Dasar dari tipe sistem .NET adalah inheritance, yang tidak Anda temui dalam Visual Basic sebelumnya. Contoh implementasi inheritance pada .NET adalah namespace, .NET mengenal enam tipe kategori yang dapat didefinisikan pada namespace:
1. Classes.
Merupakan tipe referensi yang didefi nisikan dengan struktur Class .. End Class.
2. Arrays.
Merupakan tipe referensi yang menyimpan object dari tipe yang lain. Class Array didefinisikan pada namespace System pada .NET Framework Class Library.
3. Structures.
Didefinisikan dengan struktur Structure … End Structure.
4. Interfaces.
Didefinisikan dengan struktur Interface .. End Interface.
5. Delegates.
Merupakan tipe referensi yang mengenkapsulasi method dan didefinisikan dengan statement Delegate.
6. Enumerations.
Merupakan kumpulan nilai yang berkaitan, didefinisikan dengan struktur Enum ..End Enum.
Masing-masing dari enam kategori tersebut dapat mendefinisikan satu atau lebih members. Tipe-tipe members pada .NET adalah:
1. Fields.
Merupakan konstanta atau variabel yang mengizinkan akses tipe data. Fields dapat didefi nisikan oleh class, structure, dan enumeration. Fields digunakan sebagai data yang bersifat read-only, atau sering didefinisikan sebagai konstanta. Fields juga dapat berupa variabel read-only yang nilainya didefinisikan kali pertama pada class constructor dan tidak dapat diubah lagi.
2. Properties.
Property dapat didefi nisikan untuk class, structure, dan interface. Umumnya property dapat dibaca (readable) dan ditulis (writable), walaupun dapat juga diperlakukan read-only atau write-only.
3. Methods.
Merupakan function atau subrutin yang tersedia pada sebuah class, structure, interface, atau delegate. Pada sebuah method terdapat parameter atau argumen yang dapat dikirimkan by value atau by reference. Bagi programer Visual Basic 6.0 sudah tentu tidak asing lagi dengan parameter by value maupun by reference yang biasa digunakan dalam pembuatan function/procedure. By value berarti perubahan nilai pada variabel parameter yang dikirimkan hanya akan berlaku di dalam function, sementara by reference berarti perubahan nilai pada variabel di dalam function akan tetap berlaku pada saat function tersebut selesai dieksekusi dan kembali pada pemanggil. Dengan menggunakan keyword ByVal atau ByRef, Anda dapat menentukan bagaimana parameter dikirimkan.
4. Events.
Pada Visual Basic versi sebelumnya, Anda tentu telah mengenal event yang menimbulkan istilah event-driven programming. Event merupakan sebuah function yang dipanggil untuk merespon kejadian/event tertentu, seperti klik mouse, penekanan tombol keyboard, perubahan nilai field pada database, dan lain-lain. Umumnya event mengirimkan dua parameter, yaitu object yang mengindikasikan sender/pengirim event, dan object yang menyediakan informasi pada event tersebut.
Pada sebuah class, Anda dapat melakukan modifikasi pada method dengan cara overriding maupun overloading. Overriding berarti Anda mengubah implementasi dari sebuah method, sementara overloading berarti menambahkan method baru dengan nama yang sama, tetapi dengan pengenal yang berbeda. Overloading mengizinkan Anda memiliki dua atau lebih method dengan nama yang sama. Dua method tersebut akan muncul pada fasilitas IntelliSense sehingga pengguna dapat memilih method yang diinginkan. Bagaimanapun, salah memilih method dapat menyebabkan runtime-error, Anda dapat menghilangkan method yang tidak diinginkan untuk tampil dengan menggunakan keyword Shadows.
Generic Class
Inovasi baru generasi .NET adalah fitur yang dikenal dengan generics yang menyediakan sejumlah generic class. Untuk memahami kegunaan dari generic class, bayangkan Anda ingin membuat berbagai versi sebuah class di mana Anda ingin class tersebut bekerja pada lebih dari satu tipe data, misalnya class yang dapat bekerja pada tipe data integer, string, dan lain-lain. Dengan generic class, Anda tidak perlu menentukan tipe data yang diinginkan hingga Anda menciptakan object-nya di dalam program Anda. Anda dapat menemukan generic class pada namespace System. Collections.Generic pada .NET Framework Class Library. Selain menggunakan generic class yang tersedia pada .NET Framework, Anda juga dapat menuliskan sendiri generic class Anda. Dapat disimpulkan keuntungan dari generic class adalah:
1. Keamanan tipe data.
Generic class memeriksa kevalidan tipe data pada saat compile-time dan bukan pada saat run-time. Hal ini mengurangi kemungkinan konfl ik tipe data pada saat run-time.
2. Kinerja yang lebih baik.
Karena tipe data yang digunakan pada generic class dikenali pada saat compile-time, maka tidak diperlukan proses type casting pada saat run-time yang tentunya mempercepat waktu proses.
3. Penggunaan ulang (reuse).
Anda hanya perlu menuliskan class satu kali dan dapat menggunakannya dengan tipe data yang bervariasi.
Partial Class
Pada .NET versi 2.0, dikembangkan partial class atau class yang terpisah, yang memungkinkan Anda untuk memisahkan defi nisi class pada beberapa file. Pada saat compile-time, compiler akan mengelompokkan partial class tersebut dan memperlakukannya sebagai satu kesatuan. Keuntungan dari partial class adalah mengelompokkan pada batas yang jelas antara business logic dan user interface. Dengan partial class, kode program yang merupakan user interface tidak perlu ditampilkan pada programer, yang pada umumnya tidak perlu mengaksesnya.Partial class juga mempermudah proses debugging, di mana kode dipartisi ke dalam beberapa file yang berbeda.
Kesimpulan :
Inti dari Konsep OOP adalah memiliki Sifat Enkapsulasi,Inheritence (Turunan),Polimorpisme (Banyak bentuk) Sedangkan Pemrograman terstruktur untuk inheritance dan polimorfisme tidak mampu melakukan secara murni kecuali dengan interface.
Itu yang menyebabkan beberapa kalangan menyebut VB6 bukan bahasa ber-orientasi objek murni
Saran :
Tidak semua Aplikasi yang dibangun harus dengan konsep OOP tetapi untuk Aplikasi yang memungkinkan akan terjadi pengembangan bahkan sampai Aplikasi yang berskala besar seharusnya menggunakan konsep OOP agar maintenance(Perawatan) menjadi lebih mudah.

VISUAL BASIC

Terdapat tiga buah versi Visual Basic yang dirilis hingga bulan Agustus 2007, yakni:
]Visual Basic .NET 2002 (VB 7.0)
Versi pertama dari Visual Basic .NET adalah Visual Basic .NET 2002 yang dirilis pertama kali pada bulan Februari 2002. Visual Basic .NET 2002 merupakan sebuah bahasa pemrograman visual yang berbasis bahasa BASIC (sama seperti halnya Visual Basic 6.0, tetapi lebih disempurnakan dan lebih berorientasi objek), dan didesain untuk berjalan di atas Microsoft .NET Framework versi 1.0.
Versi 7.0 ini dirilis bersamaan dengan Visual C# dan ASP.NET. Bahasa C#, yang dianggap sebagai jawaban terhadap Java, mendapatkan perhatian yang lebih banyak dibandingkan dengan VB.NET yang kurang begitu banyak diulas. Hasilnya, sedikit orang di luar komunitas Visual Basic yang memperhatikan VB.NET. Versi pertama ini kurang mendapat sambutan yang bagus dari paraprogrammer, dan pada saat itu, program berbasis Visual Basic 6.0 sedang marak-maraknya dibuat. Para programmer yang mencoba Visual Basic .NET untuk pertama kali akan merasakan bahwa Visual Basic .NET sangatlah berbeda dibandingkan dengan Visual Basic sebelumnya. Contoh yang paling mudah adalah runtime engine yang lebih besar 10 kali lipat dibandingkan Visual Basic 6.0, dan juga meningkatkan beban di memori.
                      
Visual Basic .NET 2003 (VB 7.1)
Selanjutnya, pada bulan Maret 2003, Microsoft pun merilis lagi versi yang lebih baru dari Visual Basic .NET, Visual Basic .NET 2003. Versi ini berisi beberapa perbaikan dibandingkan dengan versi sebelumnya, dan aplikasi yang dibuatnya dapat berjalan di atas .NET Framework versi 1.1. Fitur yang ditambahkan adalah dukungan terhadap .NET Compact Framework dan mesin wizard upgradeVB6 ke VB.NET yang telah ditingkatkan. Peningkatan yang lainnya adalah peningkatan pada performa dan keandalan dari Integrated Development Environment (IDE) Visual Basic itu sendiri, dan jugaruntime engine.
Visual Basic .NET 2003 tersedia dalam beberapa jenis cita rasa: Professional, Enterprise Architect dan Academic Edition. Khusus untuk Visual Basic .NET 2003 Academic Edition, versi tersebut didistribusikan secara gratis untuk beberapa sekolah di dalam setiap negara; versi Professional dan Enterprise Architect merupakan produk komersial.


Visual Basic 2005 (VB 8.0)
Setelah itu, Microsoft pun berkonsentrasi dalam mengembangkan Microsoft .NET Framework 2.0, dan tentunya alat bantu untuk membangun program di atasnya. Hingga pada tahun 2005, mereka pun merilis versi terbaru dari Visual Basic .NET, yang kali ini disebut dengan Visual Basic 2005 (dengan membuang kata ".NET"), bersama-sama dengan beberapa aplikasi pengembangan lainnya.
Untuk rilis 2005 ini, Microsoft menambahkan beberapa fitur baru, di antaranya adalah:
§  Edit and Continue
Fitur ini sebelumnya terdapat di dalam Visual Basic, akan tetapi dihapus di dalam Visual Basic .NET. Dengan keberadaan fitur ini, para programmer dapat memodifikasi kode pada saat program dieksekusi dan melanjutkan proses eksekusi dengan kode yang telah dimodifikasi tersebut.
§  Evaluasi ekspresi pada saat waktu desain
§  Munculnya Pseudo-Namespace "My", yang menyediakan:
§  Akses yang mudah terhadap beberapa area tertentu dari dalam .NET Framework yang tanpanya membutuhkan kode yang sangat signifikan.
§  Kelas-kelas yang dibuat secara dinamis (khususnya My.Forms).
§  Peningkatan yang dilakukan terhadap konverter kode sumber dari Visual Basic ke Visual Basic .NET.
§  Penggunaan kata kunci (keyword) Using, yang menyederhanakan penggunaan objek-objek yang membutuhkan pola Dispose untuk membebaskan sumber daya yang sudah tidak terpakai.
§  Just My Code, yang menyembunyikan kode reusable yang ditulis oleh alat bantu Integrated Development Environment (IDE) Visual Studio .NET.
§  Pengikatan sumber data (Data Source binding), yang mampu mempermudah pengembangan aplikasi basis data berbasis klien/server.
Fungsi-fungsi yang tersebut di atas (khususnya My) ditujukan untuk memfokuskan Visual Basic .NET sebagai sebuah platform pengembangan aplikasi secara cepat dan "menjauhkannya" dari bahasaC#.
Bahasa Visual Basic 2005 memperkenalkan fitur-fitur baru, yakni:
§  Bawaan .NET Framework 2.0:
§  Generics
§  Partial class, sebuah metode yang dapat digunakan untuk mendefinisikan beberapa bagian dari sebuah kelas di dalam sebuah berkas, lalu menambahkan definisinya di lain waktu; sangat berguna khususnya ketika mengintegrasikan kode pengguna dengan kode yang dibuat secara otomatis.
§  Nullable Type
§  Komentar XML yang dapat diproses dengan menggunakan beberapa alat bantu seperti NDoc untuk membuat dokumentasi secara otomatis.
§  Operator overloading
§  Dukungan terhadap tipe data bilangan bulat tak bertanda (unsigned integer) yang umumnya digunakan di dalam bahasa lainnya.






Visual Basic 9.0 (Visual Basic 2008)
Versi ini merupakan versi terbaru yang dirilis oleh Microsoft pada tanggal 19 November 2007, bersamaan dengan dirilisnya Microsoft Visual C# 2008, Microsoft Visual C++ 2008, dan Microsoft .NET Framework 3.5.
Dalam versi ini, Microsoft menambahkan banyak fitur baru, termasuk di antaranya adalah:
§  Operator If sekarang merupakan operator ternary (membutuhkan tiga operand), dengan sintaksis If (boolean, nilai, nilai). Ini dimaksudkan untuk mengganti fungsi IIF.
§  Dukungan anonymous types
§  Dukungan terhadap Language Integrated Query (LINQ)
§  Dukungan terhadap ekspresi Lambda
§  Dukungan terhadap literal XML
§  Dukungan terhadap inferensi tipe data.
§  dukungan terhadap 'LINQ'


Hubungan dengan Visual Basic klasik
Apakah Visual Basic .NET dianggap sebagai sebuah versi Visual Basic atau benar-benar bahasa yang berbeda merupakan sebuah topik perdebatan yang hangat. Hal ini dikarenakan sintaksis bahasa Visual Basic .NET tidak mengalami perubahan yang sangat drastis, dan hanya menambahkan beberapa dukungan fitur baru seperti penanganan eksepsi secara terstruktur dan ekspresi yang bisa di-short-circuit-kan. Dua perubahan tipe data pun terjadi saat berpindah ke Visual Basic .NET. Dibandingkan dengan Visual Basic 6.0, tipe data Integer yang dimiliki oleh Visual Basic .NET memiliki panjang dua kali lebih panjang, dari 16 bit menjadi 32 bit. Selain itu, tipe data Long juga sama-sama berubah menjadi dua kali lipat lebih panjang, dari 32 bit menjadi 64 bit. Bilangan bulat 16-bit dalam Visual Basic .NET dinamakan dengan Short. Lagi pula, desainer GUI Windows Forms yang terdapat di dalam Visual Studio .NET atau Visual Basic .NET memiliki gaya yang sangat mirip dengan editor form Visual Basic klasik.
Jika sintaksis tidak banyak yang berubah, lain halnya dengan semantik, yang berubah secara signifikan. Visual Basic .NET merupakan sebuah bahasa pemrograman yang mendukung fitur "Bahasa Pemrograman Berorientasi Objek" secara penuh, karena memang didukung oleh arsitektur Microsoft .NET Framework, yang mengandung kombinasi dari Common Language Runtime dan Base Class Library. Visual Basic klasik, hanya merupakan sebuah bahasa pemrogaman berbasis objek, yang berjalan di atas arsitektur Component Object Model (COM).
Perubahan ini telah mengubah banyak asumsi tentang hal yang benar yang harus dilakukan dengan mempertimbangkan performa dan kemudahan untuk dipelihara. Beberapa fungsi dan pustaka perangkat lunak, yang ada di dalam Visual Basic klasik, kini tidak terdapat di dalam Visual Basic .NET; mungkin masih banyak yang masih terdapat di dalam Visual Basic .NET, tapi tidak seefisien apa yang ditawarkan oleh .NET Framework. Bahkan jika program Visual Basic klasik bisa dikompilasi dengan benar, sebagian besar program Visual Basic klasik harus melalui beberapa prosesrefactoring untuk mengadopsi fitur bahasa baru secara keseluruhan. Dokumentasi untuk ini pun tersedia di situs Microsoft[1].


Contoh Pemrograman
Contoh program sederhana dalam bahasa Visual Basic .NET yang dipakai untuk menghitung jumlah pembayaran dari m_item buah barang dengan harga m_price per item ditambah 5% pajak penjualan: [2].
  Dim m_item, m_price, tax, total As double
  m_item = double.Parse(textBox1.Text)
  m_price = double.Parse(textBox2.Text)
  tax = 0.05
  total = m_item * m_price * (1 + tax)
  label5.Text = total.ToString()
  MessageBox.Show("Well Done.")
Berikut ini adalah contoh lain dari program Visual Basic yang menggunakan objek CheckBox dan ComboBox untuk menghitung jumlah kredit mata kuliah yang diambil oleh seorang mahasiswa (masing-masing mata kuliah = 3 kredit):
Dim total As Integer
total = 0 ' awal dari jumlah kredit total
If (CheckBox1.Checked = True) Then 'boleh memilih semua checkbox
            total += 3
        End If
        If (CheckBox2.Checked = True) Then
            total = total + 3
        End If
        If (CheckBox3.Checked = True) Then
            total = total + 3
        End If
If (ComboBox1.SelectedIndex = 0) Then 'hanya bisa memilih satu
            total = total + 3
        ElseIf (ComboBox1.SelectedIndex = 1) Then
            total = total + 3
        ElseIf (ComboBox1.SelectedIndex = 2) Then
            total = total + 3
        End If
Label3.Text = CStr(total) ' hasil kredit total yang diambil




Contoh Pemrograman
Contoh Pemrograman
Contoh program sederhana dalam bahasa Visual Basic .NET yang dipakai untuk menghitung jumlah pembayaran dari m_item buah barang dengan harga m_price per item ditambah 5% pajak penjualan: [2].
  Dim m_item, m_price, tax, total As double
  m_item = double.Parse(textBox1.Text)
  m_price = double.Parse(textBox2.Text)
  tax = 0.05
  total = m_item * m_price * (1 + tax)
  label5.Text = total.ToString()
  MessageBox.Show("Well Done.")
Berikut ini adalah contoh lain dari program Visual Basic yang menggunakan objek CheckBox dan ComboBox untuk menghitung jumlah kredit mata kuliah yang diambil oleh seorang mahasiswa (masing-masing mata kuliah = 3 kredit):
Dim total As Integer
total = 0 ' awal dari jumlah kredit total
If (CheckBox1.Checked = True) Then 'boleh memilih semua checkbox
            total += 3
        End If
        If (CheckBox2.Checked = True) Then
            total = total + 3
        End If
        If (CheckBox3.Checked = True) Then
            total = total + 3
        End If
If (ComboBox1.SelectedIndex = 0) Then 'hanya bisa memilih satu
            total = total + 3
        ElseIf (ComboBox1.SelectedIndex = 1) Then
            total = total + 3
        ElseIf (ComboBox1.SelectedIndex = 2) Then
            total = total + 3
        End If
Label3.Text = CStr(total) ' hasil kredit total yang diambil








Hubungan dengan Visual Basic klasik
Apakah Visual Basic .NET dianggap sebagai sebuah versi Visual Basic atau benar-benar bahasa yang berbeda merupakan sebuah topik perdebatan yang hangat. Hal ini dikarenakan sintaksis bahasa Visual Basic .NET tidak mengalami perubahan yang sangat drastis, dan hanya menambahkan beberapa dukungan fitur baru seperti penanganan eksepsi secara terstruktur dan ekspresi yang bisa di-short-circuit-kan. Dua perubahan tipe data pun terjadi saat berpindah ke Visual Basic .NET. Dibandingkan dengan Visual Basic 6.0, tipe data Integer yang dimiliki oleh Visual Basic .NET memiliki panjang dua kali lebih panjang, dari 16 bit menjadi 32 bit. Selain itu, tipe data Long juga sama-sama berubah menjadi dua kali lipat lebih panjang, dari 32 bit menjadi 64 bit. Bilangan bulat 16-bit dalam Visual Basic .NET dinamakan dengan Short. Lagi pula, desainer GUI Windows Forms yang terdapat di dalam Visual Studio .NET atau Visual Basic .NET memiliki gaya yang sangat mirip dengan editor form Visual Basic klasik.
Jika sintaksis tidak banyak yang berubah, lain halnya dengan semantik, yang berubah secara signifikan. Visual Basic .NET merupakan sebuah bahasa pemrograman yang mendukung fitur "Bahasa Pemrograman Berorientasi Objek" secara penuh, karena memang didukung oleh arsitektur Microsoft .NET Framework, yang mengandung kombinasi dari Common Language Runtime dan Base Class Library. Visual Basic klasik, hanya merupakan sebuah bahasa pemrogaman berbasis objek, yang berjalan di atas arsitektur Component Object Model (COM).
Perubahan ini telah mengubah banyak asumsi tentang hal yang benar yang harus dilakukan dengan mempertimbangkan performa dan kemudahan untuk dipelihara. Beberapa fungsi dan pustaka perangkat lunak, yang ada di dalam Visual Basic klasik, kini tidak terdapat di dalam Visual Basic .NET; mungkin masih banyak yang masih terdapat di dalam Visual Basic .NET, tapi tidak seefisien apa yang ditawarkan oleh .NET Framework. Bahkan jika program Visual Basic klasik bisa dikompilasi dengan benar, sebagian besar program Visual Basic klasik harus melalui beberapa prosesrefactoring untuk mengadopsi fitur bahasa baru secara keseluruhan. Dokumentasi untuk ini pun tersedia di situs Microsoft[1].
Contoh Pemrograman
Contoh program sederhana dalam bahasa Visual Basic .NET yang dipakai untuk menghitung jumlah pembayaran dari m_item buah barang dengan harga m_price per item ditambah 5% pajak penjualan: [2].
  Dim m_item, m_price, tax, total As double
  m_item = double.Parse(textBox1.Text)
  m_price = double.Parse(textBox2.Text)
  tax = 0.05
  total = m_item * m_price * (1 + tax)
  label5.Text = total.ToString()
  MessageBox.Show("Well Done.")
Berikut ini adalah contoh lain dari program Visual Basic yang menggunakan objek CheckBox dan ComboBox untuk menghitung jumlah kredit mata kuliah yang diambil oleh seorang mahasiswa (masing-masing mata kuliah = 3 kredit):
Dim total As Integer
total = 0 ' awal dari jumlah kredit total
If (CheckBox1.Checked = True) Then 'boleh memilih semua checkbox
            total += 3
        End If
        If (CheckBox2.Checked = True) Then
            total = total + 3
        End If
        If (CheckBox3.Checked = True) Then
            total = total + 3
        End If
If (ComboBox1.SelectedIndex = 0) Then 'hanya bisa memilih satu
            total = total + 3
        ElseIf (ComboBox1.SelectedIndex = 1) Then
            total = total + 3
        ElseIf (ComboBox1.SelectedIndex = 2) Then
            total = total + 3
        End If
Label3.Text = CStr(total) ' hasil kredit total yang diambil

DEFINISI VISUAL BASIC



    Visual Basic merupakan cara termudah dan tercepat untuk membuat aplikasi yang dijalankan di sistem operasi Microsoft Windows®. Apakah Anda seorang profesional atau pemula sekalipun di bidang pemrograman Windows, Visual Basic menyediakan kepada Anda sekumpulan perangkat untuk mempermudah dan menyederhanakan pengembangan aplikasi yang tangguh.
Lalu apa sebenarnya definisi dari Visual Basic itu sendiri? Kata “Visual” merujuk kepada metode yang digunakan untuk membuat antar muka yang bersifat grafis Graphical User Interface (GUI). Daripada menulis berbaris-baris kode untuk menjelaskan pemunculan dan lokasi dari suatu elemen di dalam antar muka, Anda dengan mudah dapat menambahkan object yang sebelumnya sudah dibangun ke dalam tempat dan posisi yang Anda inginkan di layar Anda. Jika Anda pernah menggunakan program untuk menggambar seperti Paint, maka Anda sebenarnya sudah memiliki keahlian uuntuk membuat sebuah antar muka pengguna secara efektif.
Kata “Basic” merujuk kepada bahasa BASIC (Beginners All-Purpose Symbolic Instruction Code), sebuah bahasa yang digunakan oleh banyak programmer dibandingkan dengan bahasa lainnya dalam sejarah komputer. Visual Basic telah berubah dari bahasa asli BASIC dan sekarang memiliki ratusan pernyataan (statements), fungsi (functions), dan kata kunci (keywords), dan kebanyakan di antaranya terkait dengan antar muka grafis di Windows. Pengguna tingkat pemula sekalipun dapat membuat aplikasi dengan mempelajari hanya beberapa kata kunci, sementara kekuatan dari bahasanya membolehkan para pengguna tingkat professional mencapai apapun yang dapat dihasilkan dengan menggunakan bahasa pemrograman Windows lainnya.
Bahasa pemrograman Visual Basic tidaklah hanya identik dengan Visual Basic saja. Sistem Pemrograman Visual Basic dalam bentuk Edisi Aplikasi, telah dimasukkan ke dalam Microsoft Excel, Microsoft Access, dan banyak aplikasi Windows lainnya juga menggunakan bahasa yang sama. Visual Basic Scripting Edition (VBScript) adalah sebuah bahasa skrip yang digunakan secara lebih umum dan merupakan bagian dari bahasa Visual Basic. Dengan mempelajari Visual Basic, maka Anda akan dibawa ke area-area yang telah disebutkan tadi.
Apakah tujuan Anda untuk membuat sebuah utility sederhana untuk diri Anda sendiri atau untuk kelompok kerja Anda, sebuah sistem berskala perusahaan, atau bahkan aplikasi yang terdistribusi melalui Internet, Visual Basic memilik perangkat yang Anda butuhkan.
Fitur Data Access membolehkan Anda untuk membuat database, aplikasi front-end, dan komponen di sisi server (scalable server-side components) untuk hampir semua format database yang terkenal, termasuk Microsoft SQL Server dan database level perusahaan lainnya.
Teknologi ActiveX™ membolehkan Anda untuk menggunakan fungsionalitas yang disediakan oleh aplikasi-aplikasi lainnya, seperti pengolah kata Microsoft Word, Microsoft Excel spreadsheet, dan aplikasi Windows lainnya. Anda bahkan dapat mengotomatisasikan aplikasi-aplikasi dan objek-objek yang dibuat dengan menggunakan edisi Professional atau Enterprise Visual Basic.
Kemampuan Internet membuatnya mudah menyediakan pengaksesan ke dokumen-dokumen atau file-file dan aplikasi-aplikasi melalui Internet atau intranet dari dalam aplikasi Anda, atau untuk membuat aplikasi Internet server.
Aplikasi akhir Anda nantinya akan berbentuk sebuah file .exe yang menggunakan Visual Basic Virtual Machine dan dapat Anda distribusikan secara bebas.