में कमांड पैटर्न सुविधाजनक क्यों है, मुझे समझ में नहीं आता कि ऑब्जेक्ट उन्मुख डिज़ाइन में कमांड पैटर्न सुविधाजनक क्यों है।मुझे समझ में नहीं आ रहा है कि ऑब्जेक्ट ओरिएंटेड डिज़ाइन
उपयोग करने के बजाए, आइए "स्विच" कमांड कहें, जिसमें लैंप क्लास का संदर्भ है, क्या मैं सिर्फ एक स्विच करने योग्य अमूर्त वर्ग नहीं बना सकता और इसकी विधियों का आह्वान नहीं कर सकता?
इस तरह से मैं आवेदक और रिसीवर को किसी भी तरह से रद्द कर रहा हूं और मुझे ईएसी रिसीवर कक्षा के लिए कमांड ऑब्जेक्ट बनाना नहीं है।
thanjs
उदाहरण के लिए धन्यवाद। हालांकि, मुझे अभी भी आवेदक के बजाय कमांड में रिसीवर का संदर्भ रखने का लाभ नहीं दिख रहा है। दूसरे शब्दों में, क्यों उन्हें decoupling इतना उपयोगी है? किस स्थितियों में उपयोगी है? – aneuryzm
क्या कोड को बनाए रखने योग्य रखने और आवेदक को अधिक पुन: प्रयोज्य बनाने के लिए मुख्य रीसो है? या अधिक व्यावहारिक फायदे हैं? – aneuryzm
@ पैट्रिक, उन्हें अलग रखते हुए आप हमारे रिसीवर को इनवॉकर (या इसके विपरीत) को बदलने के बिना स्वैप कर सकते हैं। इस प्रकार, आसान रखरखाव। ऐसे परिदृश्य भी हैं जहां इनवॉर्टर और रिसीवर के बीच कनेक्शन कॉन्फ़िगरेशन फ़ाइलों, उपयोगकर्ता इनपुट या कुछ डेटा स्रोत के आधार पर रनटाइम तक निर्धारित नहीं किया जा सकता है। एक अच्छा उदाहरण के लिए –