मैं व्यापक विशेषताओं के सेट के साथ उत्पादों को मॉडल करने का प्रयास कर रहा हूं। आम तौर पर एक ऑनलाइन स्टोर एक विशिष्ट उत्पाद के गुणों को सूचीबद्ध करने के लिए एक टेक्स्ट विवरण का उपयोग करेगा। हालांकि, यह समाधान इष्टतम नहीं है।एक गहरी विरासत पदानुक्रम के विकल्प?
उदाहरण के लिए, निम्न लिंक विशेषताओं की विसंगतियों एक ही उत्पाद के लिए एक पाठ वर्णन के भीतर, दिखाने लेकिन विभिन्न निर्माताओं के साथ:
इस प्रकार, मैंने निम्नानुसार विरासत पदानुक्रम का चयन किया है:
Product
>Component
>GraphicsCard
>NvidiaGraphicsCard
इस का कारण है, क्योंकि मैं प्रत्येक Product
की विशेषताओं से अधिक कुशल नियंत्रण चाहते हैं। यह मुझे NvidiaGraphicsCard
कहने के लिए विशिष्ट विशेषताओं को शामिल करने की अनुमति देता है जो ATiGraphicsCard
पर लागू नहीं हैं।
ध्यान दें कि, उपवर्गों के लिए और अधिक क्षेत्रों को जोड़ने के अलावा, विरासत मुझे एक OrderItem
होने के मामले में बहुरूपता का इस्तेमाल करते हैं अनुमति देता है एक Product
के लिए एक संदर्भ पकड़। यही कारण है कि मैंने रचना से इंकार कर दिया।
क्या ऐसी गहरी विरासत पदानुक्रम रखने में कोई समस्या है, और यदि इस समस्या को संभालने के लिए कोई समाधान या शायद पैटर्न हैं?