ai
Composition OOP คือ — หลักการ Composition over

Composition OOP

Composition OOP Has-a Relationship Composition over Inheritance Dependency Injection Design Patterns Loose Coupling Flexibility Runtime Behavior Strategy Decorator
เนื้อหาเกี่ยวข้อง — แนะนำให้อ่าน Svelte 5 Runes High Availability HA Setup
| Concept | Relationship | Coupling | Flexibility | เหมาะกับ |
|---|---|---|---|---|
| Inheritance | Is-a | Tight | ต่ำ | True Hierarchy |
| Composition | Has-a | Loose | สูง | ทั่วไป |
| Aggregation | Has-a (weak) | Loose | สูง | Optional Parts |
| Interface | Can-do | Very Loose | สูงมาก | Contract |
| Mixin | Mixed-in | ปานกลาง | ปานกลาง | Shared Behavior |

เคล็ดลับ
- Favor Composition: เลือก Composition ก่อน ใช้ Inheritance เมื่อจำเป็นจริงๆ
- Protocol: ใช้ Protocol/Interface กำหนด Contract
- DI: Inject Dependencies ผ่าน Constructor
- Small Classes: สร้าง Class เล็กๆ ทำหน้าที่เดียว แล้วรวมกัน
- Test: Composition ทำให้ Mock ง่าย Test ง่าย
Composition ใน OOP คืออะไร
สร้าง Object รวม Object อื่น Has-a Relationship แทน Inheritance ยืดหยุ่น เปลี่ยน Runtime Loose Coupling Test ง่าย Mock ง่าย
แนะนำเพิ่มเติม — XM Signal
เนื้อหาเกี่ยวข้อง — ดูเพิ่มเติมเรื่อง Prometheus PromQL Observability Stack
เนื้อหาเกี่ยวข้อง — ดูเพิ่มเติมเรื่อง Prometheus PromQL DevOps Culture





