मैं एक अजीब डिजाइन समस्या में फंस कर रहा हूँ,एकल मेज विरासत और जहां
मैं प्रोफाइल मॉडल की एक दो प्रकार पर काम कर रहा हूँ,
- उपयोगकर्ता प्रोफ़ाइल रेल में इसका उपयोग करना (उपयोगकर्ता के अंतर्गत आता है)
- दूसरों कि "बोट्स" के रूप में में साइट को बनाए रखने रहे हैं (किसी का नहीं है)
प्रोफाइल की इन दो प्रकार के विशिष्ट OO व्यवहार में ही है, लेकिन केवल महत्वपूर्ण विशेषताएँ/गुण हैं आम (संख्या में 5-6 बहुत महत्वपूर्ण), अन्य हितों जैसे "हितों आदि" (लगभग 10-15 गुण) बॉट प्रोफाइल
कोडर जिन्होंने इस पर काम किया था, अलग-अलग मॉडल/नियंत्रकों के लिए बनाया गया था बॉट प्रोफाइल/उपयोगकर्ता प्रोफाइल जो हर जगह बहुत सारी अनावश्यकता पैदा करते हैं और साथ ही बनाए रखने के लिए कड़ी मेहनत करते हैं, परीक्षण लिखते हैं। मैं इसे कम करना चाहता था, कम से कम इन सभी अनावश्यक समस्याओं को हल करने के लिए।
किसी एक समाधान
किसी बजाय सुझाव का प्रयोग करें बहुरूपी संघों के रूप में एकल तालिका विरासत का सुझाव दिया।
बेहतर दृष्टिकोण क्या है। हम वास्तव में एसटीआई का उपयोग कब करते हैं?
मेरा स्वयं का विचार था कि एसटीआई का सबसे अच्छा उपयोग किया जाता है जब मॉडल मॉडल के लिए समान होते हैं और वे व्यवहार में भिन्न होते हैं।
विचार मैं क्या कर सकता हूं?
मैं एसटीआई के साथ प्रयोग करने जा रहा हूं, मुझे लगता है। लेकिन अगर मेरे पास केवल कुछ सामान्य गुण हैं तो मुझे क्या समस्याएं आ सकती हैं? –
नियंत्रकों से निपटने का एक और तरीका उनको उपclass करना है, मॉडल की तरह ... रिफैक्टर सामान्य तरीकों को उनके बीच साझा करने के लिए। –
@ एंड्रयू: आईएमई, जो लगभग (अपेक्षाकृत दुर्लभ) बेयर-हड्डियों के मचान सीआरयूडी मामले को छोड़कर मॉडल के लिए सबक्लासिंग के साथ-साथ काम नहीं करता है। – womble