Download - Modul Workshop Vb

Transcript
Page 1: Modul Workshop Vb

1

Pengantar VB.NET1. Mengenal VB.NET

Adanya perubahan besar yang dibawa oleh Internet telah dapat menembus segala aspek kehidupan manusia. Halini membuat Microsoft mengubah pandangannya tentang masa depan, dari orientasi yang berpusat pada PC keorientasi yang berpusat pada Internet khususnya masalah service / layanan. Untuk mewujudkan konsep All InternetBased ini, Microsoft mengembangkan kumpulan teknologi baru yang mereka sebut Microsoft.NET.

Sebuah hasil survey menjelaskan bahwa untuk membuktikan keseriusan Microsoft dalam melaksanakan konsep ini,mereka membelanjakan jutaan dolar AS yang mewakili 80% dari anggaran Research and Development mereka.Platform .NET tidak hanya dikhususkan bagi aplikasi yang dibuat menggunakan Visual Studio.NET (VS.NET) saja,tapi nantinya semua produk-produk Microsoft kedepannya akan berbasiskan .NET. Contohnya yang telah kitanikmati adalah Microsoft Office 2003, menggunakan format file XML (Extensible Markup Language) untukpenyimpanan datanya. Juga sistem operasi Windows dengan kode “Longhorn”.

Alasan dibuat .NET adalah memberikan pemakai akses ke informasi, file atau program, setiap tempat, setiap saat,setiap platform dan setiap perangkat. Pemakai tidak perlu tahu dimana informasi berada atau detail bagaimana caramemanggilnya.

a. Sejarah Singkat

Visual Basic versi sebelumnya adalah Visual Basic 6 yang diluncurkan Microsoft tahun 1998. kemudian padabulan Juli 2000, Microsoft memaparkan pengembangan Microsoft.NET dalam PDC (Proffesional DeveloperConference) di Orlando, Florida, AS.

Setelah dilakukan pengembangan cukup lama, akan pada Februari 2002 secara resmi Microsoft merilisVS.NET di mana salah satu bahasa pemrogramannya adalah VB.NET.

Lalu pada tahun 2003, Microsoft merilis VS.NET 2003 yang memperbaiki performa dan aspek keamanan dariVS.NET 2002. Pada VS.NET 2003 telah menggunakan .NET Framework 1.1 yang terbaru.

Pada awal tahun ini Microsoft juga telah merilis VS.NET 2005 dengan menggunakan .NET Framework 2.0.

b. Edisi Visual Studio.NET

Microsoft umumnya dalam setiap versi membuat empat edisi Visual Studio.NET, dimulai dari edisi paling dasarsampai paling lengkap sbb :

VS.NET Proffesional

Merupakan produk dasar yang terdiri dari VB.NET, Visual C++ .NET, Visual C# .NET dan Visual J#.NET. Dapat untuk membuat dan menggunakan layanan Web XML (XML Web Services),membangun aplikasi web, windows dan mobile menggunakan WML, pada telepon selulermenggunakan basis WAP dan XHTML untuk Pocket PC, Palm dan sejenisnya.

VS.NET Academic

Memiliki semua fitur yang ada pada edisi Proffesional ditambah dengan beberapa fitur instruksionalyang didesain untuk menyedrhanakan pengolahan mata kuliah dan memudahkan pengembanganaplikasi baik untuk fakultas maupun mahasiswa. Terdapat tool untuk fakultas seperti pengelolaantugas dan code extraction, pembuatan dokumentasi dan contoh kode.

VS.NET Enterprise Developer

Memiliki fitur standar pada Proffesional ditambah kemampuan untuk mengembangkan aplikasienterprise seperti :

Memungkinkan kerja sama tim developer untuk aplikasi windows dan web. Tim developer dapatberbagi kode sumber dan proyek menggunakan Visual SourceSafe.

Disediakan tool untuk membangun aplikasi enterprise. Terdapat Server Explorer dan VisualComponent Designer. Adanya Visual Database Tool untuk bekerja secara langsung denganlapisan data dari berbagai sumber database termasuk SQL Server dan Oracle.

Terdapat versi penuh dari SQL Server 2000, Windows Server 2000, Exchange Server, E-Commerce Server dan Microsoft Host Integration Server.

Developer dapat menggunakan template proyek enterprise dan frameworks yang berisi petunjukarsitektural terpasang untuk membangun aplikasi.

Page 2: Modul Workshop Vb

2

VS.NET Enterprise Architect

Memiliki fitur pada enterprise developer ditambah kemampuan untuk mendesain, menentukan danmengkomunikasikan arsitektur dan fungsionalitas aplikasi. Diantaranya :

Mendesain XML Web Services dan aplikasi secara Visual. Terdapat software modeling Visioberbasis UML (Unified Modelling Language) untuk membuat aplikasi arsitektur, bisnis dandesain database. Juga terdapat model untuk membuat class, fungsi dan method.

Disediakan database modelling berbasis Visio. Untuk Business Process terdapat BizTalkServer 2000 Developer Edition. Disediakan fitur untuk membuat Enterprise Template dan Frameworks menggunakan Template

Description Language.

2. Mengapa Menggunakan VB.NET

Setiap generasi baru dari perangkat lunak bahasa pemrograman datang karena adanya keterbatasan dari generasisebelumnya. Teknologi Mobile Device, Hardware, Network dan Internet menyebabkan bahasa pemrogramansekarang kurang ideal untuk bisa maksimal menggunakan teknologi tersebut.

