รวบรวม Code ต่างๆนานา ที่เคยพบเจอมาจากประสบการณ์

UNDERGROUND PROGRAMMER PRESENT

วันจันทร์ที่ 4 กันยายน พ.ศ. 2560

VB.NET Code#10 non-Generic Vs Genaric

ก็คงเคยได้ยินกันมาบ้างแล้วสำหรับคำว่า Generic หรือคำว่า non-Generic ว่าแต่มันคืออะไรละ ? 😵

เอาเป็นว่าบทความนี้จะมาเล่าเกี่ยวกับการเขียนโค้ดแบบ non-generic และแบบ generic นี้ละ เป็นบทความแบบสั้นๆ ง่ายๆ ได้ใจความ มาเริ่มกันเลยละกัน
ไหนลองเขียน !!!  ฟังก์ชั่น เปรียบเทียบค่าข้อมูลมาให้ดูสักหน่อยสิ (ถ้าเรียกในแนว OOP ก็คือสร้างเมธอด  (Method) นั่นเอง) โดยให้ทำการรับค่า (Parameter) เข้าไปด้วยนะ

อืมก็ได้อยู่... งั้นถ้าเปลี่ยนชนิดข้อมูลละ (Type) เช่นเปลี่ยนจาก Integer ไปเป็น Double, Decimal, String แบบนี้ทำไงอ่ะ 😩😩
----> ตอบแบบกำปั้นทุบดิน ก็คงต้องเพิ่ม Function เข้าไปอีกเป็น CompareData_Double, CompareData_String ยาวไปสิจะมีกี่ชนิดก็ใส่เข้าไป  เหอะๆ ตายๆ แบบนี้ตายแน่นอน

เอาละมาลองคิดดีๆ !! สิ่งที่แตกต่างกันออกไปก็คือ ชนิดข้อมูล (Type)  ของ parameter นั่นเอง ซึ่งแน่นอนเลยว่าการเขียนโค้ดแบบนี้ มันก็จะทำให้โปรเจคของเรามีฟังค์ชั่นที่ทำงานเหมือนกันมากเกินความจำเป็น จึงได้มีการเขียนโค้ดวิธีใหม่ที่เรียกว่า Generic ขึ้นมา
ไหนมาดูกัน !! เขียนใหม่
จากโค้ดข้างต้น แบบนี้เราเรียกว่าการเขียนโค้ดแบบ generic (เอาแบบเต็มก็คือ เมธอดแบบ generic) ซึ่งจากที่เห็นก็คือ ตัวแปร value01 และ value02 จะไม่มีการกำหนดชนิดเลย ได้แต่รอรับชนิด ในตอน runtime เท่านั้น

สรุปง่ายๆ ก็คือ การเขียนโค้ดแบบ generic ก็คือการใช้งานชนิดข้อมูล (Type) ให้เหมือนกับเป็น parameter ตัวหนึ่งนั่นเอง ลองเอาไปประยุกต์ดูนะ เชื่อได้ว่าในหนึ่งโปรเจคของเรานั่นต้องมีการใช้งานที่เหมือนๆ กันอยู่แน่นอน  😎😎



ไม่มีความคิดเห็น:

แสดงความคิดเห็น