चार स्तम्भ हुन् Encapsulation, Abstraction, Inheritance, र Polymorphism। यिनीले OOP ले कोड कसरी संगठित र पुनः प्रयोग गर्छ भनी वर्णन गर्छन्।
चार स्तम्भ हुन् Encapsulation, Abstraction, Inheritance, र Polymorphism। यिनीले OOP ले कोड कसरी संगठित र पुनः प्रयोग गर्छ भनी वर्णन गर्छन्।
| स्तम्भ | मूल विचार |
|---|
| Encapsulation | डेटा + व्यवहार बाँध्नुहोस्; आन्तरिक स्थिति एक नियन्त्रित इन्टरफेस पछाडि लुकाउनुहोस् |
| Abstraction | object ले के गर्छ भनी देखाउनुहोस्, कसरी गर्छ भनी लुकाउनुहोस् |
| Inheritance | एक subclass ले parent class लाई पुनः प्रयोग गरी विस्तार गर्छ |
| Polymorphism | एक इन्टरफेस, रनटाइममा छनौट गरिएको धेरै कार्यान्वयन |
abstract class Shape { // ABSTRACTION: "what", not "how"
abstract double area(); // each shape decides its own formula
}
class Circle extends Shape { // INHERITANCE: Circle is a Shape
private double r; // ENCAPSULATION: r is private
Circle(double r) { this.r = r; }
double area() { return Math.PI * r * r; } // POLYMORPHISM: own area()
}
class Square extends Shape {
private double s;
Square(double s) { this.s = s; }
double area() { return s * s; }
}
Shape shape = new Circle(2); // POLYMORPHISM in action:
System.out.println(shape.area()); // calls Circle.area() at runtime
यी उपकरण हुन्, लक्ष्य होइनन्। जहाँ आवश्यक छैन वहाँ inheritance वा abstraction लागू गर्नु जटिलता सिर्जना गर्छ। समस्याको अनुरूप स्तम्भ रोज्नुहोस्।
यी चार शब्द OOP डिजाइनको साझा शब्दावली हुन् — अन्तर्वार्ता र कोड समीक्षाले तपाईं यिनी जान्नु भएको मान्छन्।
प्रत्येक स्तम्भ ठोस लाभमा मेल खान्छ: encapsulation ले invariants सुरक्षित गर्छ, abstraction ले तपाईंले बुझ्नुपर्ने कुरा घटाउछ, inheritance र polymorphism ले पुनः प्रयोग र विस्तारशीलता सक्षम गर्छन्।