a. Keterbatasan VB 6

Dalam pengembangan aplikasi, VB 6 menggunakan dua model yaitu VB Client berbasis form dan komponenCOM ( Component Object Model ). Sedangkan untuk client dan server digunakan DCOM ( Distributed COM ).Keterbasan VB 6 :

Masalah Deployment Aplikasi

Mungkin beberapa dari kita pernah mengalami peristiwa ketika menginstal suatu aplikasi baru, akanmenyebabkan beberapa aplikasi yang menggunakan komponen yang sama (file .dll) menjadi rusak atautidak jalan. Masalah ini disebut “ DLL Hell “ atau petaka DLL.

Masalah deployment lainnya adalah semua komponen berbasiskan COM memerlukan registrasi dariClass ID-nya ke mesin client lokal. Hal ini menyebabkan sulitnya dan lamanya jika proses tersebut harusdilakukan pada client yang banyak.

Kekurangan Interoperability dengan platform lainnya

COM akan bekerja secara baik khusus pada platform Microsoft, tetapi COM tidak menyediakankemampuan untuk mengaktifkan komponen atau interoperate dengannya jika berada dalam platform lainseperti Unix. Ketika aplikasi Microsoft menjadi level enterprise, hal ini akan menjadi masalah. Organisasiyang besar pada umumnya sering kali memiliki platform sistem operasi yang bervariasi sehinggamembutuhkan interoperability. Interoperability adalah kemampuan aplikasi untuk berkomunikasi danbekerja secara berdampingan dengan aplikasi lainnya yang berbeda platform.

Kekurangan dalam OOP

Teknologi perangkat lunak sekarang ini cenderung berbasiskan Object Oriented. VB 6 belum dikatakanbersifat OOP karena belum memiliki fitur inheritance / pewarisan. Inheritance memudahkan developeruntuk memakai ulang fungsi yang ada tanpa harus menulis kembali kodenya.

Keterbatasan dalam pengembangan aplikasi berbasiskan Internet

VB 6 belum memiliki fitur untuk mendesain form web. Untuk web menggunakan ASP. Antara ASP dan VBmemiliki interface dan teknik pemrograman yang sama sekali berbeda. Hal ini menyebabkan developerharus belajar banyak model pemrograman, dan kode yang dikembangkan untuk satu tipe interface,umumnya tidak dapat digunakan oleh tipe interface yang lain.

Windows API (Application Interface Programming) yang menyusahkan dan merugikan

Banyak developer mengalami kesulitan dalam membuat program Windows API dengan berbagai alasan.API bukan berbasiskan objek sehingga pengembang harus mempelajari pemanggilan fungsi yangkompleks dengan daftar argumen / parameter yang panjang.

Keterbatasan lain

Diantaranya penerapan multithreading sehingga aplikasi vb 6 tidak bisa digunakan untuk menulis aplikasiservice type NT.

Page 3: Modul Workshop Vb

3

Penanganan kesalahan / error handling yang tidak terstruktur menyebabkan developer kesulitan dalammelakukan debugging.

b. Alasan Memilih VB.NET

Diantaranya :

Menyederhanakan Deployment

VB.NET mengatasi masalah seputar deployment atau instalasi dari aplikasi berbasis windows yaitu ‘DLLHell’ dan registrasi COM. Deployment .NET bersifat XCOPY yaitu cukup memungkinkan untukpengembang menginstal aplikasi berbasis Windows ke mesin client dengan cara kopi / menyalin file. Tidakperlu lagi registrasi dll dan prosedur instalasi yang berbelit.

Fitur auto-downloading, akan mempermudah deployment aplikasi berbasis Windows melalui Internetkarena aplikasi dapat diinstal dan dijalankan melalui browser Web.

Menyederhanakan Pengembangan Perangkat Lunak

VB.NET memiliki fitur compiler yang bekerja secara background real time dan daftar task untukpenanganan bug / error program sehingga pengembang dapat langsung memperbaiki kesalahan kodeyang terjadi.

Adanya Option Strict On dapat menampilkan kesalahan sintaks jika kita membuat konversi tipe datasecara eksplisit yang bisa menyebabkan hilangnya data. Adanya fitur try..catch..finally (exception)diharapkan menjadi bentuk debugging yang lebih terstruktur dibandingkan vb versi sebelumnya.

Pada pemrograman database disediakan teknologi ADO.NET (ActiveX Data Objects untuk .NETFramework) yang merupakan kumpulan class dan berisi komponen untuk melakukan koneksi, akses danmanipulasi database. Dalam ADO.NET terdapat provider data SQL Server dan OLEDB. Di VS.NET 2003ditambah engan Oracle dan ODBC.

Untuk membuat laporan disediakan Crystal Report (CR) yang diintegrasikan dalam lingkungan VB.NET.CR dapat digunakan untuk membuat laporan secara grafikal dan interaktif pada laporan data secararelasional. Laporan dapat dibuat untuk aplikasi Windows, Web dan mobile.

Kemampuan lain adalah fasilitas threading. Fasilitas ini dapat membuat pengembang membuat aplikasiseperti Service di NT. Threading adalah dimana satu tugas / task dapat dikerjakan secara real time olehlebih dari satu proses.

Mendukung Penuh OOP

Dalam VB.NET, anda dapat membuat kode class yang menggunakan secara penuh konstruksi berbasisobjek. Class-class tersebut reusable / dapat digunakan kembali. Implementasinya pun berorientasi objekseperti inheritance / pewarisan, encapsulation / pembungkusan, dan polymorphism / banyak bentuk.

Mempermudah Pengembangan Aplikasi Berbasis Web

Untuk mengembangkan aplikasi Web disediakan desainer form Web, dimana digunakan mekanisme “Dragand Drop”. Bentuk pemrograman pun bersifat event-driven atau berdasarkan kejadian. MenggunakanWebform, anda dapat membuat aplikasi berbasis Web Thin-Client (Proses bisnis dilakukan disisi server)yang secara cerdas dapat di render pada browser apa saja dan platform apa saja.

Sifat editor web adalah WYSIWYG (What You See Is What You Get) dengan menggunakan teknologiIntelliSense dan tag komplet.

Web Service memungkinkan suatu aplikasi “berkomunikasi” dengan aplikasi lainnya dari berbagai platformmenggunakan protokol Internet terbuka (SOAP / HTTP). Fitur ini dapat mengatasi masalah interoperability.

XML (eXtensible Markup Language) adalah format dokumen berbasis teks mirip HTML, tetapi khususuntuk menyimpan data / informasi dan merupakan metode untuk menampilkan data yang terstruktur. XMLmerupakan standar untuk berbagi data antaraplikasi dan antar-platform.

Mempermudah Migrasi dari VB 6 ke VB.NET

Interoperability COM menyediakan komunikasi dua arah antara aplikasi VB 6 dengan VB.NET. Wizardupgrade pada VB.NET 2003 memungkinkan developer dapat melakukan migrasi lebi dari 95% kode VB 6menjadi kode VB.NET.

Page 4: Modul Workshop Vb

4

3. Dot NET Framework

Dot NET Framework merupakan “man behind the gun” dari VB.NET sehingga kita perlu mengetahui jeroan dariteknologi yang ada di dalamnya. Microsoft.NET adalah software yang menghubungkan informasi, orang, sistem dandevice yang menjangkau client, server dan tool pengembang.

Microsoft.NET disusun oleh :

Dot NET Framework, digunakan untuk membangun dan menjalankan semua macam software termasukaplikasi berbasis Web, aplikasi smart client dan layanan Web Service. Menyediakan komponen untuk berbagidata melalui Network menggunakan platform protokol independen seperti XML, SOAP dan HTTP.

Tool-tool pengembang seperti Microsoft Visual Studio .NET yang menyediakan IDE (Integrated DevelopmentEnvironment) untuk memaksimalkan produktivitas pengembangan menggunakan .NET Framework.

Serangkaian server termasuk Microsoft Windows Server 2003, SQL Server dan Microsoft BizTalk Server yangterintegrasi, untuk menjalankan, mengoperasikan dan mengelola service Web dan aplikasi berbasis Web.

Software client seperti Windows XP, Windows CE dan Microsoft Office XP yang membantu pengembang untukmenyebarkan dan mengelola aplikasinya.

a. Apa itu NET Framework

Dot NET Framework adalah lingkungan untuk membangun, deploying / menyebarkan dan menjalankan serviceWeb dan aplikasi lainnya.

Dot NET Framework disusun oleh dua komponen utama yaitu Common Language Runtime (Runtime bahasaumum / CLR) dan .NET Framework Class Library.

Definisi diatas diambil dari FAQ mengenai .NET Framework. Secara sederhana .NE Framework adalahplatform tunggal dimana semua orang dapat mengembangkan aplikasi mengunakan suatu sistem yang miripdengan JVM (Java Virtual Machine). Hanya berbeda dengan Java, tidak ada penghalang bahasa dengan .NETsehingga aplikasi dapat dikembangkan menggunakan bahasa : VB, C++, C#, J# dan bahasa lainnya yangkompatibel dengan .NET Framework.

Bagaimana .NET mencapai tujuannya :

Web Service, yaitu suatu komponen aplikasi yang dapat diprogram dan diakses melalui protokol Webstandar. Dengan kata lain, Web Service merupakan komponen yang dapat dipanggil dari suatu tempatmelalui internet dari aplikasi client.

DataSet ADO.NET dan XML yang mendukung seluruh platform.

Tool-tool yang kaya, service runtime an deployment XCOPY.

Page 5: Modul Workshop Vb

5

Pada gambar 1.1 terlihat level tertinggi dari .NET Framework adalah compiler Visual Basic dll. Di bawahnyaterdapat CLS. Spesifikasi adalah serangkaian aturan yang menentukan fitur minimum yang harus mendukungdari suatu bahasa untuk memastikan bahwa bahasa tersebut akan interoperate dengan CLS-Compliant lainnyadan tool-tool. Sepanjang bahasa tersebut mendukung CLS, maka dapat dipastikan akan bekerja dengan CLR.

ASP.NET menyediakan inti dari infrastruktur form-form web untuk pengembangan berbasis UI dan Service Webuntuk pengembangan antarmuka secara terprogram. Pengembangan antarmuka pengguna pada platformwindows dapat dilakukan menggunakan form form Windows. Fungsi akses data disediakan oleh ADO.NET danXML. Akhirnya, inti dari pustaka base class menyediakan infrastruktur, service seperti sekuriti, pengolalaantransaksi dll.

Common Language Runtime adalah engine yang menjalankan aplikasi .NET Framework. Runtimemenyediakan sejumlah layanan, seperti berikut :

o mengelola kodeo Isolasi memori aplikasio Verifikasi untuk keamanano Konversi dari Intermediate Language ke native codeo Akses metada yang diperkayao Menangani exception (kejadian yang tidak diharapkan muncul pada saat eksekusi) termasuk exception

