การเขียนโปรแกรมแบบ Object-Oriented Programming (OOP) คือ กระบวนทัศน์ที่ช่วยให้โปรแกรมเมอร์สามารถจัดการกับโค้ดได้อย่างมีระเบียบและก่อให้เกิดความยืดหยุ่นในการพัฒนาซอฟต์แวร์ Polymorphism เป็นหนึ่งในคุณสมบัติหลักของ OOP ซึ่งช่วยให้ Objects ต่างๆ สามารถถูกใช้งานผ่าน interface ร่วมกันได้ แม้จะมาจากคลาสที่แตกต่างกัน
ก่อนที่เราจะไปยังตัวอย่างโค้ดในภาษา COBOL ซึ่งเป็นภาษาระดับสูงที่ถูกพัฒนาขึ้นในยุค 50s และไม่ได้ถูกออกแบบมาเพื่อ OOP โดยตรง ภาษา COBOL ในรูปแบบดั้งเดิมนั้นไม่รองรับ OOP อย่างเต็มรูปแบบ แต่การพัฒนาที่ต่อเนื่องได้มีการเพิ่มคุณสมบัติ OOP ลงไปในมาตรฐานของ COBOL เช่นใน COBOL 2002 มีการเพิ่มคุณลักษณะของ OOP เข้าไป
ในโลกการเขียนโปรแกรมภาษา COBOL วิธีการใช้งาน Polymorphism อาจไม่ชัดเจนเท่ากับภาษาที่ออกแบบมาเพื่อ OOP อย่าง Java หรือ C# แต่ทว่าก็ยังสามารถนำเสนอแนวคิดนี้ผ่านการใช้งาน interface และการ extend คลาสได้
ตัวอย่างที่ 1: การสร้าง Interface
INTERFACE 'IAnimal'
METHOD 'Speak' AS '0457'.
END-INTERFACE.
CLASS 'Dog' IMPLEMENTS 'IAnimal'
METHOD-ID. 'Speak' AS '0457'.
PROCEDURE DIVISION.
DISPLAY 'The Dog barks!'.
END METHOD 'Speak'.
END CLASS 'Dog'.
CLASS 'Cat' IMPLEMENTS 'IAnimal'
METHOD-ID. 'Speak' AS '0457'.
PROCEDURE DIVISION.
DISPLAY 'The Cat meows!'.
END METHOD 'Speak'.
END CLASS 'Cat'.
ในตัวอย่างนี้, 'IAnimal' เป็น interface ที่มีการกำหนดวิธีการพูด (Method 'Speak') และมีสองคลาสคือ 'Dog' และ 'Cat' ที่ implement method นี้
ตัวอย่างที่ 2: การใช้งาน Polymorphism
PROGRAM-ID. DemoPoly.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 Pet TYPE 'IAnimal'.
PROCEDURE DIVISION.
SET Pet TO NEW 'Dog'().
INVOKE Pet 'Speak'(). *> Output: The Dog barks!
SET Pet TO NEW 'Cat'().
INVOKE Pet 'Speak'(). *> Output: The Cat meows!
END PROGRAM DemoPoly.
ในตัวอย่างนี้เราสามารถเห็นการทำงานของ Polymorphism โดยที่ Object 'Pet' สามารถเป็น 'Dog' หรือ 'Cat'และเรียกใช้ method 'Speak' ของ Object นั้นๆ
ในโลกจริง, usecase ของ Polymorphism เช่นในซอฟต์แวร์เกี่ยวกับการจัดการข้อมูลพนักงานของบริษัท พนักงานทุกคนอาจจะถูกเรียกผ่าน interface เดียวกัน แต่แต่ละคลาสที่สืบทอด (subclass) อาจจะมีการนำเสนอวิธีการเรียกด้วยข้อมูลหรือรูปแบบที่แตกต่างกันไปตามหน้าที่หรือตำแหน่งงานของพวกเขา
การเรียนรู้และทำความเข้าใจใน OOP และ Polymorphism คือ ก้าวแรกของการกลายเป็นโปรแกรมเมอร์ที่สามารถประยุกต์และพัฒนาซอฟต์แวร์ที่มีความซับซ้อนได้อย่างมีประสิทธิภาพ Endogenously. ณ EPT (Expert-Programming-Tutor) เรามีหลักสูตรที่ตอบโจทย์และครอบคลุมถึงหลักการเหล่านี้ เพื่อเป็นการส่งเสริมให้นักเรียนของเราพัฒนาทักษะการเขียนโค้ดได้อย่างมืออาชีพและตอบสนองต่อความต้องการของตลาดงานในปัจจุบัน
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
Tag ที่น่าสนใจ: polymorphism oop cobol interface class method programming object-oriented_programming code_example use_case software_development expert-programming-tutor ept subclass high-level_language
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM
Copyright (c) 2013 expert-programming-tutor.com. All rights reserved. | 085-350-7540 | 084-88-00-255 | ntprintf@gmail.com