Menggunakan Object Collection dan Generic (VB) Part 2

Pada blog yang sebelumnya saya sudah membahas cara menggunakan object array pada VB.NET, pada artikel kali ini saya akan meneruskan untuk membahas object collection yang lain yang sering digunakan yaitu List

Pada .NET 2.0 List menggunakan fitur Generic, sehingga kita bisa mebuat object collection yang “typed safe”.

Dengan array kita harus mendeklarasikan terlebih dahulu kapasitas array, tapi bila menggunakan List tidak perlu karena object yang disimpan pada list bersifat dinamis

Contoh penggunaan List sederhana:

Untuk membuat object list baru yang bertipe string kodenya

'Menggunakan List yang bertipe string
        Dim objNama As New List(Of String)

Untuk menambahkan nilai bertipe string kedalam list caranya

'cara menambahkan kedalam elemen list
        objNama.Add("Erick")
        objNama.Add("Anton")
        objNama.Add("Willy")
        objNama.Add("Bejo")

Untuk mengambil nilai dari object list:

'untuk mengambil elemen yang ada dalam list
        For Each strNama As String In objNama
            Console.WriteLine(strNama)
        Next

List tidak hanya digunakan untuk menampung nilai dengan tipe-tipe data native seperti int,double,currency,dll tapi list juga bisa digunakan untuk menampung nilai yang bertipe object

Contoh Penggunaan List bertipe object

Pertama buat class Employee terlebih dahulu:

Public Class Employee
    Private employeeID As Integer

    Public Sub New(ByVal theID As Integer)
        Me.employeeID = theID
    End Sub

    Public Property EmpID() As Integer
        Get
            Return employeeID
        End Get
        Set(ByVal value As Integer)
            employeeID = value
        End Set
    End Property
End Class

Kemudian buat list yang bertipe class Employee

Dim objEmp As New List(Of Employee)

Isi list dengan object bertipe employee

'mengisi list dengan object bertipe class employee
        For intCount As Integer = 1 To 5
            objEmp.Add(New Employee(intCount + 100))
        Next

Untuk menampilkan atau mengambil nilai pada object employee dalam  list

'ambil semua nilai employeeID dari List
       For Each objId As Employee In objEmp
           Console.WriteLine(objId.EmpID)
       Next

3 thoughts on “Menggunakan Object Collection dan Generic (VB) Part 2

  1. Pak Erick terima kasih atas artikel yg telah ditulis.

    Akhir-akhir ini saya mencoba belajar generic list dgn browsing kesana-kemari. Banyak sih yang menulisnya termasuk tulisan bapak.

    Tetapi agak aneh bila saya mencari yang berhubungan dengan data access dengan ADO.net, semua tulisan atau artikel cirinya sama dengan punya bapak: tidak ada retrieve data dan insert/update data via ADO.net.

    Mungkin bila ada waktu, Pak Erick bisa menulis generic list dgn contoh yang cukup sederhana bila yang kompleks kurang berkenan.

    Intinya adalah Saya mencoba belajar bagaimana cara mengganti dataset dgn collection spt generic list karena Microsoft/banyak yang lainnya mengklaim collection lebih baik, lebih ringan, lebih cepat, lebih fleksibel, dll dalam hal data access.

    Terimah kasih banyak.

    1. Halo mas Wahyu, kalau mau membuat custom collection sendiri untuk menggantikan dataset emang agak kompleks aplikasinya, kalau mau anda dapat menggunakan framework yang sudah ada. Pernah dengar ORM? coba mas wahyu gunakan LINQ to SQL atau Entity Framework untuk data layer.

  2. Terima kasih atas balasannya Pak.

    Pak Erick Saya masih pake VB 2005 krn sampai detik ini masih kesulitan instal IDE untuk SQL Sever 2008 Express (connect dgn VB 2008 Express), padahal amat mudah di SQL Server 2005 Express : tinggal download SQLServer2005_SSMSEE.msi lalu instal, jadi dech: langsung connect dgn VB 2005.

    Setahu saya istilah LINQ to SQL atau Entity Framework untuk VS 2008 jadi agak atau tepatnya sangat sulit untuk implementasinya.

    Btw terima kasih atas jawabannya, tapi saya masih berharap Pak Erick mau meluangkan waktu nulis collection untuk data access via ADO.net meski hanya pengantar / dasar.

    SUKSES SELALU.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s