मैं एक विशेष इंजीनियरिंग अनुप्रयोग के लिए कक्षा पुस्तकालय तैयार करने की कोशिश कर रहा हूं और मैं यह सुनिश्चित करने की कोशिश कर रहा हूं कि मेरी कक्षा & नामस्थान नामकरण सम्मेलन समझ में आता है।सी # नामस्थान और वर्ग/उप-वर्ग नामकरण सम्मेलन जब शीर्ष नामस्थान में बेस क्लास और आंतरिक नामस्थान होते हैं तो उप-वर्ग
namespace Vehicle{
class Wheel{...} //base class for Wheel objects
class Engine{...} //base class for Engine objects
...
namespace Truck{
class Wheel: Vehicle.Wheel{...} //Truck specific Wheel object
class Engine: Vehicle.Engine{...} //Truck specific Engine object
...
}
namespace Car{
class Wheel: Vehicle.Wheel{...} //Car specific Wheel object
class Engine: Vehicle.Engine{...} //Car specific Engine object
...
}
...
}
कोड तरीके कि इन कक्षाओं के सभी एक ही दायरे के भीतर से संदर्भित किया जा करने की आवश्यकता होगी में इस्तेमाल किया जाता है:
मैं निम्नलिखित स्थिति है। निम्नलिखित स्थिति की संभावना होगी:
...
Vehicle.Wheel.DoSomething();
Vehicle.Truck.Wheel.DoSomething();
Vehicle.Car.Wheel.DoSomething();
...
इन परिस्थितियों में, मैं बेहतर रूप में पहली उदाहरण में दिखाया गया और जानकारी पर भरोसा कक्षाएं अधिक विशिष्ट नाम
namespace Car{
class CarWheel: Vehicle.Wheel{...} //Car specific Wheel object
...
}
या नामकरण छोड़ दे रही है स्पष्टता के लिए नामस्थान में एन्कोड किया गया है? बाद के दृष्टिकोण के तहत, मुझे लगता है कि मैं कोड में स्पष्टता के लिए अलगाव का उपयोग करना चाहता हूं जो इस पुस्तकालय का उपयोग करता है, corret?
यह है करने के लिए redundent लगता है:
Vehicle.Car.CarWheel
या
Vehicle.Truck.TruckEngine
लेकिन मैं यह भी बहुत वर्णनात्मक और विशिष्ट वर्ग के नाम करना चाहते हैं।
दार्शनिक रूप से, मैं जो पूछ रहा हूं वह कक्षा के नाम के हिस्से के रूप में नामस्थान को शामिल करना है या नहीं, यह मानते समय कि कक्षा का नाम वर्णनात्मक है या नहीं।
"आम तौर पर बहुवचन नामस्थान" बिट ने मुझे बहुत मदद की - धन्यवाद! – mskfisher