Fitur VB9 (Partial Method)

Halo, ini adalah posting keenam saya tentang fitur dari VB9 yaitu Partial Method, anda dapat melihat posting saya sebelumnya:

  • Implicitly typed local vaiable
  • Object initializer
  • Anonymous types
  • Nullable types
  • If Ternary operator

Partial Method pada VB9 adalah fitur yang hampir sama dengan Partial Class yang sudah ada pada VB8, Partial Class pada VB8 sangat berguna terutama untuk memisahkan kode yang digenerate secara otomatis oleh Visual Studio.

Partial method pada VB9 digunakan dengan tujuan memudahkan kita untuk merubah method yang ada pada class yang di generate oleh tools, misal pada penggunaan LINQ to SQL. Karena ketika kita melakukan perubahan terhadap class yang digenerate oleh tools (mis: LINQ to SQL / SQL Metal) maka ketika kita menggenerate class baru lagi dengan menggunakan tools, kemungkinan code kita yang lama akan teroverride oleh code yang digenerate oleh tools tersebut.

Misal class yang digenerate oleh tools sebagai berikut

Class Mahasiswa
    Private _nim As String
    Public Property Nim() As String
        Get
            Return _nim
        End Get
        Set(ByVal value As String)
            _nim = value
        End Set
    End Property
End Class

Kemudian mungkin anda ingin menambahkan method dalam class yang sudah digenerate oleh tools diatas

Class Mahasiswa
    Private _nim As String
    Public Property Nim() As String
        Get
            Return _nim
        End Get
        Set(ByVal value As String)
            CekNim(value)
            _nim = value
        End Set
    End Property
    Private Sub CekNim(ByVal value As String)
        If value = String.Empty Then
            Console.WriteLine("Nim tidak boleh kosong !!")
        End If
    End Sub
End Class

Ketika anda mapping table baru kedalam class (mis: LINQ to SQL) maka class diatas akan degenerate ulang oleh tools, dan method yang anda tambahkan akan hilang karena dioverride oleh code hasil dari tools. Nah bagaimana caranya agar anda dapat menambahkan method pada code hasil geberate dari tools? jawabannya adalah dengan partial method, dengan partial method anda dapat memisahkan method tersebut kedalam file yang berbeda.

Class Mahasiswa
    Private _nim As String
    Public Property Nim() As String
        Get
            Return _nim
        End Get
        Set(ByVal value As String)
            CekNim(value)
            _nim = value
        End Set
    End Property
    Partial Private Sub CekNim(ByVal value As String)
    End Sub
End Class
Partial Class Mahasiswa
    Private Sub CekNim(ByVal value As String)
        If value = String.Empty Then
            Console.WriteLine("Nim tidak boleh kosong !!")
        End If
    End Sub
End Class

Nah fitur partial class ini akan sangat berguna ketika anda menggunakan LINQ to SQL untuk menggenerate code mapping dari table

Selamat Mencoba ^_^

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 )

Facebook photo

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

Connecting to %s