ert-logo

OOP คืออะไร ? การเขียนโปรแกรมแบบ OOP ทำงานยังไง

OOP คืออะไร

💌 ในโลกของการเขียนโปรแกรม Object-Oriented Programming (OOP) ได้กลายเป็นแบบอย่างอันทรงพลังที่ช่วยให้นักพัฒนาสามารถสร้างซอฟต์แวร์ที่มีประสิทธิภาพสูงได้ด้วยการจัดระเบียบโค้ดให้เป็นวัตถุ (Object) และต้นแบบ (Class) ในบทความนี้เรามาทำความเข้าใจกันว่า OOP คืออะไร และมีหลักการทำงานยังไง ไปดูกัน 

 

OOP คืออะไร ?

Object-Oriented Programming หรือ OOP คือ การเขียนโปรแกรมเชิงวัตถุ ซึ่งเป็นแบบจำลองในการเขียนโปรแกรมที่เน้นมองสิ่งต่างๆ ในระบบให้เป็น Object การทำแบบนี้จะช่วยให้นักพัฒนาสามารถจัดระเบียบโค้ดและเข้าใจการทำงานในภาพรวมมากขึ้น และยังมีอีกส่วนที่สำคัญนั่นก็คือ Class ที่ทำหน้าที่เป็นต้นแบบสำหรับการสร้าง Object โดย Class จะกำหนดคุณสมบัติ (Attributes) และพฤติกรรม (Methods) ที่ Object ของ Class นั้นควรจะมี

ต้องบอกก่อนว่า คุณสมบัติ (Attributes) จะแสดงถึงสถานะและคุณลักษณะของ Object ส่วนพฤติกรรม (Methods) จะมีหน้าที่ในการกำหนดการกระทำของ Object ที่สามารถทำได้ หลายคนอาจจะเริ่มงงนิดหน่อยงั้นเรามายกตัวอย่างง่ายๆ เช่น สมมติเรามีหมา 1 ตัว หมาตัวนี้จะมีคุณสมบัติ (Attributes) คร่าวๆ คือ สี อารมณ์  พลังงาน น้ำหนักและส่วนสูง ส่วนพฤติกรรม (Methods) ก็จะมี การเห่า นอน วิ่ง พูดและนั่งได้ เป็นต้น

 

หลักการทำงานของ OOP

1. Encapsulation

👉 การซ่อนข้อมูลถือเป็นหลักการพื้นฐานของ OOP โดยจะทำการซ่อนข้อมูลในส่วนของ Class อย่างคุณสมบัติ (Attributes) และพฤติกรรม (Methods) ที่เกี่ยวข้องภายใน Object ให้เป็นแบบ Private ไว้เพื่อป้องกันการเข้าถึงจากภายนอกได้และกำหนดให้สามารถเข้าถึงได้เฉพาะในส่วนที่เรากำหนดให้เป็น Public เท่านั้น

  • ยกตัวอย่างเช่น หมาตัวเดิมของเรา (Object) จะมีข้อมูลบางส่วนที่ถูกเก็บไว้เป็นความลับจากภายนอก เช่น พลังงาน (Private Attributes) อารมณ์ (Private Attributes) การเห่า (Private Methods) การนอน (Private Methods) ซึ่งจะมีแค่ตัวมันเองที่รู้ข้อมูลนี้ขอเรียกส่วนนี้ว่าเป็น Private และในส่วนที่เราสามารถเข้าถึงได้หรือสามารถกระทำกับหมาตัวนี้ได้ก็คือ การฝึกหมา (Public Methods) และการเล่นกับหมา (Public Methods) โดยเราจะเรียกส่วนนี้ว่าเป็น Public การกระทำเหล่านี้ส่งผลให้อาจเกิดการเปลี่ยนแปลงภายในของข้อมูลหมา (Private Attributes) ได้ซึ่งจะจัดการหรือเกิดการเปลี่ยนแปลงอะไรเราก็ไม่จำเป็นต้องรู้

 

OOP คืออะไร

2. Abstraction

👉 Abstraction ต่อยอดมากจาก Encapsulation คือการเปิดเผย Object เฉพาะส่วนที่จำเป็นต่อการใช้งานโดยเราไม่จำเป็นต้องรู้การทำงานหรือรายละเอียดภายในของมัน

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

 

