Perbedaan VB 6 dan VB .Net

Visual Basic versi 6.0 adalah versi terakhir VB sebelum berubah menjadi .Net. Banyak yang bertanya tentang perbedaan antara keduanya. Berikut sekilas perbedaan dan persamaan VB 6.0 dan VB .Net.
  • VB6 baru sebagian mendukung OOP. VB .Net telah mendukung penuh OOP.
  • Hasil kompilasi source code pada VB6 adalah file .exe biner (native code). VB .Net berupa file .exe intermediate language (MSIL byte code).
  • Hasil kompilasi pada VB6 dapat langsung dieksekusi. VB .Net membutuhkan run time environment / framework (.Net framework)
  • VB6 bermasalah pada deployment-nya (DLL hell). VB .Net tidak
  • Program dari VB6 tidak dapat langsung berinteraksi dengan program dari bahasa lain. VB .Net dapat selama bahasa lain mendukung .Net
  • Perintah-perintah dasar pada VB6 dan VB .Net sebagian besar masih sama kecuali untuk perintah-perintah OOP-nya
  • Dari sisi IDE-nya, pengetikan kode pada VB.Net lebih cepat dari pada di VB6
  • Untuk akses ke database VB.Net menggunakan ADO.Net, VB6 menggunakan ADO. ADO.Net bukan pengembangan dari ADO. Jadi ADO.Net menggunakan teknologi yang berbeda dengan ADO
  • Selain itu pada VB.Net 2008, dapat menggunakan LINQ (Language Integrated Query) untuk mempermudah mengaksesan data
Perbedaan mendasar pada VB.NET dibandingkan VB 6 adalah .NET framework itu sendiri dan konsep OOP.

Teknologi .NET framework dengan arsitekturnya sangat berbeda dengan teknologi sebelumnya seperti pada VB 6. .NET framework memiliki compiler untuk masing-masing bahasa; Untuk VB.NET ada VB compiler, C# ada C# compiler, dan compiler bahasa lainnya. Masing-masing compiler ini akan melakukan kompilasi (compile) source code kita menjadi Intermediate Language (IL). Bahasa apapun yang kita pakai pada source code (entah itu VB.NET, atau C#, atau lainnya), akan di-compile menjadi IL.

Dengan teknologi ini, IL berperan sebagai sebuah bahasa netral yang nantinya akan dieksekusi oleh Common Language Runtime (CLR). CLR adalah sebuah Runtime yang berfungsi sebagai virtual machine seperti halnya Java Virtual Machine (JVM) pada teknologi JAVA. Jadi, logikanya, platform apapun bisa menjalankan sebuah aplikasi berbasiskan .NET dengan adanya CLR. Dan CLR melalui Just In Time (JIT) compiler nya, akan melakukan kompilasi terhadap IL menjadi native code OS.

Jika digambarkan secara sederhana, proses VB.NET source code menjadi native code sebuah OS seperti ini:

VB.NET source code --(VB compiler)--> IL --(CLR-JIT compiler)--> native code

Sementara pada VB 6 seperti ini:

VB 6 source code --(compiler)--> native code

Selain itu, masih banyak teknologi .NET lainnya yang tidak terdapat pada VB 6 seperti; Metadata, Code Access Security, Memory Management, dan lainnya. Satu lagi, karena .NET framework ini adalah sebuah framework yang bisa digunakan oleh berbagai bahasa, maka VB.NET pun bisa menggunakan semua fungsionalitas Framework Class Library dari .NET.

Dengan framework yang sekarang (versi 3.5), teknologi-teknologi baru seperti WPF, WCF, WF, LINQ, dan lainnya juga bisa diimplementasikan dengan menggunakan VB.NET.

Silahkan cari referensi nya di internet sangat banyak : )

Perbedaan yang kedua, yaitu OOP. VB 6 tidak di-desain untuk penggunaan OOP, berbeda dengan VB.NET. Oleh karena itu, mindset seorang developer VB 6 dengan procedural programming nya berbeda dengan developer VB.NET yang OOP minded. Walaupun bahasa yang digunakan pada VB dan VB.NET relatif sama, tapi konsep procedural programming dan OOP  di dalamnya sangat berbeda.

@Swike: XML bisa juga kok di VB 6 ;D Selain itu, XML kurang reliable untuk difungsikan sebagai database, lebih cocok dipakai untuk menyimpan informasi ke dalam bentuk custom markup language. Biasanya digunakan sebagai file konfigurasi atau untuk serialization. WPF menggunakan XML sebagai bahasa nya yaitu XAML yang bersifat declarative-UI.

Support Microsoft terhadap VB6 berakhir pada tahun 2008. Berarati tidak akan ada update/patch/SP lagi untuk kompatibilitas dengan sistem masa depan (kalo gak salah service pack terakhir VB6 adalah SP6 dan MDAC terakhir versi 2.8). Sedangkan VB.Net akan terus dikembangkan berdampingan dengan C# sebagai bahasa utama di .Net Framework.
Akan tetapi, kemungkinan besar VB6 masih akan bertahan beberapa tahun kedepan seperti Clipper / FoxPro yang masih digunakan untuk kalangan tertentu.

Salah satu keunggulan VB6 adalah aplikasi dengan VB6 bisa berjalan di PC-PC lama dengan kapasitas memori kecil. PC dengan O/S Windows98 dan memori 16 MB dapat digunakan untuk menjalankan aplikasi yg ditulis dengan VB6. Selain itu VB6 tidak membutuhkan framework seperti VB.Net yang berukuran ratusan MB. Biasanya untuk deployment hanya dibutuhkan "msvbvm60.dll", "MDAC" dan komponen third party bila digunakan. Hal ini tidak berlaku di WindowsXP dan Windows Vista yang secara default telah terinstall .Net Framework.
Aplikasi VB6 masih dapat dijalankan dengan baik di Windows2000 & WindowsXP walaupun di Windows Vista memiliki beberapa masalah kompatibilitas

Komentar

Postingan Populer