cross languageo Interoperation diantara managed code, objek Com dan preexisting DLLo Mendukung layanan development seperti profiling, debugging dsb

4. Lingkungan VB.NET

Untuk menyederhanakan proses pengembangan aplikasi, Visual Studio.NET menyediakan lingkungan yang disebutIDE. Lingkungan menyediakan tool untuk mendesain, mengeksekusi dan men-debug aplikasi anda.

a. Antara Solution dan Project

Pada VB 6, keseluruhan program aplikasi disebut sebagai proyek dan biasanya akan menghasilkan sebuah file.exe atau .dll.

VS.NET menggunakan solution yang mungkin berisi lebih dari satu proyek dan juga berisi gambar, file XML,dan elemen lainnya yang merupakan bagian dari program. Solution dapat membuat lebih dari satu file .exe atau.dll.

Gambar 1.1 Dot NET Framework

Page 6: Modul Workshop Vb

6

Fitur penting lainnya dari lingkungan yang dapat menangani banyak bahasa adalah class yang dibuat padasuatu proyek dengan suatu bahasa dapat dipanggil dari proyek lainnya yang dibuat dengan bahasa yangberbeda sehingga memungkin interoperability antarbahasa.

b. Tipe-tipe Project

Pada kotak dialog Visual Basic New Project terdapat pilihan templates yang menunjukkan tipe proyek sebagaiberikut :

Windows Application. Proyek untuk membuat aplikasi dengan antarmuka windows Class Library. Class Library adalah komponen untuk membuat kode dasar, di mana tidak ada

antarmuka yang terlihat. Class adalah kumpulan dari fungsi yang dapat digunakan dalam proyeklainnya. Class library ekivalen dengan tipe proyek ActiveX DLL dan ActiveX EXE dari VisualBasic 6.

Windows Control Library. Kontrol Windows seperti TextBox dan Label adalah elemen dasaruntuk membuat antarmuka. Jika kontrol yang disediaka VB.NET yang terlihat di toolbox tidakdapat memenuhi kebutuhan anda, anda dapat membuat kontrol sendiri menggunakan WindowsControl Library. Ekivalen dengan tipe proyek ActiveX pada Visual Basic 6.

Console Application. Aplikasi console akan menampilkan output pada jendela command promptseperti model DOS.

Windows Service. Windows Service membuat aplikasi yang tidak memiliki antarmuka. Servicedapat dijalankan secara otomatis ketika komputer dijalankan, pause dan restart. Windowsservice dapat digunakan untuk proses file copy, membaca isi database dan sebagainya.

ASP.NET Web Application. Adalah aplikasi yang ditempatkan di server Web dan dapatditampilkan di browser client dalam bentuk halaman HTML. Pilihan ini akan membuat aplikasidatabase Web berbasiskan ASP.NET

ASP.NET Web Service. Adalah program yang ditanamkan pada server Web, seperti aplikasiWeb tetapi tidak menampilkan halaman HTML. Nilai kembaliannya adalah hasil dari perhitunganatau lookup database.

Gambar 1.2 : Kotak Dialog New Project

Page 7: Modul Workshop Vb

7

Web Control Library. Digunakan untuk membuat kontrol Web yang digunakan pada halamanWeb.

Pada Visual Studio.NET 2003 ditambahkan template Smart Device Application untuk membuataplikasi Pocket PC atau Windows CE.

c. Tampilan IDE VB.NET

Solution Explorer

Dalam solution explorer anda dapat melihat keadaan dari projek yang dibuat dan juga file-file yang ingin anda akses.Untuk mengakses solution explorer, pilih Solution Explorer dalam menu View.

Gambar 1.3 Lingkungan Visual Basic.NET

Page 8: Modul Workshop Vb

8

Class View

Dalam class view, anda dapat melihat dan melakukan navigasi terhadap simbol-simbol yang ada dalam projek anda.Simbol-simbol tadi disusun dalam bentuk hierarkis yang menunjukkan relasi objek diantara mereka.

Untuk mengakses Class View, tekan Ctrl+Shift+C atau pilih Class View dalam menu View.

Properties Windows

Properties Windows digunakan untuk melihat lebih detail properti yang dimiliki oleh suatu objek. Windows ini secaradefault terletak disebelah kanan tengah. Kita dapat mengaktifkannya dengan cara menekan F4 atau memilih menuView > Properties Windows

Gambar 1.4 Solution Explorer

Gambar 1.5 Class View

Page 9: Modul Workshop Vb

9

5. Kasus Sederhana : Program Windows Applications Halo World

Objek Properti PengaturanLabel1 Text Masukkan Nama :TextBox1 Name txtNama

Text <empty>Button1 Name btnOK

Text OKButton2 Name btnKeluar

Text Keluar

Kode Program :

Public Class Form1Inherits System.Windows.Forms.Form

#Region " Windows Form Designer generated code "

Public Sub New()MyBase.New()

'This call is required by the Windows Form Designer.InitializeComponent()

Gambar 1.4 Form Hallo World

Gambar 1.6 Properties Window

Page 10: Modul Workshop Vb

10

'Add any initialization after the InitializeComponent() call

End Sub

'Form overrides dispose to clean up the component list.Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)

If disposing ThenIf Not (components Is Nothing) Then

components.Dispose()End If

End IfMyBase.Dispose(disposing)

End Sub

'Required by the Windows Form DesignerPrivate components As System.ComponentModel.IContainer

