utama untuk migrasi adalah adanya fitur-fitur baru di VB.NET yang akan
membantu developer VB untuk membuat aplikasi yang lebih scalable,
maintainable, ...
Mengapa Perlu Untuk Migrasi?
Anda mungkin bertanya, Apakah perlu untuk migrasi ke VB.NET? Apakah tidak cukup dengan hanya memodofikasi aplikasi VB6 yang ada sekarang?. Alasan utama untuk migrasi adalah adanya fitur-fitur baru di VB.NET yang akan membantu developer VB untuk membuat aplikasi yang lebih scalable, maintainable, dan powerfull. Beberapa aplikasi baru yang ada di VB.NET adalah?
Fitur Baru VB.NET mempunyai beberapa fitu baru yang membuat bahasa VB menjadi lebih powerfull sehingga dapat mematahkan mitos bahwa VB hanya bahasa mainan (toy language) bila dibandingkan dengan bahasa lain seperti C++ dan Java. Fitur-fitur tersebut antara lain: 1. Dukungan
Object
Oriented
Programming
:
VB.NET
adalah
bahasa
pemrograman yang full Object Oriented. Jadi VB.NET mendukung fitur-fitur OOP seperti Inheritance, Interface, Method Overloading, Polymorphism yang akan dibahas lebih lanjut pada bab-bab selanjutnya. 2. Structure Exception Handling : untuk menggantikan perintah OnError Goto pada VB6, VB.NET meyediakan Try..Catch..Finally error handling. Error handling pada VB.NET ini lebih mudah digunakan karena anda hanya cukup menaruh kode yang akan dicek dikalang Try, dan menyiapkan exception handling nya di kalang
catch. Topik tentang error handling juga akan dibahas pada bab selanjutnya dari buku ini. 3. .NET Framework : VB.NET mempunyai koleksi class library yang sangat banyak dan terorganisasi dengan baik sehingga mudah digunakan dan dicari. Dengan menggunakan class library ini programmer tidak perlu membuat kode sendiri dari awal. 4. GDI+: GDI+ adalah library Graphic yang digunakan untuk mengembangkan aplikasi windows form. 5. Web Services dan Web Form : dengan VB.NET anda dapat membuat aplikasi berbasis web dengan menggunakan Web Form (ASP.NET). anda juga dapat membuat aplikasi web service untuk membuat three tier application. 6. Cross-Languege Interoperability : karena setiap program yang berjalan di .NET dicompile menjadi assembly maka anda dapat membuat aplikasi dengan bahasa pemrograman yang berbeda yang berjalan diatas platform .NET seperti C# dan C++. Jadi anda juga dapat menggunakan komponen yang dibuat menggunakan C# atau C++ untuk digunakan di VB. 7. Multihreading : secara default aplikasi VB.NET adalah sible thread tapi anda dapat mengimplementasikan multi thread. Fitur ini sangat berguna jika anda mempunyai aplikasi yang proses komputasinya memakan waktu lama. 8. Type Safe Collection : fitur ini mulai ada di .NET 2.0 (VB8 atau VB 2005). Dengan fitur ini anda dapat membuat object collection yang type safe. Penjelasan lebih jauh mengenai collection akan dibahas pada bab selanjutnya. 9. LINQ : Fitur ini mulai ada pada .NET 3.5 (VB9 atau VB 2008). LINQ (Language Integrated Query) adalah fitur baru untuk mengquery data yang ditambahkan kedalam bahasa VB dan C# sehingga kedua bahasa tersebut dapat melakukan query ke object, database,
xml, dan sumber data lainnya. Lebih detail mengenai LINQ akan dibahas di bab selanjutnya. 10. XML Literal : Fitur ini mulai ada pada VB9, fitur ini adalah fitur special dari VB9 karena bahasa lain seperti C# tidak mendukung fitur ini. XML Literal akan sangat membantu anda dalam bekerja dengan XML, pada VB9 XML menjadi „first class citizen‟ yang berarti anda dapat menuliskan XML secara literal seperti anda menuliskan string. Fitur ini juga akan dibahas pada buku ini di bab selanjutnya.
Beberapa Perbedaan Mendasar Dengan VB6 1. Pada VB.NET index array dimulai dari 0 2. Internet Project dengan Web Classes dan DHTML sudah tidak disupport. Pada VB.NET anda dapat menggunakan Web Form (ASP.NET). 3. VB.NET
tidak
menyediakan
default
properties,
jadi
anda
tidak
dapat
menuliskan Text1.Text hanya dengan Text1 seperti di VB6. 4.
Teknik-teknik lama di VB6 untuk print document, menggambar graphic, membaca textfile sudah tidak dapat digunakan di VB.NET, anda harus siap untuk mempelajari teknik yang baru.
5.
VB.NET tidak mensupport deterministic finalization, jadi ketika object sudah tidak digunakan maka ia akan tetap di memory untuk sementara sebelum dibersihkan oleh Garbage Collector.
6.
Cara lama mengakses database di VB6 menggunakan DAO dan RDO tidak disupport secara penuh (tidak dapat digunakan sebagai data binding).
7.
Biarpun anda menggunakan upgrade wizard untuk migrasi dari VB6 namun pada beberapa bagian anda harus menulis ulang, terutama untuk aplikasiaplikasi yang kompleks.
.NET Framework sebenarnya terdiri dari dua komponen utama yaitu CLR (Common Language Runtime) dan FCL (Framework Class Library).
Common Language Runtime (CLR) adalah pondasi utama dari Framework .NET. CLR merupakan komponen yang bertanggung jawab terhadap berbagai macam hal,
seperti bertanggung jawab untuk melakukan managemen memory, melakukan eksekusi kode, melakukan verifikasi terhadap keamanan kode, menentukan hak akses dari kode, melakukan kompilasi kode, dan berbagai layanan system lainnya. Dengan adanya fungsi CLR ini, maka aplikasi berbasis .NET biasa juga disebut dengan managed code, sedangkan aplikasi di luar itu biasa disebut dengan unmanaged code. Dengan adanya CLR maka tugas pengembang program menjadi lebih ringan karena banyak tugas yang dahulu harus dikerjakan oleh pengembang sudah digantikan secara otomatis oleh komponen CLR ini. CLR akan melakukan kompilasi kode-kode aplikasi kita menjadi bahasa assembly MSIL (Microsoft Intermediate Language). Proses kompilasi ini sendiri dilakukan oleh komponen yang bernama Just In Time (JIT).
.NET Framework Class Library atau sering juga disebut Base Case Library (BCL) adalah koleksi dari reusable types yang sangat banyak dan terintegrasi secara melekat
dengan
CLR.
Kumpulan
Class
Library
ini
sangat
berguna
untuk
pengembangan aplikasi karena developer tidak perlu membuat semuanya dari awal karena sudah disediakan oleh .NET, misal class untuk membuat aplikasi berbasis windows, class untuk membuat objek-objek koleksi, class untuk koneksi dengan database (ADO.NET), class untuk mengembangkan aplikasi berbasis web, class WPF (Windows Presentation Foundation), dan masih banyak lagi.
1.
VB.NET tidak mensupport pointer jadi anda tidak dapat menggunakannya lagi (pada VB6 anda dapat menggunakan fungsi StrPtr() dan ObjPtr() untuk mengakses pointer).
2.
Perintah Goto dan GoSub sudah tidak disupport di VB.NET.
3.
Cara drawing pada Form juga berubah, jika anda menggunakan custom drawing di VB6 anda harus menulis ulang kembali kodenya.
.NET Framework Untuk bekerja di lingkungan .NET Framework maka anda harus mengetahui arsitektur dan komponen apa saja yang ada didalamnya. .NET Framewok mendukung beberapa bahasa pemrograman, adapun bahasa pemrograman yang disupport secara resmi oleh Microsoft adalah C# (CSharp), VB, dan C++, tetapi sekarang banyak bahasa lain yang juga dikembangkan untuk mensupport platform .NET diantaranya Delphi, Phyton (IronPhyton), dll. Untuk mengembangkan aplikasi berbasis .NET sebenarnya dapat digunakan lebih dari satu bahasa pemrograman (Language Interoperability) misal sebagian program menggunakan C# dan sebagian lagi menggunakan VB, tetapi disarankan untuk memilih hanya satu bahasa pemrograman saja agar aplikasi yang dibuat lebih mudah untuk di-maintain. Bahasa paling banyak digunakan di platform .NET saat ini adalah C# dan VB.
Bersambung….