Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Ruby

रूबी में अपनी खुद की कक्षाएं कैसे लिखें (स्पष्ट रूप से समझाया गया)

रूबी में क्लास क्या है?

ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) में कक्षाएं बुनियादी बिल्डिंग ब्लॉक हैं और वे ऑब्जेक्ट बनाने के लिए एक ब्लूप्रिंट को परिभाषित करने में आपकी मदद करती हैं।

वस्तुएं कक्षा के उत्पाद हैं

तो वस्तु क्या है?

एक वस्तु एक व्यक्तिगत "वस्तु" होती है, जिसकी अपनी पहचान और अपना डेटा होता है।

उदाहरण के लिए :

एक Book कक्षा किताबें बनाने का खाका हो सकता है।

यह वर्ग परिभाषित करता है कि सभी पुस्तकों में कौन से गुण समान हैं, जैसे:

  • एक शीर्षक
  • एक लेखक
  • पृष्ठ
  • आदि.

प्रत्येक व्यक्तिगत पुस्तक एक वस्तु है और आप Book . की बदौलत इसके जैसी कई वस्तुएं बना सकते हैं कक्षा। यह कक्षाएं बनाने की बात है, वे आपके रूबी एप्लिकेशन के लिए पुन:प्रयोज्य ब्लूप्रिंट हैं।

अब :

आप अपनी खुद की कक्षाएं लिखना सीखेंगे ताकि आप आज ही ओओपी कोड लिखना शुरू कर सकें।

रूबी क्लास कैसे बनाएं

क्लास बनाने का सिंटैक्स इस प्रकार है:

class Orange
end

ध्यान दें कि :

  • कक्षा के नाम बड़े अक्षर से शुरू होते हैं
  • हम class का उपयोग करते हैं कीवर्ड, फिर end कीवर्ड
  • एक खाली वर्ग बहुत उपयोगी नहीं है, लेकिन फिर भी आप इससे ऑब्जेक्ट बना सकते हैं

क्लास बनाने के और भी तरीके हैं (जैसे Class.new ), लेकिन ये विधियां केवल विशेष परिस्थितियों में ही उपयोगी होती हैं।

एक वर्ग, अनेक वस्तुएं

एक वर्ग का मुख्य उपयोग विधियों, आवृत्ति चर और स्थिरांक का एक कंटेनर होना है, जिससे एक खाका तैयार होता है जिससे आप ऑब्जेक्ट बना सकते हैं।

आप new . का उपयोग करके ऑब्जेक्ट बना सकते हैं विधि।

इसे पसंद करें :

Orange.new

हम एक वस्तु को "तत्काल" के रूप में बनाने की प्रक्रिया को जानते हैं, और हम कहते हैं कि एक वस्तु एक वर्ग का "उदाहरण" है।

ऑब्जेक्ट क्यों बनाते हैं?

क्योंकि आपके द्वारा बनाई गई प्रत्येक वस्तु भिन्न और अद्वितीय है ।

हर वस्तु की अपनी पहचान होती है।

उदाहरण के लिए :

Orange . के साथ कक्षा, हर orange आपके द्वारा बनाई गई वस्तु का अपना वजन, मूल देश, गुणवत्ता आदि होता है।

Ruby Classes को और अधिक उपयोगी बनाना

जब आप इंस्टेंस मेथड्स और इंस्टेंस वेरिएबल को जोड़ना शुरू करते हैं तो क्लास अधिक उपयोगी हो जाती हैं।

एक विधि एक ऐसी चीज़ है जो आपकी कक्षा कर सकती है।

उदाहरण के लिए :

जूस पाने के लिए आप संतरे को निचोड़ सकते हैं।

यहां एक कोड उदाहरण दिया गया है :

class Orange
  def squeeze
    puts "Here's your juice!"
  end
end

orange = Orange.new
orange.squeeze

ये तरीके आपके ऑब्जेक्ट के लिए कमांड बन जाते हैं!

हर orange आपके द्वारा बनाई गई वस्तु के पास इस squeeze तक पहुंच होगी विधि और यह कक्षाओं का उपयोग करने के लाभों में से एक है।

एक आवृत्ति चर क्या आपकी कक्षा कुछ जानती है

उदाहरण:

class Orange
  def initialize
    @juice_available = 100
  end

  def squeeze
    @juice_available -= 50
  end
end

इंस्टेंस वैरिएबल स्थानीय वैरिएबल से अलग होते हैं क्योंकि वे @ . से शुरू होते हैं चिन्ह, प्रतीक। जब तक आप attr_accessor परिभाषित नहीं करते, तब तक आप उन्हें कक्षा के बाहर एक्सेस नहीं कर सकते।

यह कौन सी कक्षा है?

रूबी में वस्तुओं के साथ काम करते समय यह जानना उपयोगी होता है कि वस्तु किस वर्ग से बनी है।

आप ऐसा इस तरह कर सकते हैं :

"".class
# String

[].class
# Array

orange.class
# Orange (assuming orange = Orange.new)

यह क्यों उपयोगी है?

तरीके छोटे इंजन हैं जो रूबी में चीजें करते हैं।

यदि आप कक्षा को जानते हैं तो आप पता लगा सकते हैं कि कौन-सी विधियाँ उपलब्ध हैं (Google का उपयोग करें, ri , या pry ), दूसरे शब्दों में, आप खोज सकते हैं कि वस्तु आपके लिए क्या कर सकती है!

कक्षाओं के बारे में अधिक सीखना

जब कक्षाओं की बात आती है तो यह केवल "हिमशैल का सिरा" होता है।

अगर आप और जानना चाहते हैं…

इन्हें पढ़ें :

  • रूबी इनिशियलाइज़ मेथड
  • Attr_accessor, attr_reader, attr_writer
  • ओओपी में विरासत
  • ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग

बीटीडब्ल्यू कक्षाएं स्वयं भी वस्तुएं हैं, कम से कम रूबी में 🙂

सारांश

आपने रूबी में कक्षाओं के बारे में सीखा, उन्हें कैसे बनाया जाए और वे क्यों उपयोगी हैं!

इस लेख को शेयर करना न भूलें ताकि अधिक से अधिक लोग इसका आनंद उठा सकें।

पढ़ने के लिए धन्यवाद।


  1. अपने रूबी कार्यक्रमों को कैसे डिबग और ठीक करें

    आपका प्रोग्राम कितनी बार ठीक वही करता है जो आप पहली बार चाहते हैं? कई बार हमारे प्रोग्राम हमारी अपेक्षा के अनुरूप काम नहीं करते हैं, इसलिए हमें रूबी को डीबग करना की कला का उपयोग करना पड़ता है। क्यों पता लगाने में हमारी मदद करने के लिए। आप निम्न त्रुटि संदेश से परिचित हो सकते हैं: undefined method

  1. अपना खुद का सीज़र सिफर एनकोडर कैसे लिखें

    क्या आपने कभी सीज़र सिफर . के बारे में सुना है ? जूलियस सीजर ने इस तकनीक का इस्तेमाल अपने दुश्मनों से गुप्त संदेश छुपाने के लिए किया था! सीज़र सिफर सबसे आदिम एन्क्रिप्शन तकनीकों में से एक है। इस प्रणाली के पीछे मुख्य विचार अक्षरों को घुमाना . है वर्णमाला पर पदों की एक x संख्या । उदाहरण के लिए, x

  1. अपना खुद का ब्राउज़र एक्सटेंशन कैसे लिखें [उदाहरण परियोजना शामिल]

    इस लेख में हम ब्राउज़र एक्सटेंशन के बारे में बात करेंगे - वे क्या हैं, वे कैसे काम करते हैं, और आप अपना खुद का निर्माण कैसे कर सकते हैं। हम वास्तव में अपना खुद का एक्सटेंशन (सुपर फन!) लिखकर समाप्त करेंगे जो हमें एक बटन के क्लिक के साथ किसी भी कोड स्निपेट को हमारे क्लिपबोर्ड पर कॉपी करने की अनुमति द