'NOTE: The following procedure is required by the Windows Form Designer'It can be modified using the Windows Form Designer.'Do not modify it using the code editor.Friend WithEvents Label1 As System.Windows.Forms.LabelFriend WithEvents btnOK As System.Windows.Forms.ButtonFriend WithEvents btnKeluar As System.Windows.Forms.ButtonFriend WithEvents txtNama As System.Windows.Forms.TextBox

<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()Me.Label1 = New System.Windows.Forms.LabelMe.txtNama = New System.Windows.Forms.TextBoxMe.btnOK = New System.Windows.Forms.ButtonMe.btnKeluar = New System.Windows.Forms.ButtonMe.SuspendLayout()''Label1'Me.Label1.Location = New System.Drawing.Point(16, 16)Me.Label1.Name = "Label1"Me.Label1.TabIndex = 0Me.Label1.Text = "Masukkan Kata :"''txtNama'Me.txtNama.Location = New System.Drawing.Point(16, 40)Me.txtNama.Name = "txtNama"Me.txtNama.Size = New System.Drawing.Size(248, 20)Me.txtNama.TabIndex = 1Me.txtNama.Text = ""''btnOK'Me.btnOK.Location = New System.Drawing.Point(16, 72)Me.btnOK.Name = "btnOK"Me.btnOK.TabIndex = 2Me.btnOK.Text = "OK"''btnKeluar'Me.btnKeluar.Location = New System.Drawing.Point(96, 72)Me.btnKeluar.Name = "btnKeluar"Me.btnKeluar.TabIndex = 3Me.btnKeluar.Text = "Keluar"''Form1'Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)Me.ClientSize = New System.Drawing.Size(292, 109)Me.Controls.Add(Me.btnKeluar)Me.Controls.Add(Me.btnOK)Me.Controls.Add(Me.txtNama)Me.Controls.Add(Me.Label1)Me.Name = "Form1"

Page 11: Modul Workshop Vb

11

Me.Text = "Form1"Me.ResumeLayout(False)

End Sub

#End Region

Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles btnOK.Click

MessageBox.Show("Haloo, " & txtNama.Text, "Belajar VB.NET")End Sub

Private Sub btnKeluar_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles btnKeluar.Click

Me.Dispose()End Sub

End Class

Untuk menjalankan program ada tiga cara : Klik tombol panah segitiga pada toolbar Klik menu Debug kemudian pilih Start Tekan tombol fungsi F5

1. Variabel dan Konstanta

Variabel adalah lokasi di memori yang diberi nama. Digunakan untuk memasukan data berupa nilai sementara kedalam memori selama menghitung, memberi informasi dan sebagainya.

Ketentuan dalam memberi nama variabel : karakter pertama harus huruf yang diperbolehkan adalah huruf, angka dan hypen (garis bawah/ “_”) tidak boleh ada spasi tidak boleh dari 255 karakter haruslah unik jika diletakkan dalam scope yang sama

a. Deklarasi Variabel

Adalah proses menyebutkan karakteristik variabel seperti nama, tipe data, scope, lifetime, dan initializationvalue.Contoh :

Dim Jawab As StringDim I as Integer = 81Dim Panjang, Lebar, Tinggi As IntegerPublic RootPath As StringPrivate TanggalLahir As Date

b. Scope Variabel

Scope / Jangkauan adalah wilayah kode dimana variabel memiliki kekuasaan atau bisa diakses.Diantaranya :

Tingkat BlokSuatu variabel yang berada dalam suatu blok pernyataan seperti pada If.. Then.., For.. Next atau Do.. Loop.Variabel tersebut hanya bisa diakses didalam blok tersebut dimana ia dideklarasikan dan umurnya akanberakhir jika blok tersebut telah selesai dilaksanakan.

Tingkat ProcedureJangkauannya hanya ada dalam prosedur tempat variabel dideklarasikan. Disebut juga variabel lokal.

Tingkat Module

Page 12: Modul Workshop Vb

12

Variabel yang dideklarasikan di luar prosedur dalam modul, class atau structure. Akses ke variabel modulbergantung pada kata kunci aksesibilitas yang dipakai dalam deklarasinya.

Tingkat NameSpaceVariabel yang dideklarasikan pada tingkat modul tetapi diberikan aksesibilitas Public atau Friend.

Contoh:Public Class Form1

Inherits System.Windows.Forms.FormPublic X As DoublePrivate Y As Integer

Private Sub btnHitung_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles btnHitung.Click

Dim blnSelesai As Boolean = FalseDim r As New Random()Do While Not blnSelesai

Dim z As Integerz = r.Next(1,100)blnSelesai = (z < 10)

LoopMsgBox(“Hasil Akhir : “ & z)

End SubEnd Class

c. Aksesibilitas Variabel

Aksesibilitas menentukan apakah variabel tersebut dapat diakses dari module atau procedure lain diluar tempatvariabel itu dideklarasikan. Sifatnya optional.Attribut tersebut diantaranya :Dim

Akses sangat terbatas. Jika dideklarasikan pada tingkat procedure maka jangkauannya hanya di procedureitu saja. Jika procedure telah selesai dijalankan maka nilai variabel Dim ini akan hilang. Umumnya digunakanpada level Procedure dan blok.

PublicAkses luas dan bebas. Dapat digunakan hanya pada level Module, NameSpace dan File tidak bisadigunakan pada Procedure / Blok.

