Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

การเขียนโปรแกรมเชิงวัตถุ (OOP) ใน JavaScript คืออะไร

JavaScript เป็นภาษา Object Oriented Programming (OOP) ภาษาโปรแกรมจะถูกเรียกว่าเชิงวัตถุได้ หากให้ความสามารถพื้นฐาน 4 ข้อต่อไปนี้แก่ผู้พัฒนา:

  • Encapsulation (การห่อหุ้ม) – ความสามารถในการเก็บข้อมูลหรือเมธอดที่เกี่ยวข้องร่วมกันภายในอ็อบเจ็กต์
  • Aggregation (การรวมกลุ่ม) – ความสามารถในการเก็บอ็อบเจ็กต์หนึ่งไว้ภายในอีกอ็อบเจ็กต์หนึ่ง
  • Inheritance (การสืบทอด) – ความสามารถของคลาสในการพึ่งพาคลาสอื่น (หรือหลายคลาส) สำหรับพรอเพอร์ตี้และเมธอดบางส่วน
  • Polymorphism (หลายรูปแบบ) – ความสามารถในการเขียนฟังก์ชันหรือเมธอดหนึ่งที่ทำงานได้หลายรูปแบบต่างกัน

อ็อบเจ็กต์ประกอบด้วยแอตทริบิวต์ (attributes) หากแอตทริบิวต์มีฟังก์ชัน จะถือว่าเป็น เมธอด (method) ของอ็อบเจ็กต์ มิฉะนั้นจะถือว่าเป็น พรอเพอร์ตี้ (property)

หมายเหตุสำคัญ

JavaScript ใช้ Prototype-based Inheritance ไม่ใช่ Class-based เหมือน Java หรือ C++ (แม้ ES6 จะเพิ่ม syntax class เข้ามา) ทำให้รูปแบบ OOP ใน JS มีความแตกต่างและยืดหยุ่นกว่า