मेरे बॉस ने मुझे एक विशेष तर्क के साथ एक प्रोजेक्ट दिया। मुझे एक वेब पेज विकसित करना होगा जिसमें उत्पाद पर पहुंचने तक उसे कई मामलों में नाविक का नेतृत्व करना होगा।
यह साइट में नेविगेशन की पथ योजना है:
महत्वपूर्ण!
उत्पाद पृष्ठ में नेविगेटर यह चुन सकता है कि उसे कौन सा फ़िल्टर चाहिए।
- यदि A, वह / वह अवश्य B (और तब C) या C से गुजरता है और उत्पादों तक पहुँचता है।
- यदि B, वह / वह अवश्य C से गुजरता है और उत्पादों तक पहुँचता है।
- यदि C, वह सीधे उत्पादों पर पहुंचता है।
बेशक अगर मैं AI से शुरू करता हूं तो सबसे लंबे रास्ते का अनुसरण कर रहा हूं और जब मैं अपने उत्पादों तक पहुंचता हूं तो मेरे पास 3 सक्रिय फिल्टर होते हैं।
अब तक मैंने निम्नलिखित कोड विकसित किया है जो ठीक काम करता है।
if filter_A
if filter_B
filter_C()
.. else ..
else
filter_C
.. else ..
else
if filter_B
filter_C()
.. else ..
else
filter_C()
.. else ..
मैं यह पूछने के लिए यहां हूं कि इस स्थिति में एक अधिक विशेषज्ञ प्रोग्रामर ने क्या किया होगा। मैंने DRY सिद्धांत का सम्मान नहीं किया, मुझे यह पसंद नहीं है और मैं इस तरह के तर्क को विकसित करने का एक वैकल्पिक तरीका जानना चाहता हूं।
मैंने फ़ंक्शंस में कोड के हर सेक्शन को विभाजित करने के बारे में सोचा था लेकिन क्या इस मामले में यह एक अच्छा विचार है?
filter_C
, लेकिन सशर्त विवरण यह दर्शाता है कि नियंत्रण प्रवाह चारों ओर जा सकता है filter_C
। है filter_C
वैकल्पिक?