Development :: ก้าวแรกกับ LINQ


คำเตือน:: เนื้อหาเหมาะกับบุคลากรที่ทำงานหรือมีความสนใจการออกแบบและพัฒนาระบบเทคโนโลยีสารสนเทศ การพัฒนาซอฟแวร์คอมพิวเตอร์

ตั้งแต่ microsoft ได้เสนอ .net framework 3.5 ออกมา
เราก็มีเทคโนโลยีใหม่ เครื่องมือใหม่ ได้ใช้กันอีกแล้ว
หากท่านสนใจว่ามีอะไรใหม่ๆก็โปรดศึกษาได้จาก

What's New in the .NET Framework Version 3.5

และที่ผมเลือกที่จะศึกษาคือ .... LINQ ครับ
ว่าแต่มันคืออะไร จะอ่านว่าอะไร
ลิน คิว ... ???
ลิ้งขึ ...???
อืมช่างเถอะครับมาดูภาพคร่าวๆของมันดีกว่า

ย้อนไปสักนิด การพัฒนาระบบงานที่มีความเกี่ยวข้องกับฐานข้อมูล ทั้งแบบที่ซับซ้อนนิดหน่อยไปถึงซับซ้อนมากหน่อย
การทีจะแสดงข้อมูลยอดการขายสินค้าเราจะต้องดำเนินการดังต่อไปนี้ (อย่างคร่าวๆนะครับ)

1.สร้างเพจการเรียกแสดงรายการสินค้า
2.เขียน Server side script เพื่อเรียกรายการสินค้า
3.เขียนคำสั่ง SQL เพื่อเรียกข้อมูลรายการสินค้า

ดูๆแล้วก็ไม่มีอะไรแปลกนะครับ ผมก็ทำแบบนี้มานานนแล้ว....
แต่เดี๋ยวก่อน !! ท่านเองก็น่าจะเคยนึกเหมือนกันใช่ใหมว่า

???ทำไมภาษาที่ใช้เขียนโปรแกรมอยู่นี้
ถึงไม่เข้าไปจัดการกับฐานข้อมูลได้โดยตรงล่ะ !!!
สมัยก่อนอาจจะไม่แต่ปัจจุบันนี้ สามารถอาศัย LINQ ได้แล้ว
เพราะเราจะสามารถเขียนโปรแกรมเพื่อติดต่อเข้าถึงฐานข้อมูล
เข้าถึงตาราง เข้าถึงฟิลด์ โรว์ ได้แล้ว
ไม่เฉพาะฐานข้อมูลเท่านั้นครับ แหล่งข้อมูลอื่นๆก็เข้าถึงได้เช่นกัน
เมื่อ LINQ เข้ามาช่วยการทำงานจะได้ลักษณะงานดังภาพนี้

 

หากท่านที่เขียนโปรแกรมเชิงวัตถุท่านคงชอบใจแน่ๆครับ
เพราะเราสามารถจัดการกับตารางได้เสมือนกับเป็น object หนึ่งเลยก็ว่าได้
แต่ข้อจำกัดก็เห็นจะเป็นที่ติดต่อได้กับฐานข้อมูลของ microsoft เองเท่านั้นครับ
หากว่าอนาคตสามารถติดต่อกับเจ้าอื่นๆได้ ก็คงเป็นเรื่องดีของ microsoft เอง

LINQ ย่อมาจาก Language Integrated Query
แปลตรงตัวเลยครับมันเป็นภาษาเพื่อการ Query ข้อมูลแบบผสานในภาษาโปรแกรมมิ่ง
LINQ ที่ผมสนใจ และนำเสนอต่อท่าน ณ ขณะนี้เป็น LINQ to SQL นะครับนอกจากนี้ยังมีตัวอื่นๆอีกที่น่าสนใจ
สำหรับ LINQ to SQL นี้จะเป็น object relation mapping ผมเรียกว่าการสร้างความเชื่อมโยงกับวัตถุ


ขอยืมภาพจาก http://greatfriends.biz/webboards/msg.asp?id=50209

การเข้าถึงข้อมูล โดยอาศัยความสามาถของ LINQ สามารถทำได้ง่ายมากโดยอาศัยเครื่องมือของ VS2008
การเข้าถึงข้อมูลระดับต่างๆนี้ ก็สามารถเข้าถึงได้ทั้งฟิล์ โรว์ ตาราง ซึ่งจะเล่าให้ฟังอีกครั้งนะครับ


ภาพแสดงการเข้าถึงข้อมูลภายในผ่าน LINQ

นอกจากนี้ LINQ ยังรองรับกับ Transaction, View, Store Procedured (ถ้าทำไม่ได้ก็ไม่เจ๋งจริงอ่ะดิ ฮาๆๆๆ)
คราวนี้นักพัฒนาก็จะทำงานง่ายขึ้น ยืดหยุ่นขึ้น เพราะ tool มันช่วยหรอกนะคับ
แน่นอนว่าเครื่องคอมพิวเตอร์ที่มีแรมน้อยกว่า 1 G คงต้องเพิ่มกันล่ะทีนี้
แต่อย่างไรก็ตามนะครับผมไม่คิดว่า LINQ จะมาแทนที่เทคโนโลยีเดิม
อย่างภาษา SQL หรือ ADO ที่เคยมีมาซะทั้งหมดหรอกนะครับ
อาจจะมีความสามารถบางอย่างที่ LINQ ทำไม่ได้ก็ได้ อืมม
อันนี้ต้องลองดูกันต่อไปนะครับ

หากท่านสนใจ LINQ สามารถศึกษาได้จาก

http://greatfriends.biz/webboards/msg.asp?id=50209
เป็นเว็บไทยครับนักพัฒนา .net เยอะเลย อ้อ หากท่านต้องการคอร์สอบรมอย่างโปรก็เชิญดูได้จากที่นี่ครับ

http://weblogs.asp.net/scottgu/archive/2007/05/19/using-linq-to-sql-part-1.aspx
ตาสก้อตเค้าเขียนด้วยภาษาง่ายๆนะครับ

http://msdn.microsoft.com/en-us/library/bb425822.aspx
ที่นี่เป็น library จาก microsoft เองหากท่านต้องการรายละเอียดเชิงลึกที่นี่เหมาะกับท่านครับ

http://www.asp.net/learn/linq-videos/
หากท่านเบื่อจะอ่าน งั้นมาลองฟังและดูจากที่นี่ครับ

เท่านี้ก็น่าจะพอนะครับ สุดท้ายนี้
ขอให้มีความสุขกับ LINQ ครับ

 

คำสำคัญ (Tags): #.net framwork 3.5#development#linq
หมายเลขบันทึก: 308738เขียนเมื่อ 26 ตุลาคม 2009 21:34 น. ()แก้ไขเมื่อ 6 กันยายน 2013 21:47 น. ()สัญญาอนุญาต: ครีเอทีฟคอมมอนส์แบบ แสดงที่มา-ไม่ใช้เพื่อการค้า-อนุญาตแบบเดียวกันจำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (0)

ไม่มีความเห็น

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท