मैं कुछ वस्तुओं के बारे में पूछना चाहता हूं कि केवल उन वस्तुओं को लिखने से बचें जो डेटा कंटेनर हैं।डीडीडी - कुल रूट्स और व्यवहार संबंधी ऑब्जेक्ट्स बनाना
public class Post : IAggregateRoot
{
List<Comment> Comments {get; set;}
}
pinciples तरीका नियंत्रित कुल जड़ों काम को देखते हुए यह इस तरह से ऊपर कोड कॉल करने के लिए मान्य है:
निम्नलिखित सकल रूट पर विचार करें?
new Post().Comments.Add(New Comment("stuff"));
या यह सही तरीका है?
public class Post : IAggregateRoot
{
List<Comment> Comments {get; private set;}
public void AddComment(string message)
{
Comments.Add(new Comment(message));
}
}
और इस तरह कहा जाता है:
new Post().AddComment("stuff");
इस है एरिक इवान सकल जड़ें परमाणु द्वारा किया जा रहा है इसका मतलब क्या है?
यदि ऐसा है, तो इसका मतलब यह है कि संस्थाओं के पास कोई सार्वजनिक सेटर्स नहीं है, बल्कि इसके बजाय विधियों (AddThis, RemoveThat) का समर्थन कर रहे हैं? क्या आप अमीर व्यवहार के साथ वस्तुओं को बनाते हैं?
अंत में आप वापस ही वापस लौट कर कि विधि के साथ चेनिंग विधि बना सकते हैं दोनों संभवतः गलत हैं जब तक कि आपके पास 'पोस्ट' और' टिप्पणियां 'क्लस्टर करने का वैध कारण न हो। आप अपने बड़े क्लस्टर के साथ कुल व्यापारिक आविष्कारों की रक्षा करने की कोशिश कर रहे हैं? यदि वहां नहीं है तो 'टिप्पणी' यह स्वयं की कुल रूट होनी चाहिए। – plalx