ProtectedMemiliki akses yang terproteksi. Terproteksi disini adalah hanya bisa diakses dari Class yang sama atauyang mewarisi Class tersebut (inheritance). Dapat digunakan hanya pada level Class.

FriendYang dapat mengaksesnya dari program yang berisi deklarasi ini dan dari manapun dalam assembly yangsama. Hanya dapat digunakan pada level Module, NameSpace atau File. Umumnya hanya digunakan untukdeklarasi Windows atau Web Control.

Protected FriendVariabel jenis ini memiliki akses gabungan antara Protected dengan Friend. Dapat digunakan oleh kodedimanapun pada assembly yang sama, pada kode dalam class itu sendiri dan pada kode yang diwarisi olehclass tersebut. Hanya dapat digunakan pada level Class yaitu pendeklarasian anggota dari class.

PrivateAkses terbatas. Yang dapat mengaksesnya hanya dari dalam isi deklarasi. Hanya dapat digunakan padalevel Module, Class atau Structure.

Contoh penggunaan :

Public Class APublic W As IntegerProtected X As IntegerFriend Y As IntegerPrivate Z As Integer

End Class

Dalam code diatas, domain yang dapat diakses untuk masing-masing entity adalah :o A.W mempunyai domain akses (aksesibilitas) yang tidak terbataso A.X hanya dapat digunakan oleh Class anak / turunan / derived dari Class A

Page 13: Modul Workshop Vb

13

o A.Y hanya dapat diakses oleh program yang memiliki pendeklarasian Class Ao A.Z hanya dapat diakses oleh program yang berada didalam Class A / Context yang sama

d. Konstanta

Konstanta mirip dengan variabel hanya saja nilainya tidak berubah selama program berjalan. Konstantadideklarasikan dengan kata kunci Const. Konstanta memiliki scope tertentu dan dapat dideklarasikanmenggunakan kata kunci Public atau Private.Contoh :

Public Const pi As Double = 3.14159285358979

e. Enumerasi

Enumerasi menyediakan cara yang tepat untuk bekerja dengan serangkaian konstanta yang berhubungan danmenggabungkan nilai konstanta dalam sebuah nama.

Enum hanya muncul pada level Module, Class, Structure, NameSpace atau File. Dapat diakses dari manapundalam modul, class atau structure dimana dia dideklarasikan. Secara default enumerasi dan anggotanya adalahPublic. Tapi dapat dirubah scopenya dengan pernyataan lain. Seperti Public, Protecte, Friend, Protected Friendatau Private.

Suatu enumerasi berisi rangkaian konstanta yang berhubungan. Nilai yang sudah didefinisikan dalamenumerasi tidak dapat diubah pada saat program berjalan. Untuk mengakses nilai bisa digantikan denganstring yang telah didefinisikan dalam enum.

Contoh:Enum Warna

Merah = 0Hijau = 1Biru = 2

End Enum

2. Tipe Data dan Structure

a. Tipe Data

Tabel berikut menunjukan tipe data pada VB.NET

Tipe Ukuran Jangkauan NilaiBoolean 4 bytes True atau False

Date 8 bytes 1/1/1/1 sampai 31/12/9999

String 10 bytes 0 – 2 juta karakter unicode

User Defined TypeJumlahukurannnya Tergantung dari tipe data untuk tiap anggotanya

Byte 1 byte 0 – 255 unsigned

Char 2 bytes 0 – 65.535 unsigned

Short (Int16) 2 bytes -32.768 – 32.767

Integer (Int32) 4 bytes -2.147.483.648 – 2.147.483.647

Long (Int64) 8 bytes -9.223.372.036.854.775.808 - 9.223.372.036.854.775.807

Single 4 bytes3,4028235E+38 sampai -1,401298E-45 untuk nilai negatif1,401298E-45 sampai 3,4028235E+38 untuk positif

Double 8 bytes

-1,79769313486231570E+308 sampai-4,940656458412456544E-324 untuk nilai negatif4,940656458412456544E-324 sampai1,79769313486231570E+308 untuk nilai positif

Decimal 16 bytes

0 sampai + / - 79.228.162.514.264.337.593.543.950.335tanpai nilai desimal0 sampai + / - 79.228.162.514.264.337.593.543.950.335dengan 28 tempat disebelah kanan desimal.

Page 14: Modul Workshop Vb

14

Semua tipe data VB.NET adalah object tidak lagi variant dan harus dideklarasikan terlebih dahulu.

b. Structure

Untuk membuat tipe data sendiri anda dapat menggunakan Structure.Contoh :

[Public|Private|Friend] Structure NamaVariabelDeklarasi nonmetodeDeklarasi metode

End Structure

Structure PekerjaSosialDim NIP As LongDim Nama As StringDim Salary As Decimal

End Structure

3. Operator

a. Aritmetika

Operator Keterangan* Perkalian

/ Pembagian reguler. Contoh: 5 / 2 = 2,5

\ Pembagian integer dengan pembulatan sampai mendekati nol. Contoh : 5 \ 2 = 2

^ Pemangkatan

+ Penambahan

- Pengurangan

Mod Modulues digunakan untuk operand integer dimana hasilnya merupakan sisa pembagian.Contoh : 5 Mod 2 = 1

b. Relasi / Perbandingan

Operator Keterangan= Sama dengan. Hasilnya TRUE jika a = b dan FALSE jika a <> b

<> Tidak sama. TRUE jika a <> b dan FALSE jika a = b

< Lebih kecil. TRUE jika a < b dan FALSE jika a > b

