कुछ ऐसे विषय हैं जो इस प्रश्न से आते हैं:
- वर्गों बनाम इंटरफेस
- कई विशिष्ट वर्गों, संग्रह, सूची, सरणी से कौन सा विशिष्ट वर्ग?
- आम कक्षाएं बनाम सबमिट ("जेनरिक") संग्रह
आप इसके ऑब्जेक्ट ओरिएंटेड एपीआई पर प्रकाश डालना चाह सकते हैं
वर्गों बनाम इंटरफेस
यदि आपके पास इंटरफेस के साथ बहुत अनुभव नहीं है, तो मैं कक्षाओं के लिए छड़ी की सलाह देता हूं। मैं कई बार डेवलपर्स को इंटरफेस में कूदते हुए देखता हूं, भले ही वह नॉटिलरिली न हो।
और, अंत में, एक अच्छे क्लास डिज़ाइन के बजाय, एक खराब इंटरफ़ेस डिज़ाइन कर रहा है, जो कि, अंत में, एक अच्छे इंटरफ़ेस डिज़ाइन के लिए माइग्रेट किया जा सकता है ...
यदि आपको इसकी आवश्यकता नहीं है, तो आपको एपीआई में बहुत सारे इंटरफेस दिखाई देंगे, लेकिन, जल्दी मत करो।
आप अंततः सीखेंगे कि अपने कोड में इंटरफेस कैसे लागू करें।
कई विशिष्ट वर्गों, संग्रह, सूची, सरणी से कौन सा विशिष्ट वर्ग?
C # (डॉटनेट) में कई कक्षाएं हैं जिन्हें आपस में जोड़ा जा सकता है। जैसा कि पहले ही उल्लेख किया गया है, यदि आपको अधिक विशिष्ट वर्ग से कुछ चाहिए, जैसे कि "कैनबर्सोल्डक्लास", तो इसे अपने एपीआई में स्पष्ट करें।
क्या आपके एपीआई उपयोगकर्ता को वास्तव में यह जानने की जरूरत है कि आपकी कक्षा को हल किया जा सकता है, या तत्वों के लिए कुछ प्रारूप लागू किया जा सकता है? फिर "CanBeSreadClass" या "ElementsCanBePaintedClass" का उपयोग करें, अन्यथा "GenericBrandClass" का उपयोग करें।
अन्यथा, अधिक सामान्य वर्ग का उपयोग करें।
सामान्य संग्रह कक्षाएं बनाम सबमिट ("जेनरिक") संग्रह
आप पाएंगे कि ऐसी कक्षाएं हैं जिनमें अन्य तत्व शामिल हैं, और आप यह निर्दिष्ट कर सकते हैं कि सभी तत्व एक विशिष्ट प्रकार के होने चाहिए।
जेनेरिक कलेक्शंस वे क्लासेस हैं जिन्हें आप एक ही संग्रह का उपयोग कर सकते हैं, कई कोड एप्लिकेशन के लिए, एक नया संग्रह बनाने के लिए, प्रत्येक नए सबमिट प्रकार के लिए, जैसे: संग्रह ।
क्या आपके API उपयोगकर्ता को सभी तत्वों के लिए एक ही विशिष्ट प्रकार की आवश्यकता है?
जैसे कुछ का उपयोग करें List<WashingtonApple>
।
क्या आपके एपीआई उपयोगकर्ता को कई संबंधित प्रकारों की आवश्यकता है?
List<Fruit>
अपने एपीआई के लिए बेनकाब , और उपयोग List<Orange>
List<Banana>
, List<Strawberry>
आंतरिक रूप से, जहां Orange
, Banana
और Strawberry
से वंशज हैं Fruit
।
क्या आपके एपीआई उपयोगकर्ता को एक सामान्य प्रकार के संग्रह की आवश्यकता है?
उपयोग List
, जहां सभी आइटम हैं object
।
चीयर्स।