การเขียนโปรแกรมแบบวัตถุ (Object-Oriented Programming - OOP) เป็นวิธีการที่ให้ผู้พัฒนาโปรแกรมสามารถแบ่งโค้ดเป็นหน่วยย่อยๆ (object) ที่สามารถนำมาประกอบเข้าด้วยกันได้ ซึ่งแต่ละ object นี้จะประกอบด้วย data และ methods เพื่อแสดงพฤติกรรมของ object นั้นๆ การเขียนโปรแกรมแบบ OOP ได้รับความนิยมในหลายภาษาโปรแกรม เช่น Java, C++, Python และอื่นๆ แต่ทว่าการใช้งานใน COBOL อาจยังไม่เป็นที่แพร่หลายเท่าไรนัก
ภาษา COBOL (Common Business Oriented Language) ถูกสร้างมาสำหรับการใช้งานในด้านธุรกิจ ซึ่งมีความแข็งแกร่งในการจัดการข้อมูลขนาดใหญ่และธุรกรรมทีละมากๆ ในระบบ Mainframe แม้ว่าจะเริ่มมีการใช้งาน OOP ใน COBOL ตั้งแต่มีการแนะนำ COBOL 2002 เข้ามา แต่การใช้งานแบบ OOP ใน COBOL ยังคงเป็นเรื่องท้าทาย เนื่องจากว่าจำนวนผู้ที่คุ้นเคยกับการเขียนแบบโครงสร้าง (procedural programming) มานาน
ก่อนที่จะดำเนินการไปสู่ตัวอย่างโค้ด, บ่อยครั้งในการวิเคราะห์ use case และการสร้างโปรแกรมมีความสำคัญเท่ากับการเขียนโค้ดเอง เราควรจะคิดถึงสถานการณ์ในโลกจริงที่ COBOL และ OOP อาจถูกใช้ร่วมกัน เช่น ในระบบของธนาคารที่จัดการกับลูกค้า (object หนึ่งถูกนำไปใช้ เช่น Customer) และบัญชีของพวกเขา (อีก object เช่น Account).
ตัวอย่างที่ 1: การสร้าง Class Customer ใน COBOL
class-id. Customer public.
* ลักษณะของลูกค้า
01 Customer-Details private.
05 First-Name pic X(30).
05 Last-Name pic X(30).
* การตั้งค่าชื่อของลูกค้า
method-id. SetName public.
01 New-First-Name pic X(30).
01 New-Last-Name pic X(30).
procedure division using New-First-Name, New-Last-Name.
move New-First-Name to First-Name
move New-Last-Name to Last-Name
end method SetName.
end class Customer.
ตัวอย่างที่ 2: การสร้างและใช้งาน Object Customer
identification division.
program-id. UseCustomer.
environment division.
data division.
working-storage section.
77 myCustomer object reference Customer.
procedure division.
* สร้าง object
create Customer of class Customer giving myCustomer.
* ตั้งค่าชื่อลูกค้า
invoke myCustomer::SetName("Somchai", "Sombat").
...
* ทำความสะอาดและปิดการใช้งาน object
destroy myCustomer.
end program UseCustomer.
ตัวอย่างที่ 3: การสืบทอดคุณสมบัติ (Inheritance)
ในโลกจริง, อาจมีการใช้งาน inheritance เมื่อเราต้องการสร้างคลาสใหม่ที่มีลักษณะคล้ายคลาสที่มีอยู่และต้องการขยายคุณสมบัติของมัน เช่นสำหรับลูกค้าธนาคารที่มีบัญชีประเภทต่างๆ ตัวอย่างเช่น:
class-id. SavingsAccount inherits from Account.
...
end class SavingsAccount.
ในส่วนของการเชิญชวนผู้อ่านให้มาเรียนรู้การเขียนโปรแกรม, สิ่งสำคัญคือการทำให้เห็นประโยชน์ที่ตรงกับความต้องการส่วนตัวและการแก้ปัญหาในธุรกิจ เช่น การเข้าใจการใช้ OOP ใน COBOL อาจช่วยให้สามารถจัดการกับโปรแกรมที่มีความซับซ้อนและต้องใช้การแก้ไขอย่างต่อเนื่องในระบบ Mainframe ได้ดีขึ้น
การศึกษาที่ Expert-Programming-Tutor (EPT) จะช่วยให้คุณเข้าใจหลักการของ OOP อย่างลึกซึ้งพร้อมกับโอกาสในการประยุกต์ใช้ความรู้เหล่านี้ลงในทางปฏิบัติ ไม่เพียงแต่ในภาษา COBOL แต่ยังรวมถึงภาษาอื่นๆที่รองรับ OOP ซึ่งจะเป็นประโยชน์ต่อการพัฒนาการทำงานของคุณ ไม่ว่าคุณจะทำงานด้านไหนก็ตามในวงการ IT.
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
Tag ที่น่าสนใจ: oop object_oriented_programming cobol class inheritance mainframe programming_language procedural_programming use_case customer savings_account expert_programming it_industry
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM