यह एक Ruby सिंटैक्स रेफरेंस है।
Ruby सीखना आपके द्वारा याद रखी जाने वाली हर चीज़ के साथ भारी पड़ सकता है।
इसीलिए मैंने आपके लिए यह सिंटैक्स रेफरेंस एक साथ रखा है!
यह आपकी मेमोरी को रिफ्रेश करने और Ruby प्रोग्राम लिखने के लिए आपको जो जानने की आवश्यकता है उसे त्वरित रूप से समीक्षा करने में मदद करेगा।
मज़े करें!
सामग्री
- 1 Strings (स्ट्रिंग्स)
- 2 Hashes (हैश)
- 3 Symbol (सिम्बल)
- 4 Nil (निल)
- 5 Array (एरे)
- 6 Enumerable (एनुमरेबल)
- 7 File (फाइल)
- 8 Regular Expression (रेगुलर एक्सप्रेशन)
- 9 Ruby Gems & Bundler
- 10 Classes & Object-Oriented Programming (क्लासेस और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग)
- 11 Types Of Variables (वेरिएबल्स के प्रकार)
- 12 %w, %i, %q, %r, %x
- 13 Use of Parenthesis (पैरेन्थिसिस का उपयोग)
- 14 Examples (उदाहरण)
- 15 Summary (सारांश)
Strings (स्ट्रिंग्स)
एक स्ट्रिंग दो कोटेशन मार्क्स ("") के अंदर कैरेक्टर्स का एक क्रम है। टेक्स्ट और डेटा को प्रतिनिधित्व करने के लिए उपयोग किया जाता है।
सिंटैक्स उदाहरण:
"मुझे चॉकलेट पसंद है"
दूसरा विकल्प सिंगल कोटेशन मार्क्स ('') का उपयोग करना है।
'Ruby बहुत बढ़िया है'
महत्वपूर्ण मेथड्स:
- size
- empty?
- include?
- gsub
- split
अधिक मेथड्स:
https://www.rubyguides.com/2018/01/ruby-string-methods/
Hashes (हैश)
एक हैश ({}) एक की-वैल्यू पेयर (a => b) डेटा स्ट्रक्चर है। डिक्शनरी के रूप में उपयोग किया जाता है। आप उनकी कीज़ द्वारा हैश एलिमेंट्स तक पहुँच सकते हैं। कीज़ यूनिक होती हैं।
उदाहरण:
# Create
h = { a: 1, b: 2, c: 3 }
# Access
h[:a]
# Set
h[:test] = 10
ध्यान दें कि नए हैश {} सिंटैक्स (कर्ली ब्रैकेट्स) का उपयोग करके बनाए जाते हैं, लेकिन आप हमेशा [] (स्क्वायर ब्रैकेट्स) के साथ एक हैश एलिमेंट तक पहुँचते हैं।
यह सरल सी बात कई शुरुआती लोगों को भ्रमित करती है, इसलिए इसे ध्यान में रखें।
स्ट्रिंग कीज़ के साथ हैश:
h = { "a" => 1, "b" => 2, "c" => 3 }
महत्वपूर्ण मेथड्स:
- key?
- fetch
- new (डिफ़ॉल्ट वैल्यूज के लिए)
- merge
अधिक मेथड्स:
https://www.rubyguides.com/2020/05/ruby-hash-methods/
Symbol (सिम्बल)
पहचान के लिए उपयोग की जाने वाली एक स्टैटिक स्ट्रिंग, एक सामान्य उदाहरण हैश कीज़ हैं। वे हमेशा एक कोलन (:bacon) से शुरू होते हैं। सिम्बल्स का उपयोग कभी भी उनकी सामग्री (व्यक्तिगत कैरेक्टर्स) के लिए नहीं किया जाता।
जब हैश ब्रैकेट्स ({}) के अंदर उपयोग किया जाता है तो कोलन का पक्ष उलट जाता है।
उदाहरण:
{ abc: 1 }
यह सिम्बल :abc है।
और जानें:
https://www.rubyguides.com/2018/02/ruby-symbols/
Nil (निल)
एक सिंगलटन क्लास (केवल एक ऑब्जेक्ट अनुमत) जो एक डिफ़ॉल्ट या "नहीं मिला" प्रकार के मान को दर्शाता है।
एक कंडीशनल कॉन्टेक्स्ट में "false" मूल्यांकन करता है।
और जानें:
- https://www.rubyguides.com/2018/01/ruby-nil/
- https://www.rubyguides.com/2019/02/ruby-booleans/
Array (एरे)
ऑब्जेक्ट्स की एक सूची को प्रतिनिधित्व करने के लिए उपयोग किया जाने वाला एक ऑब्जेक्ट। एक एरे किसी भी प्रकार के ऑब्जेक्ट को समाहित कर सकता है (a = [1, "abc", []]), जिसमें अन्य एरे भी शामिल हैं।
आप उनके इंडेक्स (a[0]) के साथ एरे एलिमेंट्स तक पहुँचते हैं और नेस्टेड एरे के साथ a[0][0]।
उदाहरण:
a = [] a << 10 a << 20 a << 30 a # [10, 20, 30]
महत्वपूर्ण मेथड्स:
- size
- empty?
- push / pop
- join
- flatten
अधिक मेथड्स:
https://ruby-doc.org/core-2.6.4/Array.html
Enumerable (एनुमरेबल)
एक Ruby मॉड्यूल जिसका उपयोग किसी भी क्लास के एलिमेंट्स पर पुनरावृति करने के लिए किया जाता है जो each मेथड को लागू करता है, जैसे Array, Range & Hash।
महत्वपूर्ण मेथड्स:
- map
- select
- inject
अधिक:
Ruby Enumerable मॉड्यूल के लिए एक बेसिक गाइड (+ मेरा पसंदीदा मेथड)
File (फाइल)
एक क्लास जो आपको Ruby में फाइलों के साथ काम करने में मदद करती है। उन्हें पढ़ने से, उनमें लिखने तक, या उनके बारे में जानकारी प्राप्त करने तक, जैसे फाइल का आकार।
उदाहरण:
File.read("/tmp/test.txt")
महत्वपूर्ण मेथड्स:
- read
- write
अधिक:
https://www.rubyguides.com/2015/05/working-with-files-ruby/
Regular Expression (रेगुलर एक्सप्रेशन)
यदि आप पैटर्न, सबस्ट्रिंग्स, या एक स्ट्रिंग के अंदर कुछ विशिष्ट खोज रहे हैं, तो एक रेगुलर एक्सप्रेशन वही हो सकता है जिसकी आप तलाश कर रहे हैं।
इनका उपयोग ईमेल एड्रेस और फोन नंबर को मान्य करने के लिए किया जा सकता है। या टेक्स्ट से जानकारी निकालने के लिए।
उदाहरण:
"aaaa1".match?(/[0-9]/) # true "".match?(/[0-9]/) # false
और जानें:
https://www.rubyguides.com/2015/06/ruby-regex/
Ruby Gems & Bundler
Ruby gems वे पैकेज हैं जिन्हें आप अपने Ruby प्रोग्राम्स में उपयोग करने के लिए डाउनलोड कर सकते हैं।
ये पैकेज आपको नए फंक्शन्स देते हैं।
उदाहरण के लिए, Rails में, आप Devise gem के साथ आसानी से ऑथेंटिकेशन जोड़ सकते हैं, या Kaminari gem के साथ पेजिनेशन।
और जानें:
https://www.rubyguides.com/2018/09/ruby-gems-gemfiles-bundler/
Classes & Object-Oriented Programming (क्लासेस और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग)
Ruby एक ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषा है। हम हर चीज़ को एक ऑब्जेक्ट के रूप में सोचते हैं। ऑब्जेक्ट्स उनके ब्लूप्रिंट्स, क्लासेस से बनाए जाते हैं।
ऑब्जेक्ट्स चीज़ों को जान सकते हैं और चीज़ें कर सकते हैं। आप मेथड्स के साथ ऑब्जेक्ट्स को चीज़ें करने के लिए कहते हैं।
महत्वपूर्ण मेथड्स:
- class
- include / extend
और जानें:
- https://www.rubyguides.com/2019/02/ruby-class/
- https://www.youtube.com/watch?v=LuTTUNnSj6o&list=PL6Eq_d2HYExeKIi4d9rUEoD6qSiKS4vfe&index=2
Types Of Variables (वेरिएबल्स के प्रकार)
एक वेरिएबल एक ऑब्जेक्ट के लिए एक लेबल है जिसका उपयोग हम उस ऑब्जेक्ट तक पहुँचने के लिए कर सकते हैं। एक वेरिएबल को एक ऑब्जेक्ट के साथ जोड़ने की प्रक्रिया को "वेरिएबल असाइनमेंट" कहा जाता है।
उदाहरण:
a = 1
हम Ruby में विभिन्न प्रकार के वेरिएबल्स का उपयोग करते हैं।
यहाँ एक सूची है:
- Local variables (
something) - Instance variables (
@something) - Constants (
Something/SOMETHING) - Global variables (
$something)
मुख्य अंतर यह है कि आप उन्हें किन स्थानों से एक्सेस कर सकते हैं।
%w, %i, %q, %r, %x
पर्सेंटेज सिंबल (%) के साथ एक विशेष प्रकार के सिंटैक्स का उपयोग करके ऑब्जेक्ट्स बनाने का एक तरीका है। यह एक शॉर्टकट है जो आपका काम बचा सकता है।
यदि आप Ruby में %w देखते हैं, तो अब आप जानेंगे कि इसका क्या मतलब है!
उदाहरण:
array_of_strings = %w(apple orange coconut) array_of_symbols = %i(a b c) string = %q(things) regular_expression = %r([0-9])
- %w - स्ट्रिंग्स का एरे बनाएं
- %i - सिम्बल्स का एरे बनाएं
- %q - कोटेशन मार्क्स का उपयोग किए बिना स्ट्रिंग बनाएं
याद रखें कि पर्सेंटेज सिंबल (%) का उपयोग मॉड्यूलो मैथमेटिकल ऑपरेटर के रूप में भी किया जाता है।
Use of Parenthesis (पैरेन्थिसिस का उपयोग)
Ruby में पैरेन्थिसिस और सेमीकोलन्स आवश्यक नहीं हैं, लेकिन उनका उपयोग किया जा सकता है।
कुछ बुनियादी नियम:
- कोई आर्गुमेंट्स के साथ एक मेथड को परिभाषित करते समय पैरेन्थिसिस का उपयोग न करें =>
def foo - मेथड आर्गुमेंट्स के साथ पैरेन्थिसिस का उपयोग करें =>
def foo(a, b, c) - जब आप किसी ऑपरेशन की प्रीसेडेंस या प्राथमिकता को बदलना चाहते हैं तो पैरेन्थिसिस का उपयोग करें =>
(a.size + b.size) * 2
रीडेबिलिटी पैरेन्थिसिस का एक उपयोग है जबकि ऑपरेशन के क्रम को बदलना दूसरा है।
Examples (उदाहरण)
सामान्य Ruby सिंटैक्स के उदाहरण।
Method definition (मेथड परिभाषा)
def backup_database # method body end
मेथड्स के बारे में अधिक:
- https://www.rubyguides.com/2018/06/rubys-method-arguments/
- https://www.rubyguides.com/2019/06/ruby-method-definition/
Class definition (क्लास परिभाषा)
class Fruit # methods end
क्लासेस के बारे में अधिक:
- https://www.rubyguides.com/2019/02/ruby-class/
- https://www.rubyguides.com/2019/01/what-is-inheritance-in-ruby/
Ternary operator (टर्नरी ऑपरेटर)
true ? "yes" : "no"
String interpolation (स्ट्रिंग इंटरपोलेशन)
fruit = "orange"
puts "मेरे पास एक #{fruit} है। क्या आप इसका एक टुकड़ा चाहेंगे?"
इंटरपोलेशन के बारे में अधिक:
- https://www.rubyguides.com/2019/07/ruby-string-concatenation/
Each with block (ब्लॉक के साथ each)
[1,2,3].each do |n| puts n end
If / Else
n = 20 if n > 1 puts "1 से बड़ा" else puts "1 से छोटा" end
Case statement (केस स्टेटमेंट)
case 20 when 1..20 puts "1 और 20 के बीच" when 21..40 puts "21 और 40 के बीच" else puts "एक वैध रेंज के भीतर नहीं" end
जहाँ 1..20 एक Range ऑब्जेक्ट है।
Summary (सारांश)
आपने Ruby सिंटैक्स की बुनियादी बातें सीखीं ताकि आप Ruby प्रोग्राम लिख सकें! इन्हें अक्सर रिव्यू करें जब तक कि यह आपके दिमाग में न बन जाए।
आप सिंटैक्स एलिमेंट्स के सामान्य नामों की इस सूची का भी आनंद ले सकते हैं।
पढ़ने के लिए धन्यवाद। 🙂