pengantar vb.net

Upload: ali-dcoolz

Post on 20-Jul-2015

75 views

Category:

Documents


0 download

TRANSCRIPT

PendahuluanDot NET Framework

Di luar beragamnya definisi .NET Framework, .NET Framework merupakan Man Behind The Gun dari VB.NET sehingga kita perlu megetahui jeroan dari teknologi yang ada di dalamnya. Microsoft .NET adalah software yang menghubungkan informasi, orang, system dan device! Perangkat yang menjangkau client, server dan tool pengembang. Microsoft .NET disusun oleh: Dot NET Framework, digunakan untuk membangun dan menjalankan semua macam softwere termasuk aplikasi berbasis Web, aplikasi smart client, dan layanan web XML (Extensible Markup Language). Menyediakan komponen untuk berbagai data melalui Network menggunakan komponen platform protocol independent seperti XML, SOAP, dan HTTP. Tool tool pengembang seperti Microsoft VisualStudio .NET yang penyediaan IDE (Integrated

Development Enveronment! lingkungan pengembangan terintegrasi) untuk memaksimalkan produktivitas pengembangan menggunakan .NET Framework. Serangkaian server termasuk Microsoft Windows Servwr 2003, Microsoft SQL Server dan Micosoft BizTalk Server yang terintegrasi, untuk menjalankan, mengoprasikan dan mengelola services Web dan aplikasi berbasis Web. Softwere client seperti Windows XP, windows CE dan Windows Office XP yang membantu pengembangan untuk menyebarkan dan mengelola aplikasinya.

.NET Platform merupakan satu set kumpulan teknologi yang memungkinkan teknologi Internet ditransformasikan ke dalam platform distributed computing dengan skalabilitas dan kompatibilitas tinggi. Secara teknikal, .NET Platform menyediakan konsep pemrograman dengan library dan modul-modul baru yang konsisten, terlepas dari jenis bahasa pemrograman yang digunakan. .NET Platform menyediakan hal-hal berikut bagi para developer : 1) Language independent, dengan programming model yang konsisten di semua tier aplikasi yang dibangun. 2) Interoperability dan kompatibilitas antar aplikasi. 3) Kemudahan migrasi dari teknologi yang ada saat ini.

1

4) Dukungan penuh terhadap berbagai teknologi standar yang digunakan dalam platform internet, antara lain HTTP, XML, SOAP dan HTML. Teknologi inti .NET secara umum terdiri dari 4 area pokok : 1) .NET Framework .NET Framework adalah teknologi inti yang menyediakan berbagai library untuk digunakan oleh aplikasi di atasnya. Komponen inti .NET Framework adalah Common Language Runtime (CLR) yang menyediakan run time environment untuk aplikasi yang dibangun menggunakan Visual Studio .NET, terlepas dari jenis bahasa pemrogramannya.