> Lebih besar. TRUE jika a > b dan FALSE jika a < b

<= Lebih kecil atau sama dengan. TRUE jika a <= b dan FALSE jika sebaliknya

>= Lebih besar atau sama dengan. TRUE jika a >= b dan FALSE jika sebaliknya

c. BitWise

Operator Artinya Contoh Hasil

AND Baik sisi kanan maupun kiridari operator adalah 1

1 And 0 0

ORSalah satu atau kedua sisidari operator adalah 1 1 Or 0 1

XORSalah satu dari sisi kananatau kiri dari operator adalah1 tapi tidak keduanya

1 Xor 0 1

Contoh :27 And 148

00100101 (37)10010100 (148)

Page 15: Modul Workshop Vb

15

---------------------------------- AND00000100 (4)

d. Logika

Operator KeteranganAND TRUE jika kedua operand TRUE. Selain itu FALSE

OR TRUE jika salah satu atau kedua operand bernilai TRUE. Selain itu FALSE

XOR TRUE jika hanya salah satu operand bernilai TRUE. Selain itu FALSE

AndAlso TRUE jika kedua operand bernilai TRUE. Selain itu FALSE

OrElse TRUE jika salah satu atau kedua operand bernilai TRUE. Selain itu FALSE

Not TRUE jika operand FALSE dan FALSE jika operand TRUE

e. Memperpendek Operator

X = X + 1 menjadi X += 1X = X * 1 menjadi X *= 1 , dst

1. Definisi OOP

Ada dua metode dalam mendesain dan membuat konstruksi perangkat lunak yaitu pemrograman terstruktur dan

pemrograman berorientasi objek.

OOP adalah metode pemrograman di mana pengembang tidak hanya mendefinisikan tipe data dari struktur data

tetapi juga tipe dari operasi (fungsi) yang dapat diaplikasikan ke struktur data. Pada cara ini struktur data menjadi

objek yang memiliki data dan fungsi. Pengembangpun dapat membuat relasi antara suatu objek dengan lainnya.

Salah satu keunggulan OOP dibandingkan teknik pemrograman terstruktur adalah OOP memungkinkan

pengembang untuk membuat modul yang tidak perlu berubah ketika suatu tipe objek yang baru ditambahkan.

Pengembang dapat membuat suatu objek baru yang mewarisi beberapa fitur dari objek yang sudah ada. Hal ini

membuat OOP mudah dimodifikasi.

Suatu bahasa pemrograman dikatakan mendukung secara penuh OOP jika memilki semua fitur berikut ini :

Abstraction.

Abstraksi merupakan kemampuan suatu bahasa pemrograman untuk mengubah suatu konsep menjadi

representasi abstrak dari konsep dalam suatu program. Contohnya objek pelanggan adalah representasi

abstrak dari pelanggan dalam dunia nyata. Suatu objek recordset merupakan representasi abstrak dari

sekumpulan data.

Encapsulation.

Merupakan konsep untuk memisahkan interface (kumpulan dari method, property atau event yang saling

berhubungan) dengan implementasinya. Tujuannya sebenarnya untuk menyembunyikan property dan method

dari suatu objek, dan hanya menampilkan method / property yang dibutuhkan. Property / method yang

ditampilkan dari suatu objek dikenal dengan istilah interface. Melalui interface inilah suatu objek dapat

digunakan.

Contohnya adalah sebuah objek walkman. Untuk menggunakan walkman anda hanya diberi beberapa

interface, yaitu : Play, Rewind, Forward, Stop dan Eject. Padahal ada method – method lain yang sangat

penting agar walkman dapat berfungsi. Misalnya method untuk menggunakan sumber energi, berhenti bila

Page 16: Modul Workshop Vb

16

kaset habis dsb. Fungsi – fungsi tadi dibungkus / disembunyikan oleh objek walkman anda, dengan tujuan agar

kita sebagai pengguna objek walkman tidak bingung menggunakan.

Polymorphism

Memungkinkan pengembang memakai method yang sama pada class – class yang berbeda dan

memungkinkan method yang tepat dieksekusi berdasarkan konteks yang memanggilnya.

Contohnya adalah sebuah handphone. Suatu handphone ketika menerima sinyal telepon masuk, maka akan

dapat bereaksi dalam berbagai bentuk. Ada yang menggunakan ringtone, polyphonic, atau hanya bergetar. Ini

berarti objek dasar suatu handphone mempunyai kemampuan (method) untuk bereaksi terhadap sinyal telepon

masuk, namun reaksi dari masing-masing tipe handphone (new instance dari handphone) dapat

diimplementasikan dalam berbagai bentuk (vibrate, beep once, ringtone, polyphonic). Dalam hal ini, objek

handphone anda menggunakan konsep polymorphism.

Inheritance

Kemampuan untuk membentuk class turunan yang mewarisi property dan method dari class induk (base class).

Sebagai contoh, kita membentuk suatu class employee, dimana di dalam class ini kita mempunyai property :

Nama dan Gaji dan satu buah method yaitu Speak.

2. Objek, Class, Method dan Field

Class adalah blueprint / cetak biru atau templateatau spesifikasi dari objek. Dengan kata lain class merupakan

representasi abstrak dari objek, sedangkan objek adalah representasi nyata atau instance (perwujudan) dari class.

Class merupakan unit dasar pemrograman berorientasi objek. Class dapat berisi property, field, method dan event

dari objek. Gabungan property, field, methods dan event umumnya disebut sebagai members dari class.

