1. HOL Arsitektur.net

9
HANDS ON LAB (HOL) VISUAL BASIC.NET Inspecting IL / MSIL NOTE : Tools yang digunakan yaitu Visual Studio 2008 SP1 Dalam HOL ini kita akan melihat bagaimana bahasa .net itu di konversi atau di compile ke dalam Microsoft Intermediate Language (MSIL / IL). Semua bahasa .net akan di compile ke IL, sehingga tidak ada superioritas bahasa di dalam .net. IL ini merupakan bahasa yang sifatnya independent, artinya IL yang digenerate tidak tergantung dari spesifikasi CPU komputer yang digunakan. Ketika aplikasi tersebut berjalan dan terdapat code yang dieksekusi maka pada saat itu juga IL akan di konversi ke dalam binary machine code atau bahasa yang telah dimengerti oleh mesin komputer. Bahasa mesin inilah yang dependent terhadap spesifikasi komputer yang digunakan. Tools yang digunakan untuk melihat IL yaitu ildasm.exe (Intermediate Language Disassembly) yang dapat dijalankan lewat Visual Studio Command Prompt. Didalam IL terdapat informasi mengenai Assembly Manifest, assembly information aplikasi tersebut, dan IL code nya itu sendiri. Assembly manifest berisi list-list referensi terhadap library (.dll) yang digunakan oleh aplikasi tersebut. Informasi ini berupa nama assembly, version, public key token. Didalam IL itu juga berisi informasi mengenai versi dan nama dari aplikasi atau komponen tersebut. Kita dapat melihat bagaimana Common Type System bekerja untuk semua bahasa .net. Mari kita ikuti langkah-langkah berikut ini : 1. Buat sebuah project template baru untuk Windows Forms Application 2. Pilih bahasa Visual Basic dan target .net framework versi 3.5 3. Tambahkan control Button ke form

Transcript of 1. HOL Arsitektur.net

Page 1: 1. HOL Arsitektur.net

HANDS ON LAB (HOL) – VISUAL BASIC.NET

Inspecting IL / MSIL

NOTE : Tools yang digunakan yaitu Visual Studio 2008 SP1

Dalam HOL ini kita akan melihat bagaimana bahasa .net itu di konversi atau di

compile ke dalam Microsoft Intermediate Language (MSIL / IL). Semua bahasa

.net akan di compile ke IL, sehingga tidak ada superioritas bahasa di dalam .net.

IL ini merupakan bahasa yang sifatnya independent, artinya IL yang digenerate

tidak tergantung dari spesifikasi CPU komputer yang digunakan. Ketika aplikasi

tersebut berjalan dan terdapat code yang dieksekusi maka pada saat itu juga IL

akan di konversi ke dalam binary machine code atau bahasa yang telah

dimengerti oleh mesin komputer. Bahasa mesin inilah yang dependent terhadap

spesifikasi komputer yang digunakan.

Tools yang digunakan untuk melihat IL yaitu ildasm.exe (Intermediate Language

Disassembly) yang dapat dijalankan lewat Visual Studio Command Prompt.

Didalam IL terdapat informasi mengenai Assembly Manifest, assembly

information aplikasi tersebut, dan IL code nya itu sendiri.

Assembly manifest berisi list-list referensi terhadap library (.dll) yang digunakan

oleh aplikasi tersebut. Informasi ini berupa nama assembly, version, public key

token.

Didalam IL itu juga berisi informasi mengenai versi dan nama dari aplikasi atau

komponen tersebut. Kita dapat melihat bagaimana Common Type System bekerja

untuk semua bahasa .net.

Mari kita ikuti langkah-langkah berikut ini :

1. Buat sebuah project template baru untuk Windows Forms Application

2. Pilih bahasa Visual Basic dan target .net framework versi 3.5

3. Tambahkan control Button ke form

Page 2: 1. HOL Arsitektur.net

4. Double click button tersebut untuk membuat event handler dari event click

5. Code lengkap dapat dilihat dibawah ini :

6. Build project

7. Tambahkan project template baru Windows Forms Application kedalam

solution yang sama (File -> Add -> New Project)

8. Pilih bahasa C# dan target .net framework 3.5

9. Tambahkan control Button ke dalam form

10. Double klik button untuk membuat event handler dari event click button

tersebut.

11. Tambahkan kode berikut

Page 3: 1. HOL Arsitektur.net

12. Build project

13. Buka Visual Studio 2008 Command Prompt

14. Ketikkan ildasm. Sehingga nanti akan muncul window ILDASM.

15. Klik menu File -> Open

16. Cari file .exe untuk aplikasi vb.net tadi diatas (didalam folder bin/debug

atau folder bin/release)

17. Lakukan kembali langkah no-14 dan 15

18. Cari file .exe untuk aplikasi c# tadi diatas (didalam folder bin/debug atau

folder bin/release)

19. Bandingkan hasilnya seperti pada gambar di bawah ini :

Page 4: 1. HOL Arsitektur.net

MSIL code untuk vb.net

Page 5: 1. HOL Arsitektur.net

MSIL code untuk c#

Dari gambar diatas dapat dilihat bahwa MessageBox dan deklarasi variabel

integer di konversikan ke dalam IL code yang sama untuk vb.net dan c#.

Page 6: 1. HOL Arsitektur.net

Multi Language Support

Dalam HOL ini akan dijelaskan bagaimana caranya menggunakan c# dan vb.net

dalam kolaborasi sebuah aplikasi.

Sangat mudah sekali melakukan kolaborasi bahasa yang berbeda di dalam .net

project. Hal ini memungkinkan karena adanya penggunaan .net framework yang

sama dan juga adanya konversi bahasa .net ke dalam IL.

Kita dapat membuat layer-layer aplikasi dengan bahasa yang berbeda. Misalkan

untuk Business Layer dibuat dengan menggunakan c#, sedangkan User Interface

layer dibuat dengan menggunakan vb.net.

Skenario HOL kali ini akan membuat sebuah Class Library project dimana

outputnya berupa .dll yang dibuat dengan menggunakan bahasa c#. Library ini

akan di pakai oleh aplikasi yang dibuat dengan menggunakan vb.net.

Mari kita ikuti langkah-langkah berikut ini :

1. Buat project template baru untuk Class Library.

2. Pilih bahasa c# dan target .net framework 3.5

3. Beri nama project tersebut CSMathLib

4. Rename file Class1.cs menjadi CSMathLib.sc

5. Tambahkan kode berikut ini (kode ini dibuat untuk memberikan output

angka bilangan genap dengan batas nilai maksimum yang ditentukan

Page 7: 1. HOL Arsitektur.net

6. Build project.

7. Tambahkan Windows Forms Application project template ke dalam solution

yang sama (File -> Add -> New Project)

8. Pilih bahasa vb.net dan target .net framework 3.5

9. Tambahkan referensi terhadap dll yang telah dibuat dengan menggunakan

c# diatas dengan cara klik kanan project -> Add Reference. Cari lokasi file dll

yang diberi nama CSMathLib.dll

10. Tambahkan kontrol Button dan ListBox ke dalam form

11. Double klik button dan tambahkan kode berikut ini :

Page 8: 1. HOL Arsitektur.net

12. Build project dan jalankan (F5)

13. Berikut hasilnya :

Page 9: 1. HOL Arsitektur.net