• रिपोर्ट जनरेशन एप्लिकेशन विकसित करते समय –dry-run विकल्प जोड़ा गया, ताकि चलाने के परिणाम का सिमुलेशन किया जा सके
  • यह विकल्प बिना वास्तविक बदलाव किए यह दिखाता है कि कौन-सा काम किया जाएगा, जिससे सुरक्षित टेस्टिंग और तेज़ फीडबैक संभव होता है
  • डेवलपर इसके जरिए configuration, accessibility और system state को तुरंत जांच सकते हैं और इसे रोज़मर्रा के validation tool की तरह इस्तेमाल कर सकते हैं
  • कोड में dryRun फ़्लैग को जांचना पड़ता है, जिससे थोड़ी अतिरिक्त जटिलता बढ़ना एक कमी के रूप में बताया गया है
  • command-line एप्लिकेशन में –dry-run फीचर बहुत उपयोगी है, और इसे प्रोजेक्ट की शुरुआत में जोड़ने से development efficiency बढ़ती है

पृष्ठभूमि

  • नया विकसित किया जा रहा रिपोर्ट जनरेशन एप्लिकेशन हर कार्यदिवस रिपोर्ट बनाता है, उसे compress करके sftp server पर upload करता है, error response की जांच करता है और notification mail भेजता है
    • हर चरण में बने फ़ाइल और feedback फ़ाइल को चरण के अनुसार अलग-अलग directory में ले जाया जाता है
  • विकास के शुरुआती चरण में Subversion और कई Linux commands के –dry-run विकल्प को याद कर वही फीचर जोड़ा गया
    • यह विकल्प बिना वास्तविक बदलाव के चलाने पर क्या होगा, यह प्रिंट करता है
  • –dry-run चलाने पर, बनने वाली और छोड़ी जाने वाली रिपोर्टें, compress और move की जाने वाली फ़ाइलें, और sftp upload तथा download के लिए लक्षित फ़ाइलें चरण-दर-चरण प्रिंट होती हैं

उपयोग और फायदे

  • यह इतना उपयोगी फीचर है कि development और testing के दौरान रोज़ इस्तेमाल किया जाता है
  • रन से पहले state check करने के लिए इसका उपयोग करने पर configuration, accessibility और system state को तुरंत जांचा जा सकता है
    • क्योंकि कोई वास्तविक बदलाव नहीं होता, इसलिए इसे सुरक्षित रूप से चलाया जा सकता है
  • रिपोर्ट status फ़ाइल की तारीख बदलने के बाद, उस रिपोर्ट के बनेगी या नहीं, यह तुरंत जांचा जा सकता है
    • वास्तविक रिपोर्ट जनरेशन में समय लगता है, लेकिन dry-run तेज़ फीडबैक देता है
  • पूरे system के test के दौरान भी यह तेज़ validation loop देता है

कमियां

  • कोड में dryRun फ़्लैग को बार-बार जांचना पड़ता है, इसलिए कोड में थोड़ा-बहुत प्रदूषण होता है
    • हर मुख्य चरण पर फ़्लैग जांचकर वास्तविक execution की जगह सिर्फ log प्रिंट किया जाता है
  • हालांकि यह जांच बहुत गहरी नहीं जाती, और रिपोर्ट जनरेशन लॉजिक के अंदर अलग से हैंडलिंग की ज़रूरत नहीं होती
    • सिर्फ उन ऊपरी चरणों में जांच होती है जो execution होगा या नहीं, यह तय करते हैं

निष्कर्ष

  • command-driven तरीके से चलने वाले और परिणाम पैदा करने वाले एप्लिकेशन –dry-run विकल्प के साथ अच्छी तरह मेल खाते हैं
    • इसके विपरीत, संदेशों का इंतज़ार करने वाले reactive एप्लिकेशन के लिए यह उपयुक्त नहीं है
  • इसे प्रोजेक्ट की शुरुआत में जोड़ना development efficiency बढ़ाने में बहुत मददगार रहा
  • यह हर स्थिति में ज़रूरी फीचर नहीं है, लेकिन उपयुक्त मामलों में बहुत उपयोगी टूल माना गया है

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.