Field dan Property berisi informasi atau attribut yang terdapat dalam suatu objek. Field mirip dengan variabel, yang

dapat dibaca dan diset secara langsung. Property dapat dibaca dan diset seperti field, tetapi implementasinya

menggunakan prosedur property Get dan Set.

3. Property

Property merupakan informasi yang dapat disimpan dalam suatu objek. Method property membolehkan anda untuk

mengontrol operasi baca dan tulis dari property dalam suatu class.

Untuk membuat sebuah aplikasi yang dapat menggunakan data daridatabase kita harus mengetahui bagaimana menyambungkan nya.

KONEKSI TO ACCESS

Sebelum kita dapat menggunakan data dari database, koneksi antara programdan database harus dibuka lebih dulu. Agar Vb.net kita dapat tesambung denganMs.Access terlebih dahulu kita harus membuat String koneksi :

Page 17: Modul Workshop Vb

17

Public Connection As String = "Provider =Microsoft.Jet.OLEDB.4.0;Data Source =" & Application.StartupPath &"\db1.mdb;"

Setelah membuat string koneksi tidak lupa juga pada baris pertama dari setiap form yangmenggunakan koneksi atau objek Ms.Accessl, tambahkan perintah

Imports System.Data.OleDbImports System.Data

Setelah selesai menambahkan perintah diatas Buat objek koneksi, danbuka koneksi

Dim Connect As OleDbConnection(Connection)

Koneksi dapat dibuka dengan perintah

connect.Open()

Untuk memastikan apakan koneksi telah berhasil atau tudak dapat kitatambah kan perintah

TryConnect = New OleDbConnection(Connection)Connect.open()MessageBox.Show("koneksi sukses")

Catch ex As ExceptionMessageBox.Show("error")MsgBox(ex.Message)Me.Dispose()

End Try

Apa bila setelah aplikasi kita jalankan lalu muncul tampilan

Berarti koneksi yang telah kita buat berhasil .

KONEKSI TO MYSQL

Sebelum kita dapat menggunakan data dari database, koneksi antara programdan database harus dibuka lebih dulu.

Page 18: Modul Workshop Vb

18

Disini menggunakan mysqlnetConnector, sebuah library connector yang dibuatoleh mysql untuk menghubungkan aplikasi .net dengan database mysql. Cara lain dapatmenggunakan ODBC connector Langkah-langkah membuka koneksi:

Install dan tambah referensi di VB.Net

Agar vb dapat berhubungan dengan mysql, mysqlnetconnector harus sudahterinstall di pc anda, alternatifnya, copykan file mysql.Data.dll ke dalam folder solutionanda, lalu klik kanan nama solution(pada solution explorer), pilih add reference-browsedan pilih file tersebut. Pada baris pertama dari setiap form yang menggunakan koneksiatau objek MySql, tambahkan perintah

Imports MySql.Data.MySqlClient

B. Buat string koneksi

Public strconn As String = "server=[lokasi server]; uid=[user mysql]; pwd=[passwordmysql]; database=[nama database];"

Keterangan : -perintah diatas diketik dalam 1 baris -ganti public dengan dim jikakoneksi tidak bersifat global

[lokasi server] ganti dengan ip server mysql, gunakanlocalhost jika pada komputer sendiri[user mysql] ganti dengan nama user yang berhak koneksi keserver mysql[password mysql] ganti dengan password yang valid[nama database] ganti dengan nama database yang valid

Contoh string koneksi:

berikut ini akan menghubungkan ke database lokal dengan

nama user = root

password= root

nama database = barang

Public strconn As String = "server=localhost; uid=root; pwd=root; database=barang;"

berikut ini akan menghubungkan ke database di server dengan

ip 192.168.1.100 dengan

nama user = tamu

Page 19: Modul Workshop Vb

19

password kosong

nama database = inventory

Public strconn As String = "server=192.168.1.100; uid=tamu; pwd=;database=inventory;"

C. Buat objek koneksi, dan buka koneksi

Public conn As New MySqlConnection(strconn)

Koneksi dapat dibuka dengan perintah

conn.Open()

ada baiknya memasukkan perintah buka koneksi dalam blok try atau if,karena ada beberapa kemungkinan error. Beberapa error umum ialah:

-mysql server tidak ditemukan (belum menyala -username atau passwordsalah

-koneksi sudah terbuka dan belum ditutup Berikut adalah contoh denganpenanganan error 'jika koneksi tertutup

If conn.State = ConnectionState.Closed Then Try

'buka koneksi

conn.Open() '

tangkap error mysql, jika ada ( ini hanya sebagian)

Catch mex As MySqlExceptionIf mex.Number = 0 Then

Msgbox("Tidak bisa connect ke db", "no server")

ElseIf

mex.Number = 1045 ThenMsgbox ("Salah user/pass mysql", "akses ditolak")

Else

Msgbox (mex.Number & mex.Message, "mysql error")

End If

'tangkap error umum Catch ex As ExceptionMsgBox(ex.Message)

Page 20: Modul Workshop Vb

20

End Try

End If

Perhatikan, bahwa pada contoh diatas, catch yang pertama menangkap erroroleh mysql, sedangkan catch yang kedua menangkap error umum. Keseluruhanblok hanya akan dijalankan bila belum ada koneksi yang terbuka Setelah koneksitidak digunakan lagi, tutuplah koneksi dengan perintah

If conn.State = ConnectionState.Open Then conn.Close() EndIf

SELAMAT MENCOBA