Dengan adanya CLR tersebut, programmer dapat menikmati consistent object model dalam mengakses berbagai komponen library. Dengan demikian penggunaan bahasa pemrograman dalam dunia .NET adalah lebih ke masalah selera atau taste, dan bukan pada kelebihan maupun kekurangan masing-masing bahasa. Mengapa ? Karena semua bahasa pemrograman yang mensupport .NET mengakses library yang sama di dalam .NET Framework, dengan object model yang konsisten, dengan run time file yang sama. Bahasa adalah sekedar skin atau theme, bukan senjata sakti. Apakah .NET Framework? Dot NET Framework adalah linkungan untuk membangun, deploying menyebarkan, dan menjalankan services Web dan aplikasi lainnya. Dot NET Framework disusun oleh dua komponen utama, yaitu Common Language Runtime (runtime bahasa umum) dan .NET Framework Class Library (pustaka class .NET Framework. Definisi di atas saya ambil dari penjelasan Microsoft dalam FAQ(Frequently Asked Questions) mengenai .NET Framework. Secara sederhana .NET Framework adlah platform tunggal dimana semua orang dapat platform tunggal dimana semua orang dapat mengembangkan aplikasi menggunakan suatu system yang mirip dengan JVM(Java Virtual Machine). Hanya berbeda dengan java, tidak ada penghalang dengan bahasa

2

.NET sehingga aplikasi dapat dikembangkan menggunakan bahasa: VB, C++, C#, J# dan 20 bahasa-bahasa pemrograman lainnya yang kompatibel dengan .NET Framework. Tujuan dari .NET Framework adalah: Menyediakan lingkungan pemrograman berorientasi objek, apakah kode objek disimpan dan dijalankan secara lokal, dijalankan secara lokal tetapi disebarkan melalui internet atau dijalankan secara remote (dijalankan dari suatu tempat). Menyediakan lingkungan untuk menjalankan suatu kode yang meminimalkan konflik saat software deployment disebarkan dan versioning /tentang versi. Menyediakan lingkungan untuk menjalakan suatu kode yang menjamin keamanan saat kode dijalankan, termasuk kode yang dibuat oleh pihak yang tidak diketahui atau pihak ketiga yang setengah dipercaya. Menyediakan lingkungan untuk menjalankan suatu kode yang dapat mengeliminasi masalah performa dari lingkungan scripted dan interpreted. Membuat pengembang memiliki pengalaman yang konsisten dalam berbagai tipe aplikasi berbasis Windows dan aplikasi berbasis Web. Definisi lainnya, .NET Framework bisa juga diartikan sebagai serangkaian teknologi yang : Mempersatukan aplikasi Web yang sekarang masi terisolasi. Membuat informasi tersedia di setiap saat dan di setiap tempat. Menyederhanakan pengembangan dan penyebaran aplikasi.

Common Language Runtime (CLR) Common language runtime/CLR/runtime bahasa umum (runtime) merupakan dasar dari .NET Framework. Runtime adalah engine yang menjalankan aplikasi >NET Framework. Runtime menyediakan sejumlah service/layanan, seperti berikut ini: Mengelola kode (loading dan menjalankan) Isolasi memori aplikasi Verifikasi untuk kemanan type Konversi dari IL (Intermediate Language) ke kode native/asli. Akses metadata (informasi yang dipercaya) Mengelola memori pada objek managed/terkelola Mengelola keamanan kode akses Menangani eksepsi (kejadian yang tidak diharapkan yang muncul saat kode dieksekusi) termasuk eksepsi lintas bahasa Inperoperation di antara managed code, objek COM(Component Object Model) Otomatisasi layout objek

3

Mendukung layanan pengembang (profiling, debugging dan sebagainya)

Konsep pengelolaan kode merupakan prinsip dari runtime. Kode yang menjadi target dari runtime disebut managed code/kode terkelola, sedangkan kode yang tidak menjadi target runtime disebut unmanaged code/kode yang tidak terkelola. VB.NET akan menjalankan managed code apabila dalam system computer tersebut terdapat CLR atau dengan kata lain pemakai tidak dapat menjalankan aplikasi VB.NET tanpa menginstall CLR terlebih dahulu. CLR mengetahui apa yang akan dilakukan pada data khusus (disebut metadata) yang berada dalam aplikasi. Metadata berisi peta dimana menemukan class, kapan memanggil class dan kapan mengatur batas isi runtime, menghasilkan native code/kode asli, mengatur keamanan, menentukan class manayang menggunakan metode dan memanggil class jika dibutuhkan. CLR juga menentukan kapan suatu objek digunakan dan dilepas. Semua itu disebut managed code. 2) .NET Building Block Services Building block merupakan sekumpulan services yang bersifat programmable, yang dapat diakses secara offline maupun online. Service tersebut merupakan modul-modul yang terdapat di suatu komputer, server dalam jaringan, maupun di suatu server di internet. Service ini merupakan suatu idealisasi di masa depan, dimana sebuah aplikasi bersifat terdistribusi dengan modul-modul yang tersimpan di berbagai tempat, tetapi dapat diintegrasikan membentuk suatu aplikasi. Konsep ini merupakan arah pengembangan subscription based software, yang saat ini mulai banyak berkembang dan dikenal sebagai Application Service Provider. Service tersebut dapat diakses oleh berbagai platform, asalkan platform tersebut mensupport protokol SOAP, yang merupakan protokol standar dalam mengakses web service. Peranan XML sebagai media definisi data menjadi sangat penting dalam hal ini, dan XML juga menjadi pusat perubahan besar dalam platform .NET. Dalam pelajaran selanjutnya, anda akan melihat bahwa semua data dalam .NET selalu direpresentasikan dalam bentuk XML. 3) Visual Studio .NET Visual Studio .NET menyediakan tools bagi para developer untuk membangun aplikasi yang berjalan di .Net Framework. VS.Net membawa perubahan besar dalam gaya pemrograman, karena setiap programmer dituntut untuk memahami .NET object model dan Object Oriented Programming dengan baik, jika tidak ingin menghasilkan aplikasi dengan performa rendah. VS.Net juga semakin mempertipis jarak antara Windows Programmer dengan Web Programmer. Dunia scripting yang akrab bagi programmer web akan sulit ditemukan dalam .NET, karena pemrograman web sudah bersifat full object oriented, dengan fasilitas event driven programming sebagaimana layaknya windows programming. Pemrograman web menjadi lebih mudah dan menyenangkan bagi para programmer windows, sedangkan anda para veteran scripting language sudah saatnya untuk beralih ke ASP.NET, yang dapat diprogram menggunakan VB, C#, C++ maupun Phyton dan COBOL sekalipun.

