REPL का अर्थ है Read-Eval-Print-Loop।
यह एक प्रोग्राम है जो आपको रूबी कोड टाइप करने और परिणाम सीधे देखने की अनुमति देता है।
एक लोकप्रिय REPL irb है।
दूसरा pry है।
वे उपयोगी हैं क्योंकि आप जल्दी से टेस्ट कर सकते हैं कि कुछ रूबी कोड कैसे काम करता है।
उदाहरण के लिए:
यदि आप स्ट्रिंग्स की ऐरे को इंटीजर्स की ऐरे में बदलने की कोशिश कर रहे हैं।
आपको ठीक से याद नहीं हो सकता है यह कैसे करना है...
आप इसे खोजते हैं (जो पूरी तरह से ठीक है!)।
और अपने REPL में इसे तब तक आज़माते हैं जब तक यह आपकी इच्छा के अनुसार काम न करे। फिर आप इस कोड को अपने प्रोजेक्ट में इंटीग्रेट कर सकते हैं।
बड़ा लाभ?
आप कोड के एक छोटे से टुकड़े को अपने आप टेस्ट कर सकते हैं, इसलिए यदि यह काम नहीं करता है तो आपके पास कम मूविंग पार्ट्स हैं, और आप अधिक आसानी से पता लगा सकते हैं कि इसे कैसे ठीक किया जाए।
यह आपको एक चीज़ पर ध्यान केंद्रित करने देता है!
अब:
आइए कुछ REPLs की समीक्षा करते हैं जिनका आप रूबी के साथ उपयोग कर सकते हैं।
इंटरएक्टिव रूबी शेल (IRB)
IRB बिल्ट-इन रूबी REPL है जिससे हर रूबी डेवलपर परिचित है।
इसमें कई फीचर्स नहीं हैं, लेकिन यह वही करता है जो इसे करना चाहिए।
आप कोड टाइप करते हैं और परिणाम वापस पाते हैं।
आप irb का उपयोग कैसे कर सकते हैं?
आप टर्मिनल विंडो के अंदर irb टाइप करके irb खोल सकते हैं।
यह आपको दिखना चाहिए:
irb(main):001:0>
फिर आप अपना रूबी कोड लिख सकते हैं और इसे चलाने के लिए एंटर दबा सकते हैं।
यदि आप irb बंद करना चाहते हैं तो आप exit टाइप कर सकते हैं।
आप अपने होम फोल्डर में .irbrc फाइल बनाकर कमांड हिस्ट्री सक्षम कर सकते हैं।
इस सामग्री के साथ:
IRB.conf[:SAVE_HISTORY] = 500
यदि आप ऑटो इंडेंट सक्षम करना चाहते हैं तो इसे भी जोड़ें:
IRB.conf[:AUTO_INDENT] = true
या अपने प्रॉम्प्ट को इस तरह कस्टमाइज़ करें:
IRB.conf[:PROMPT][:CUSTOM] = {
PROMPT_I: "irb(#{Dir.pwd}) ",
PROMPT_S: "irb(#{Dir.pwd})* ",
PROMPT_C: "irb(#{Dir.pwd})? ",
PROMPT_N: "irb(#{Dir.pwd})* ",
RETURN: "%s\n"
}
IRB.conf[:PROMPT_MODE] = :CUSTOM
Pry जेम के लाभ
Pry एक REPL और एक रूबी जेम है जिसे आप जब चाहें इंस्टॉल कर सकते हैं।
यह irb की तरह है लेकिन इसमें अधिक फीचर्स हैं।
फीचर्स जैसे:
- सिंटैक्स हाइलाइटिंग
- ऑटोकंप्लीशन (irb में कुछ है, लेकिन बहुत बेसिक)
- इंट्रोस्पेक्शन कमांड्स (मेथड्स, वेरिएबल्स, कॉन्स्टेंट्स आदि सूचीबद्ध करें)
- आपके द्वारा पहले टाइप किए गए कोड को एडिट करना और उसे फिर से चलाना
- डीबगिंग
ये फीचर्स pry को ज्यादातर समय बेहतर विकल्प बनाते हैं, इसलिए इसे आज़माएं यदि आपने अभी तक नहीं किया है।
यदि आप Rails का उपयोग कर रहे हैं, तो आप rails console के लिए pry सक्षम कर सकते हैं pry-rails को अपने Gemfile में जोड़कर।
यह show-models और show-routes कमांड्स भी जोड़ता है।
Pry में कई कॉन्फिगरेशन विकल्प हैं, आप उन्हें अपने होम फोल्डर में .pryrc फाइल में ग्लोबल सेटिंग्स के लिए, या अपने प्रोजेक्ट फोल्डर्स में लोकल सेटिंग्स के लिए सेट कर सकते हैं।
रूबी -e
यदि आप REPL लॉन्च किए बिना रूबी कोड की एक सिंगल लाइन चलाना चाहते हैं तो आप रूबी के -e फ्लैग का उपयोग कर सकते हैं।
यहाँ एक उदाहरण है:
ruby -e "puts 123 * 2"
यह IRB खोले बिना किसी चीज़ को जल्दी से टेस्ट करने के लिए बहुत अच्छा है।
ऑनलाइन REPLs
क्या होगा यदि आपके पास अभी रूबी इंस्टॉल करने की एक्सेस नहीं है?
या शायद आप अपने स्थानीय कंप्यूटर से अलग वातावरण में कुछ टेस्ट करना चाहते हैं।
या प्रदर्शन उद्देश्यों या फीडबैक मांगने के लिए कोड शेयर करें।
यही ऑनलाइन REPLs के लिए बहुत अच्छे हैं।
एक जो मुझे पसंद है वह है https://repl.it/languages/ruby।
सारांश
आपने रूबी में REPLs के बारे में सीखा! एक REPL आपको कोड को फाइल में लिखे बिना जल्दी से टेस्ट करने की अनुमति देता है।
अब अभ्यास का समय है 🙂