विजुअल स्टूडियो 2008 टीम सिस्टम में, मैंने अपनी सी # परियोजनाओं में से एक पर कोड विश्लेषण (विश्लेषण मेनू से) चलाया। उत्पादित चेतावनी निम्न में से एक था:सी # संरक्षित क्षेत्र निजी, संपत्ति जोड़ें - क्यों?
Microsoft.Design: क्योंकि क्षेत्र 'Connection._domain' अपनी घोषणा के प्रकार के दृश्य के बाहर है, निजी करने के लिए अपनी पहुंच बदल सकते हैं और के रूप में ही पहुँच के साथ एक प्रॉपर्टी जोड़ते हैं, क्षेत्र में वर्तमान में पहुंच प्रदान करने के लिए है।
यह निम्नलिखित क्षेत्र की चर्चा करते हुए है:
public abstract class Connection
{
protected string _domain;
}
मैं सुझाव के पीछे तर्क समझ में नहीं आता।
public abstract class Connection
{
private string _domain;
protected string Domain { get { return _domain; } set { _domain = value; } }
}
दो सवाल:: यह यह मुझे क्या करना चाहता है मुझे लगता है कि है
- मैं सही ढंग से समझ क्या सुझाव है, मुझे क्या करना चाहता है कोड के लिहाज से?
- यह मुझे ऐसा क्यों करना चाहता है?
यह भी देखें http://stackoverflow.com/questions/1410645/are-public-fields-ever-ok, http://stackoverflow.com/questions/480627/why-wont-anyone-accept-public-fields -इन-सी, http://stackoverflow.com/questions/1277572/should-i-use-public-properties-and-private-fields-or-public-fields-for- डेटा और कई और (सार्वजनिक पर खोजें खेत')। वे सभी सार्वजनिक क्षेत्रों पर चर्चा करते हैं लेकिन आम तौर पर संरक्षित क्षेत्रों पर भी लागू होते हैं। –