4

Microsoft masih menyediakan Jscript.NET bagi anda para pecandu JavaScript dan JScript, sedangkan versi .Net dari VBScript belum diketahui apakah akan disediakan atau tidak. Para veteran VB.Script disarankan untuk mempelajari VB, sehingga dapat menggunakan VB.Net untuk membangun aplikasi web. Bahasa pemrograman yang terdapat di VS.NET adalah VB.NET, C#, C++ .NET, J#, dan Jscript .NET. Dalam masa mendatang akan terus ditambah berbagai bahasa pemrograman lain. 4) .Net Enterprise Server Bagian ini merupakan sekumpulan server based technology yang digunakan untuk mendukung teknologi .NET, yang mencakup sistem operasi, database, messaging, maupun manajemen e-commerce. Teknologi yang disediakan antara lain adalah Windows 2000 Server, SQL Server, Exchange, ISA Server dan BiZTalk Server. Ada beberapa alasan yang menguntungkan bila anda mempelajari .NET : Multi Language Arsitektur .NET bersifat terbuka, sehingga memungkinkan berbagai bahasa pemrograman mengakses CLR dengan mulus. Banyak kalangan menyebut .NET sebagai open source versi Microsoft. Saat ini .NET dapat diprogram menggunakan Visual Basic.NET, C++.NET, Visual C#, Jscript, dan J#. Berbagai third Party yang dapat digunakan adalah COBOL, Eiffel, Smalltalk, Perl, Phyton, ML, Pascal, dan Delphi. Para veteran Pascal mungkin tidak pernah bermimpi membuat aplikasi web dengan bahasa kuno tersebut, tetapi kehadiran .Net Framework merealisasikan hal tersebut. Bagan berikut menjelaskan kedudukan bahasa pemrograman terhadap .NET Framework dengan CLR sebagai intinya.

Sekali lagi, semua bahasa tersebut mengakses object model yang sama dalam .NET, sehingga bagi para petualang tersedia kemungkinan untuk berpindah dari satu bahasa ke bahasa lain dalam satu proyek aplikasi yang sama. .Net menyediakan integrasi bahasa pemrograman dalam satu peroyek aplikasi. Hal ini membuka kemungkinan kerjasama tim yang lebih baik, walaupun dalam tim tersebut masing-masing memiliki keahlian bahasa pemrograman yang berbeda. No DLL Hell

5

