में ओओडी पर एसओए सिद्धांतों का उपयोग करना हमारे आर्किटेक्ट ने हमारे कोडबेस में एसओए तकनीकों का उपयोग करने के बारे में बात की है, यहां तक कि इंटरफेस पर भी जो वास्तव में सेवा के रूप में होस्ट नहीं किए जाते हैं। उनके अनुरोधों में से एक यह है कि हम अपने इंटरफ़ेस विधियों को डिज़ाइन करते हैं ताकि हम वास्तविक कार्यान्वयन के बारे में कोई धारणा न करें। तो अगर हमारे पास ऐसी कोई विधि है जो किसी ऑब्जेक्ट में ले जाती है और उस ऑब्जेक्ट पर किसी संपत्ति को अपडेट करने की आवश्यकता होती है, तो हमें स्पष्ट रूप से विधि से ऑब्जेक्ट को वापस करने की आवश्यकता होती है। अन्यथा हम इस तथ्य पर भरोसा करेंगे कि कुछ संदर्भ प्रकार है और सी # डिफ़ॉल्ट रूप से संदर्भ प्रकार पर गुणों को अपडेट करने की अनुमति देता है।गैर-सेवा कोड
तो:
public void SaveSomething(Something something)
{
//save to database
something.SomethingID = 42;
}
हो जाता है:
public Something SaveSomething(Something something)
{
//save to database
return new Something
{
//all properties here including new primary key from db
};
}
मैं वास्तव में इस दृष्टिकोण का लाभ आसपास मेरे सिर प्राप्त कर सकते हैं और अगर कोई मदद कर सकता है सोच रहा था?
क्या यह एक आम दृष्टिकोण है?