Delegate จะเก็บตําแหน่ง Address ของ Method ที่ต้องการจะเรียกใช้ ทําให้เราสามารถเรียกใช้ Method ใดๆ ผ่าน Delegate ได้ คุณอาจจะสงสัยว่า ทําไมไม่เรียกใช้ Function ตรงๆไปเลย ข้อดีของการเรียกผ่าน Delegate คือสามารถเรียก Mathod ของ Class อื่นได้
ตัวอย่างการใช้งาน ในบทความนี้ จะสร้างคลาส Class1 และคลาส Form1 โดยคลาส Class1 มี Delegate ชื่อว่า det สําหรับเรียกใช้ Method จากภายนอก ส่วนคลาส Form1 มี Method ชื่อ cal และ Form_Load

delegate class diagram การทํางานจะเริ่มจาก Form_Load โดยจะสร้าง Object ของคลาส Class1 หลังจากนั้นเรียก Method ชื่อ method1 โดยส่ง Adress ของ cal ไปให้กับ Delegate ในคลาส Class1 ทําให้คลาส Class1 สามารถเรียกใช้ Method cal จากคลาส Form_Load ได้ คลาส Class1
Public Class Class1
Public Delegate Function det(ByVal x As Integer, ByVal y As Integer)
Public Function method1(ByVal fnInput As det)
MsgBox(fnInput(9, 1)) 'เรียก Method จากภายนอก
End Function
End Class
คลาส Form1
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim obj As New Class1()
obj.method1(AddressOf cal) 'เรียก Method ของคลาส Class1 โดยที่คลาส Class1 จะไปเรียก Method cal ของคลาส Form1
End Sub
Public Function cal(ByVal x As Integer, ByVal y As Integer) As Integer
Return x + y
End Function
End Class
Output:

รูป Output โหลด Project ตัวอย่าง>>> delegate example vs2008 ข้อมูลเพิ่มเติมที่>>> artit-k.com/dev-callback-vb-net/
BMS ย่อมาจาก Battery Management System หรือถ้าแปลเป็นไทยก็คือ ระบบจัดการแบตเตอรี่ ซึ่งจะทําหน้าที่ในการ Maintain balance cell battery เพื่ออัดไฟให้เต็มมากที่สุด และยืดอายุการใช้งานแบตเตอรี่ หากยังนึกภาพไม่ออก ผมจะยกตัวอย่างดังนี้ครับ เมื่อเรานําแบตเตอรี่หลายๆก้อนมาต่อกันแบบอนุกรมเพื่อให้ได้แรงดันไฟฟ้าตามที่เราต้องการแบบในรูป
ในบทความที่แล้ว เราทำความรู้จักกับ Neo Pixel WS2813 กันไปแล้ว วันนี้ผมจะมาแนะนำเรื่อง การนำ Raspberry Pi2 มาควบคุม Neo Pixel WS2812B
ในปัจจุบันเทคโนโลยี Internet มีการพัฒนาอย่างรวดเร็วทําให้เราเข้าถึง และใช้งาน Internet มากขึ้น ทําให้เกิดธุรกิจที่เกี่ยวข้องกับ Internet จํานวนมาก ร้านค้าใช้ Internet มาช่วยในการดําเนินธุรกิจ ในบทความนี้ผมจะพูดเกี่ยวกับ Payment Gateway หรือช่องทางการชําระเงินออนไลน์ของผู้ให้บริการเจ้านึงคือ Omise และมาลองเปรียบเทียบกับ Payment Gateway เจ้าอื่นๆ