Anda tahu DLL ? Tentu saja, kalo tidak tentu anda bukan seorang programmer. DLL merupakan blok atau modul-modul obyek dari sebuah aplikasi. Peranannya sangat penting, sekaligus memusingkan. Sering terjadi dalam dunia windows, kompatibilitas dan registrasi DLL di masing-masing Workstation menjadi isu besar dalam deployment aplikasi. Strong Typing dan Type Safety Bila anda pernah menggunakan VB6, pendefinisian tipe data bukanlah sesuatu yang mutlak wajib dilakukan karena VB akan mendefinisikan primitive data type, suatu type default untuk masing-masing angka atau karakter yang terdapat dalam variabel. Hal ini sebenarnya kurang baik karena dapat memboroskan memory dan merupakan sumber bug. .NET menyediakan strong typing, dimana setiap variabel wajib didefiniskan scope dan tipe datanya. Demikian pula dengan fasilitas type safety yang sangat bermanfaat untuk membantu dalam coding pemrograman, terutama fasilitas intellisense yang membimbing pemrogram dalam menentukan property, method, maupun function yang akan dipakai. Cross Platform Possibility .Net menyimpan dan mengirim data dalam bentuk XML yang merupakan format data universal di internet. Dengan demikian integrasi data antar platform lebih mudah dilakukan, selama platform tersebut mendukung XML. Representasi konsep ini adalah dataset, suatu cache data yang berbentuk XML dan dapat diakses dengan mudah. Sebuah data dapat diparsing antar tier aplikasi, baik dari database, middle tier, maupun aplikasi klien dalam format XML. Manipulasi format data dalam bentuk XML, .txt, maupun .rtf merupakan sesuatu yang menantang para programmer untuk membuat aplikasi lintas platform. Code Once, More Application Interface pemrograman bersifat konsisten, dengan object model yang sama pada setiap bahasa yang digunakan. Suatu object baik berbentuk class, library, maupun web services dapat diakses dengan mudah oleh berbagai aplikasi windows maupun web. Hal ini lebih menghemat waktu para developer, dimana sebuah object dapat dibuat sekaligus untuk aplikasi Web, Windows, dan bahkan console application berbasis DOS.

6

CONSOLE APLICATIONConsole Application : merupakan aplikasi dengan tampilan text mode atau DOS. Aplikasi jenis ini biasa digunakan sebagai monitoring service atau remote application dimana sumber daya komputer dan bandwith sangat terbatas. Aplikasi tanpa GUI, dijalankan dari command prompt/command line.

7

Ketikkan kode program berikut:

Lalu jalankan dengan menekan tombol Maka hasilnya sbb:

atau F5

Ketikkan kode program berikut:

8

Sehingga tampilannya sbb

9

WHILE

Ketikkan kode program berikut:

10

11

Sehingga tampilannya sbb:

FOR

Ketikkan kode program berikut:

12

Sehingga tampilannya sbb:

13

DO LOOP

Ketikkan kode program berikut:

14

Sehingga tampilannya sbb:

15

STRUCTURE

16

17

TRY-CATCH

18

19

GUI APLICATIONGUI Application : merupakan aplikasi dengan tampilan graphical. Aplikasi jenis ini biasa digunakan sebagai monitoring service atau remote application dimana sumber daya komputer dan bandwith sangat terbatas. Aplikasi tanpa GUI, dijalankan dari command prompt/command line. Tampilan memulai aplikasi GUI sbb:

20

Design form sbb:

21

Double klik pada commandbutton tampil. Ketikkan kode sbb:

Tampilannya menjadi:

22

Design form sbb:

Lalu ketikkan kode program berikut:

23

TEXT LOOPING

Design form sbb:

Klik ganda pada ruang form yg kosong:

24

Lalu pada Windows Explorer, klik kanan Add Add Class Class Pada Class yang baru terbentuk ketikkan kode sbb:

SIMPLE CALCULATOR

Design form sbb:

25

Lalu pada class, ketikkan kode berikut:

26

DATA DAN VARIABELPenggunaan Variabel Untuk dapat memakai sebuah variabel maka Kita harus mendeklarasikannya terlebih dahulu. Dalam bahasa VB6 Kita dapat saja menggunakan sebuah variabel tanpa membuat deklarasi meskipun hal tersebut tidak direkomendasikan dan sangat tidak efisien bagi sebuah aplikasi. Aturan Penamaan Variabel Pemberian nama variable memiliki batasan-batasan sbb: Harus dimulai dengan karakter alfabetis Hanya dapat mengandung karakter alfabetis,angka,dan underscore(_) Tidak boleh menggunakan spasi Tidak melebihi 255 karakter Harus unik dalam sebuah ruang lingkup yang sama Tidak case sensitive, artinya huruf besar (capital) dengan huruf kecil sama saja.

