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