किसी प्रोजेक्ट के भीतर एक नई कक्षा को परिभाषित करते समय ऐसा करने के लिए सही/सर्वोत्तम अभ्यास क्या है?कक्षा गुणों को सही ढंग से परिभाषित करने के लिए कैसे करें?
public class MyClass
{
public string FirstName {get; set;}
public string LastName {get; set;}
}
आम तौर पर मैं एक परियोजना के भीतर संग्रह के निर्माण के लिए इस जैसे एक वर्ग का उपयोग करेंगे: अतीत में मैं इस तरह के रूप कक्षाओं बनाया है।
हालांकि के रूप में मैं जानने के लिए और सी # के बारे में अधिक पढ़ने के लिए जारी रखने के लिए तेज मैं कहाँ वर्ग के रूप में परिभाषित कर रहे हैं उदाहरण देखें: इस सी # के भीतर एक स्वीकृत आशुलिपि संस्करण है पहले दृष्टिकोण परिभाषा गलत है
class MyClass //not set to public
{
private string _firstName; //first defined as fields
private string _lastName;
public string FirstName // then defined as properties
{
get { return _firstName; }
set { _firstName = value; }
}
public string LastName
{
get { return _lastName; }
set { _lastName = value; }
}
}
या? एक सर्वोत्तम अभ्यास के रूप में आप हमेशा निजी फ़ील्ड के साथ कक्षा को पहले परिभाषित करते हैं और फिर उन्हें मूल्य के लिए सेट/सेट का उपयोग करके गुणों के रूप में परिभाषित करते हैं?
मैं पूछता हूं क्योंकि मैं स्वयं सी # में पढ़ाया जाता हूं और मैं विकास के लिए उचित दृष्टिकोण को समझने और बेहतर तरीके से समझने की कोशिश कर रहा हूं और कुछ नमूनों और ट्यूटोरियल्स को आसानी से ठोस दृष्टिकोण के बिना राज्य दृष्टिकोणों के बारे में बताता हूं कि क्यों एक दृष्टिकोण को प्राथमिकता दी जाती है (या किया जाना चाहिए) दूसरे पर।
अपने पहले उदाहरण में अग्रिम
दूसरे उदाहरण में, _lastname फ़ील्ड के बाद एक बंद ब्रेस नहीं होना चाहिए। यह वर्ग परिभाषा के अंत में होना चाहिए। संपत्तियों को अभी भी कक्षा ब्लॉक के भीतर परिभाषित किया गया है। (जब तक कुछ ऐसा नहीं होता जो मुझे सी # के बारे में नहीं पता) –