Deklarasi Variabel Tujuan pendeklarasian variabel adalah agar komputer mengetahui dengan pasti type data yang akan digunakan dalam variabel tersebut serta scopenya. Dengan demikian komputer dapat langsung mengeksekusi sebuah variabel tanpa memeriksa lagi type datanya. Sebuah variabel harus memiliki nama, type data, scope, dan value. Berikut adalah contoh deklarasi variabel : Dim sNama As String Dim dGajiPokok As Decimal Dim dTunjangan As Decimal Dim dGajiTotal As Decimal Dim dPajak As Decimal sNama = "Anto" dGajiPokok = 600000 dTunjangan = 150000 Dideklarasikan 5 variabel masing-masing dengan type string (1 variabel) dan decimal (4 variabel). Selanjutnya pada tiap variabel tersebut masing-masing diisikan nilainya. Pengisian nilai variabel

27

tersebut harus sesuai dengan type data yang telah ditetapkan. Misalnya saja Kita tidak dapat mengisi variabel dGajiPokok dengan Anto, karena variabel tersebut telah didefinisikan sebagai decimal yang harus berisi angka dan bukan string. Kita juga dapat mendeklarasikan variabel dan langsung memberikan nilainya pada saat yang sama dalam satu baris kode. Teknik ini merupakan feature baru VB .NET. Dim dGajiPokok As Decimal = 600000 Selain itu Kita juga dapat mendeklarasikan beberapa variabel sekaligus dalam satu baris dan mendefinisikan type datanya secara bersamaan. Dim sUmur, sTinggi, sGaji As Single Ketiga variabe tersebut memiliki type data sama yaitu Single. Cara ini memudahkan pendeklarasian variabel daripada harus mengulang deklarasi dalam tiga baris. Melakukan Perhitungan Selanjutnya Kita dapat melakukan perhitungan tertentu dengan menggunakan variabel tersebut sebagai komponen formula sebagai berikut : dGajiTotal = dGajiPokok + dTunjangan dPajak = 0.1 * dGajiTotal Segala Sesuatu adalah OBYEK ! Salah satu mantra baru dalam .NET programming adalah cara kita memKitang terhadap obyek. Segala sesuatu adalah obyek, begitulah pedoman yang harus Kita pegang. Dalam teknik VB6 Kita mengenal konsep Object Oriented Programming (OOP) melalui Class dan konsep COM. Namun dalam .NET segala sesuatu merupakan obyek, termasuk variabel juga merupakan obyek. Karenanya suatu varabel juga memiliki berbagai sifat yang diwujudkan dalam property, event, dan function. Sifat-sifat tersebut dapat diwariskan ke obyek lain, atau suatu variabel dapat mewarisi sifat dari obyek di atasnya. Sebagai contoh Kita dapat melakukan perhitungan besarnya dGajiTotal dan dPajak di atas dengan memanfaatkan fasilitas OOP yang terdapat dalam variabel tersebut. Gunakan keyword untuk melakukan perhitungan sebagai berikut:

28

dGajiTotal = dGajiTotal.Add(dGajiPokok, dTunjangan) dPajak = dGajiTotal.Multiply(0.1, dGajiTotal) Kita menggunakan function Add dan Multiply sebagai pengganti perhitungan sebelumnya. Argumen yang digunakan adalah dGajiPokok, dTunjangan dan dGajiTotal. Menampilkan Hasil Perhitungan Hasil perhitungan tersebut ditampilkan ke dalam dua buah label sebagai berikut : Label1.Text = "Gaji Total = " & dGajiTotal.ToString Label2.Text = "Pajak Kita = " & dPajak.ToString Keyword ToString yang mengikuti setiap variabel bertujuan untuk mengkonversikan hasil perhitungan yang semula bertype decimal menjadi string. Kita akan melihat bahwa perhitungan yang Kita lakukan dengan cara pertama akan sama hasilnya dengan menggunakan cara kedua yang memanfaatkan built in function dalam sebuah variabel.

Aksesibilitas variabel: Aksesibilitas variable adalah suatu keadaan dimana variable tersebut dapat diakses. Beberapa kata kunci yang digunakan untuk mendeklarasikan variable (ataupun elemen-elemen lain seperti kelas, fungsi, atau prosedur) berdasarkan aksesibilitas adalah sebagai berikut: 1. Public Variabel yang dideklarasikan dengan kata kunci Public memiliki ruang lingkup global yang juga berarti dapat diakses dibagian manapun dalam suatu project, Bahkan project lain yang memiliki referensi terhadap project trersebut. 2. Protected