OOP คืออะไร

3. Inheritance

👉 การสืบทอดคุณสมบัติใน OOP นั้นช่วยให้เราสามารถสร้าง Class ใหม่ได้โดยเอาคุณสมบัติ (Attributes) และพฤติกรรม (Methods) จาก Class ที่มีอยู่แล้วมาสร้างและเพิ่มคุณสมบัติ (Attributes) กับพฤติกรรม (Methods) เฉพาะตัวเข้าไปเพิ่มได้

  • ยกตัวอย่างเช่น เราตั้งชื่อ Class ตัวหลักว่า Animal โดยมีคุณสมบัติ (Attributes) คือ สีและน้ำหนัก ส่วนพฤติกรรม (Methods) คือ นอนและวิ่ง จากนั้นเราจะสร้าง Class ย่อยที่มีชื่อว่า หมาและแมว ซึ่งทั้งสองคลาสย่อยนี้จะมีลักษณะที่สืบทอดมาจาก Class หลักคือ การนอน การวิ่ง สีและน้ำหนัก โดยอาจจะมีคุณสมบัติ (Attributes) และพฤติกรรม (Methods) เพิ่มเติมขึ้นมา เช่น เขี้ยว เล็บ ร่าเริง อ้อน เป็นต้น

 

OOP คืออะไร

4. Polymorphism

👉 ช่วยให้สามารถใช้ Object ที่มีคุณสมบัติ (Attributes) และพฤติกรรม (Methods) ที่แตกต่างกันได้ใน Class เดียวกันหรือก็คือตัว Class หลักจะกำหนดคุณสมบัติ (Attributes) และพฤติกรรม (Methods) เอาไว้และให้ Class ย่อยต่างๆ ไประบุรายละเอียดต่างๆ ของคุณสมบัติ (Attributes) และพฤติกรรม (Methods) เอง

  • ยกตัวอย่างเช่น Class ตัวหลัก Animal เรามีพฤติกรรม (Methods) คือการวิ่งและให้ Class ย่อยอย่างหมาและแมวไปสร้างรายละเอียดการวิ่งกันเอง โดยหมาและแมวจะวิ่งได้เหมือนกันแต่ท่าทางการวิ่งจะแตกต่างกันไป

 

OOP คืออะไร

สรุป

รู้กันไปแล้วว่า OOP คืออะไร สรุปแล้ว โปรแกรมเชิงวัตถุ (Object Oriented Programming – OOP) นั้นมีความได้เปรียบทางด้านการพัฒนาซอฟต์แวร์อย่างมาก ด้วยประโยชน์ที่หลากหลายเช่นการใช้โค้ดได้ซ้ำซ้อน การแยกโค้ดเป็นส่วนย่อย การดูแลที่ง่ายและยืดหยุ่นรวมถึงช่วยให้นักพัฒนาสามารถเขียนโค้ดที่ได้เรียบร้อยและมีประสิทธิภาพที่สูงขึ้นอีกด้วย

 

______________________________________________________________________________ 

💖 สำหรับใครที่ต้องการศึกษาเพิ่มเติมเกี่ยวกับการพัฒนาโค้ด  ทาง ERT ศูนย์ฝึกอบรมของเราก็มีคอร์สมามากมายมาแนะนำให้เพื่อนๆ เลือกกัน ซึ่งสามารถเลือกเรียนได้ทั้งแบบ Onsite และ Classroom มีทั้งแบบ Private และ Public ด้วยนะ

 

Ref: techtarget.com

 

💬 🙋‍♀ สอบถามเพิ่มเติมสามารถติดต่อมาได้ที่

📞 Tel: 02-718-1599

💻 Website: https://www.ert.co.th

📱 Line: https://lin.ee/wtyQVtl



3 thoughts on “OOP คืออะไร ? การเขียนโปรแกรมแบบ OOP ทำงานยังไง

Leave a Reply

Your email address will not be published. Required fields are marked *

The Enterprise Resources Training Co.,Ltd. 2922/135-136, 3rd Fl. Room 331-332, Charn Issara Tower II, New Petchburi Road, Bangkapi, Huaykwang, Bangkok 10320
PRIVACY & COOKIES

© 2024 · The Enterprise Resources Training Co.,Ltd

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • Always Active

Save