उदाहरण के लिए:
मैं वर्ग का कहना है कि A
, B
, C
। मैं दो इंटरफेस है, की सुविधा देता है उन्हें फोन IAnimal
और IDog
। IDog
से विरासत में मिला है IAnimal
। A
और B
कर रहे हैं IDog
, रों जबकि C
नहीं है, लेकिन यह एक है IAnimal
।
महत्वपूर्ण हिस्सा यह है कि IDog
कोई अतिरिक्त कार्यक्षमता की आपूर्ति नहीं करता है। इसका उपयोग केवल अनुमति देने के लिए किया जाता है A
और कुछ विधियों के तर्क के रूप में पारित B
नहीं C
किया जाता है।
क्या यह बुरा अभ्यास है?
MyProject.Data.IAnimal
और MyProject.Data.Animal
से बेहतर हैं MyProject.Data.Interfaces.Animal
और MyProject.Data.Implementations.Animal
Interface
या Implementation
एक दोहरावदार उपसर्ग या एक नाम स्थान में है, तो भी परवाह करने का कोई कारण नहीं होना चाहिए , यह किसी भी तरह से एक मनोविज्ञान है और DRY का उल्लंघन करता है। Dog
आप सभी का ध्यान रखना चाहिए। PitBull extends Dog
या तो अतिरेक को लागू करने की आवश्यकता नहीं है, शब्द extends
मुझे बताता है कि मुझे अपने मूल टिप्पणी में पोस्ट किए गए लिंक को जानना होगा।
IAnimal
औरIDog
कर रहे हैं भयानक अनुलाप नाम!