29

Kata kunci Protected mendeklarasikan elemen yang hanya dapat diakses dari sebuah kelas atau kelas turunannya. Kata kunci ini hanya digunakan pada level kelas dan hanya untuk mendeklarasikan anggota dari sebuah kelas. 3. Friend Kata kunci Friend mirip dengan Public, hanya saja ruang lingkupnya hanya dalam sebuah project. Project yang lain tidak dapat mengaksesnya. 4. Protected Friend Kata kunci Protected Friend merupakan gabungan dari Protected dan Friend, yang berarti mendeklarasikan sebuah elemen untuk sebuah kelas atau turunannya dan hanya dapat diakses dari dalam sebuah project saja. 5. Private Kata kunci Private digunakan untuk mendeklarasikan elemen yang hanya dapat diakses dari dalam modul, kelas, atau struktur dimana elemen tersebut dideklarasikan. KAta kunci ini tidak dapat digunakan dari dalam sebuah prosedur. Ruang Lingkup dan Type Variabel Sebuah variabel memiliki ruang lingkup (scope) tertentu, tergantung dengan cara bagaimana variabel tersebut dideklarasikan. Terdapat 3 macam scope suatu varibel : 1. Procedure level / local scope 2. Module level 3. Variabel Public Masing-masing scope tersebut dapat dijelaskan sebagai berikut : Procedure level / local scope Apabila suatu variabel dideklarasikan dalam suatu prosedur tertentu, maka variabel tersebut hanya dapat diakses dan berlaku untuk prosedur tersebut saja. Perhatikan contoh kode berikut : Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim sPesan As String sPesan = "tes Variabel local" MessageBox.Show(sPesan, "Variabel local", MessageBoxButtons.OK, _ messageBoxIcon.Information) End Sub Variabel sPesan dideklarasikan di dalam prosedur Button3_Click sehingga hanya berlaku di dalam prosedur tersebut saja. sPesan tidak dapat diakses dari luar Button3_Click. Apabila Kita menggunakan variabel yang hanya dipakai dalam suatu prosedur tertentu maka sebaiknya Kita

30

menggunakan jenis variabel ini. Pengertian prosedur di sini menyangkut function, event, dan properti, sehingga tidak terbatas pada event saja sebagaimana dicontohkan di atas. Karena variabel ini scope nya lokal untuk prosedur tertentu saja maka nama variabel tersebut hanya berlaku di dalam prosedur dimana variabel tersebut dideklarasikan. Misalkan Kita memiliki function bernama A dan memiliki variabel bernama sNama. Kemudian Kita memiliki sebuah event B dan memiliki variabel bernama sama yaitu sNama. Kedua variabel tersebut tidak akan saling berhubungan dan tetap terpisah nilainya karena dideklarasikan secara lokal di dalam prosedur masing-masing. Module Level Kita dapat membuat suatu variabel yang dapat diakes dari prosedur manapun dalam suatu file. Misalkan Kita ingin mendeklarasikan suatu string koneksi yang akan dipakai terus menerus di dalam suatu module. Maka Kita harus mendeklarasikan variabel tersebut di bagian deklarasi module sebagaimana contoh berikut :

Terlihat ada 6 variabel yang dideklarasikan di bagian Declaration sebuah form bernama Form1. Selanjutnya variabel yang dideklarasikan di bagian ini akan dipakai untuk melakukan berbagai perhitungan di tiap prosedur. Kita dapat membuka source code yang disertakan untuk meneliti lebih jauh bagaimana variabel tersebut dipakai. Kita harus berhati-hati menggunakan variabel jenis ini, karena nilai suatu variabel akan terus berubah mengikuti perlakuan di setiap prosedur yang mengaksesnya. Sebaiknya Kita hanya menggunakannya apabila memang benarbenar diperlukan. Untuk mempermudah menelusuri error dan maintenance aplikasi Kita dapat menggunakan variabel dengan scope local.

31

Variabel jenis ini hanya berlaku untuk module dimana variabel tersebut dideklarasikan. Variabel ini tidak dapat diakses dari module lain meskipun berada dalam sebuah Project aplikasi yang sama. Apabila kita membutuhkan variabel yang dapat diakses dari module lain maka dapat digunakan variabel Public/Global Variabel Public/Global Cara pendeklarasian variabel jenis ini hampir sama dengan jenis module level dengan menambahkan kata Public sebagai pengganti keyword Dim. Variabel ini dapat diakses dari module lain, dan bahkan dapat diakses oleh Project lain selama Project tersebut membuat reference ke Project dimana variabel tersebut dideklarasikan. Misalkan Kita memiliki Class yang digunakan untuk membuka dan menutup koneksi database. Maka Kita dapat mendefinisikan variabel untuk koneksi sebagai Public sehingga form, Class, maupun Project lain dapat mengakses variabel tersebut dan melakukan koneksi ke database dengan memanfaatkan Class tersebut. Pada contoh deklarasi di atas variabel cn dirubah deklarasinya menjadi code berikut : Public cn As SqlClient.SqlConnection Kita akan banyak menggunakan variabel jenis ini pada saat mempelajari teknik reference dalam mengakses berbagai komponen yang terdapat di VB.NET maupun yang kita buat sendiri. Type Data Pada Variabel Setiap variabel harus dideklarasikan type datanya sehingga VB mengalokasikan sumber daya yang lebih efisien untuk variabel tersebut. Kita harus memahami dengan baik tiap jenis type data dan kapan type data tertentu digunakan. Misalnya Kita menggunakan type data String untuk menyimpan nama seseorang, dan menggunakan Byte untuk menyimpan umurnya. Kita harus memilih type data dengan ukuran dan akurasi paling efisien dan cocok sesuai tujuan Kita. Contoh lain bila Kita ingin melakukan kalkulasi dengan presisi tinggi, maka dapat digunakan type data Double, sedangkan untuk menyimpan umur seseorang yang tidak mungkin lebih dari 100 tahun maka digunakan type Byte. Tabel berikut merupakan daftar type data yang dapat Kita gunakan lengkap dengan ukuran dan scopenya:

32

Berdasarkan tabel diatas Kita dapat memilih penggunaan type data yang paling sesuai dengan kebutuhan dalam sebuah variabel. Prinsip utama yang perlu diperhatikan dalam pemilihan adalah jangan menggunakan tipe data yang yang ukurannya berlebihan dibanding kebutuhan Kita. Sesuaikan pula dengan presisi yang dikehendaki dalam aplikasi. Misalnya untuk membuat variabel yang berisi jumlah anak dalam keluarga, Kita menggunakan type Integer. Tentunya ini tidak sesuai karena type Integer berukuran 4 byte dalam memori, sedangkan kita tidak memerlukan nilai sampai dengan maksimum 2,147,483,647. Kita dapat menggunakan type data Byte dengan nilai maksimum 255 dan hanya membutuhkan 1 byte memori. Tentunya sesuatu yang wajar apabila jumlah anak dalam keluarga tidak melebihi angka 255. Dua contoh perhitungan berikut menampilkan hasil yang berbeda dari suatu perhitungan yang diakibatkan penggunaan type data berbeda. Dim sLuas As Single Dim sPanjang As Single = 7.5689782 Dim sLebar As Single = 9.568972 'Hitung luas dengan tipe data single sLuas = sPanjang * sLebar 'tampilkan di message box MessageBox.Show(sLuas.ToString, "Hasil dg Type Single", _ MessageBoxButtons.OK, MessageBoxIcon.Information)

33

Apabila kode tersebut dieksekusi maka tampil hasil perhitugan sebagai berikut :

Perbedaan tersebut terjadi karena type data Single dan Double memiliki tingkat presisi yang berbeda. Contoh tersebut memberikan gambaran kepada Kita bagaimana pemilihan suatu variabel menjadi sesuatu yang sangat mendasar dalam sebuah aplikasi. Type Data Untuk Semua Telah dijelaskan dalam bagian pendahuluan kuliah berseri ini bahwa dalam Visual Studio .NET terdapat beberapa bahasa yang mendukung pemrograman .NET. Bahasa tersebut adalah VB, C#, C++, dan J#. Selain itu terdapat pula beberapa third party language yang juga mendukung pemrograman di lingkungan .NET. Karena semua bahasa tersebut mengakses .NET Framework yang sama maka tidak terdapat perbedaan type data dalam tiap-tiap bahasa. Ini berbeda dengan kondisi sebelumnya dimana type data dalam VB berbeda dengan VC++ dan masing-masing harus dipertimbangkan kompatibilitasnya. Kompatibilitas data dan aplikasi dalam .NET lebih terjamin karena menggunakan library yang sama dengan type data sama pula. Ini merupakan kabar gembira bagi sebuah tim pengembang aplikasi yang terdiri dari berbagai programmer dengan keahlian bahasa yang berbeda. Konversi Variabel Pada saat tertentu mungkin Kita memerlukan konversi dari satu type data ke type lain. VB .NET menyediakan fungsi CType untuk mengkonversikan variabel. Contoh berikut mengkonversikan variabel umur yang semula bertipe String menjadi Single.

34

Dim sUmur As String = 5.5 Dim bUmur As Single = CType(sUmur, Single) MessageBox.Show(bUmur, "Hasil Konversi", MessageBoxButtons.OK, _ MessageBoxIcon.Information) Inti konversi adalah memasukkan obyek yang akan dikonversi sebagai argumen dari CType dan menentukan variabel tujuan konversinya. System Namespace Dalam .NET sekumpulan kelas library yang memiliki fungsi tertentu disebut dengan namespace. Karena .NET mendukung implementasi konsep OOP maka semua obyek dalam setiap bahasa merupakan turunan dari Namespace tersebut. Type data yang telah dijelaskan sebelumnya sebenarnya diturunkan dari System Namespace, yang merupakan root namespace dalam sistem .NET. Misalnya type data Decimal, ternyata diturunkan dari System Namespace yaitu System.Decimal runtime structure. Demikian pula dengan type data yang lain, selalu diturunkan dari namespace System tersebut. Dengan demikian Kita memiliki cara lain dalam mendeklarasikan variabel dan melakukan perhitungan sebagai berikut : Dim dGaji As System.Decimal = 1000000 Dim sPajak As System.Decimal = 0.1 Dim dGajiTerima As System.Double = dGaji * (1 + sPajak) MessageBox.Show(dGajiTerima.ToString, "Hasil Hitung", _ MessageBoxButtons.OK) Mungkin Kita bertanya, mengapa pendeklarasian Decimal tetap dapat dibenarkan daripada secara lengkap menyebutkan System.Decimal ? Jawabannya adalah karena VB secara default telah menyertakan namespace System sebagai reference library dalam setiap Project. Karena reference tersebut telah dibuat maka tidak menjadi halangan apabila Kita langsung menyebutkan nama type datanya saja. Konsep ini berlaku untuk semua namespace dalam .NET. Apabila Kita perhatikan menu Solution Explorer maka terlihat beberapa namespace telah direferensikan secara default, yaitu System, System.Data, System.Drawing, dan seterusnya.

35

Kita dapat menambahkan refrensi tersebut sesuai dengan kebuthan dan jenis library yang akan diakses. Pada babbab selanjutnya Kita akan mempelajari fungsi apa saja yang tersedia dalam setiap namespace dan bagaimana cara penggunaannya. Constant Apabila sebuah variabel selalu memiliki nilai tetap dan tidak berubah-ubah di sepanjang aplikasi maka lebih baik bila Kita mendefinisikannya sebagai constant. Misalnya dalam sebuah aplikasi matematika yang memiliki variabel phi, dimana phi bernilai 3.14 yang digunakan dalam perhitungan luas lingkaran dan volume tabung. Menetapkan sebuah variabel tetap sebagai constant memiliki keuntungan karena constant dieksekusi lebih cepat daripada variabel. Ini berarti peningkatan performa aplikasi yang dibangun. Deklarasi constant sama dengan deklarasi variabel, dengan menambahkan keyword Constant di depan nama variabel. Const phi As single = 3.14 Dim sRadius As single = 20 Dim sKeliling As single 'melakukan perhitungan dengan constant sKeliling = 2 * phi * sRadius Semua jenis type data, scope, dan tata cara deklarasi yang berlaku pada variabel berlaku pula untuk constant. Perbedaanya adalah apabila variabel dapat berubah-ubah nilainya, sedangkan constant selalu bernilai tetap.

36