Ruby/C3/Object-Oriented-Concept-in-Ruby/Hindi

From Script | Spoken-Tutorial
Jump to: navigation, search


Time Narration
00:01 Ruby में object Oriented Concept के इस स्पोकन ट्यूटोरियल में आपका स्वागत है।
00:06 इस ट्यूटोरियल में हम उपयोग करना सीखेंगे -
00:08 क्लासेस
00:09 ऑब्जेक्ट्स बनाना
00:10 Ruby में methods परिभाषा के भिन्न तरीके।
00:13 यहाँ हम उपयोग कर रहे हैं
00:14 उबन्टु वर्जन 12.04
00:16 Ruby 1.9.3
00:19 इस ट्यूटोरियल के अनुसरण के लिए आपको लिनक्स कमांड्स, टर्मिनल और टेक्स्ट एडिटर का ज्ञान होना ज़रूरी है।
00:24 यदि नहीं, तो सम्बंधित ट्यूटोरियल के लिए, हमारी वेबसाइट पर जाएँ।
00:28 शुरू करने से पहले, याद रखें कि हमने पहले ही ttt डिरेक्टरी बनायीं थी।
00:33 अब उस डिरेक्टरी पर जाते हैं।
00:35 ruby hyphen tutorial और classes डिरेक्टरी पर
00:41 Ruby एक object oriented भाषा है।
00:44 Ruby में वैल्यू से string या नंबर तक, सब कुछ एक ऑब्जेक्ट है;
00:49 एक class, सम्बंधित data और functions का संग्रह है।
00:53 यह व्यवस्थित जानकारी को रखने के काम आ सकता है।
00:56 एक object, class को प्रमाणित करता है।
01:00 एक class की परिभाषा कीवर्ड क्लास के साथ शुरू होती है।
01:05 इसके बाद class का नाम आता है।
01:08 यह end के साथ सीमांकित होता है।


01:11 अब class का एक उदाहरण देखते हैं।
01:14 class Product
01:16 ruby कोड
01:17 end
01:20 class का नाम कैपिटल लेटर से शुरू होना चाहिए।
01:24 नाम, जिसमें एक से अधिक शब्द हों, कैमल केस (camel case) में होने चाहिए।
01:28 उदाहरणस्वरूप,
01:30 UserInformation
01:32 ProductInformation
01:34 बाद वाली फाइल्स के नाम के शब्दों को अलग करने में अंडरस्कोर का प्रयोग होगा।


01:37 user underscore information
01:40 product underscore information
01:45 Ruby के प्रारंभिक ट्यूटोरियल्स में प्रदर्शित जैसे ही gedit में एक नयी फाइल बनायें।
01:48 इसको class_definition.rb नाम दें।
01:52 मेरे पास क्लासेस के कार्यान्वयन का एक कार्यकारी उदाहरण है।
01:57 ट्यूटोरियल को पूरा समझते समय, बीच में रोककर कोड टाइप करें।
02:02 मैंने इस उदाहरण में क्लास नामक Order को परिभाषित किया है।
02:05 अब, कुछ वेरिएबल्स जोड़कर class को उपयोगित बनाते हैं।
02:11 फिर एक इंस्टैंस वेरिएबल, myinstance परिभाषित किया है।
02:15 और इसको एक वैल्यू नियुक्त की है।
02:18 मैंने एक क्लास वेरिएबल myclassvar भी परिभाषित किया है।
02:21 और इसको एक वैल्यू नियुक्त की है।
02:24 अब, क्लास के उपयोग के लिए कुछ कोड जोड़ते हैं।
02:30 टाइप करें, puts Order dot instance underscore variables.


02:36 इस लाइन से पहले, एक नयी लाइन के लिए puts कुछ कैरेक्टर्स स्लैश n जोड़ें।
02:43 उसको कॉपी, पेस्ट करें और जोड़ी हुई लाइन के नीचे इसे जोड़ें और इसे सेव करें।
02:51 अब इस कोड को निष्पादित करें।
02:53 टर्मिनल पर जाएँ और टाइप करें
02:56 ruby space class underscore definition dot rb
03:02 और आउटपुट देखें।
03:05 आप, परिभाषित instance वेरिएबल देखेंगे।
03:09 अब टाइप करें puts Order dot class underscore variables.
03:15 इस सीमांकन को, लाइन के बिल्कुल नीचे कॉपी-पेस्ट करें और सेव करें।
03:21 अब टर्मिनल पर जाएँ और पहले की तरह ही फाइल को निष्पादित करें।
03:26 आप परिभाषित, क्लास वेरिएबल देखेंगे, जो स्पष्ट भी होता है।
03:32 अब आप अपना क्लास लिखने के लिए सक्षम हैं।
03:35 आगे, देखते हैं ऑब्जेक्ट क्या है ?
03:40 एक ऑब्जेक्ट क्लास का इंस्टैंस है।
03:43 जिसका मतलब, ऑब्जेक्ट, क्लास से बनता है।
03:46 ऑब्जेक्ट, क्लास में परिभाषित विशषताएं और मेथड्स रखेगा।
03:52 आप ऑब्जेक्ट कैसे घोषित करते हैं
03:54 हम, एक नया कीवर्ड उपयोग करके क्लास का ऑब्जेक्ट घोषित करते हैं।


03:58 यहाँ हम Product क्लास का ऑब्जेक्ट घोषित कर रहे हैं।
04:02 यहाँ ऑब्जेक्ट बन गया है।
04:05 product = Product.new
04:09 यह प्रक्रिया ऑब्जेक्ट का प्रारंभन कहलाती है।
04:12 यह ऑब्जेक्ट Product का प्रकार है।


04:16 अब देखते हैं प्रारम्भिक मेथड क्या है ?
04:20 initialize मेथड, ऑब्जेक्ट बनाते समय कॉल हुआ है।


04:26 ऑब्जेक्ट पर न्यू (new) कॉल करने के लिए इनिशियलाइज़ (initialize) मेथड उपयोग करते हैं।
04:31 इनिशियलाइज़ मेथड के पास पैरामीटर्स की सूची हो सकती है।
04:37 अन्य Ruby मेथड्स की तरह, यह def कीवर्ड के बाद आता है।
04:43 एक उदाहरण देखते हैं।
04:46 प्रारंभिक स्तर के Ruby ट्यूटोरियल्स की तरह ही gedit में एक नयी फाइल बनायें।
04:50 और इसको object undescore initialize dot rb नाम दें।
04:55 मेरे पास ऑब्जेक्ट प्रारंभन (initialization) कोड का एक कार्यकारी उदाहरण है।
05:00 ट्यूटोरियल को पूरा समझते समय, बीच में रोककर कोड टाइप करें।
05:04 यहाँ मैंने एक Order नामक क्लास को परिभाषित किया है।
05:08 फिर बिना आर्गुमेंट के मैंने एक इनिशियलाइज़ मेथड को परिभाषित किया है।
05:13 मैंने एक puts मेथड को परिभाषित किया, एक मैसेज प्रदर्शित करने के लिए, I have created an object.
05:20 आगे, मैंने Order डॉट new को परिभाषित किया।
05:24 यह इनिशियलाइज़ मेथड का उपयोग करेगा।
05:27 टर्मिनल पर जाएँ और टाइप करें।
05:31 ruby space object underscore initialize dot rb
05:36 और आउटपुट देखें।
05:39 आप मैसेज देखेंगे I have created an object .
05:43 अब वापस gedit पर जाएँ और मेथड में एक आर्गुमेंट जोड़ें।
05:48 अब puts में परिवर्तन करते हैं।
05:51 यह पास किये हुए आर्गुमेंट की वैल्यू प्रदर्शित करना चाहिए।
05:55 आगे टाइप करें
05:56 Order dot new(“I have created an object”).
06:04 यहाँ हमने न्यू मेथड को एक आर्गुमेंट दिया है।
06:08 यह आर्गुमेंट, इनिशियलाइज़ मेथड को पास किया जाता है।
06:13 टर्मिनल पर जाएँ और टाइप करें
06:16 ruby space object underscore initialize dot rb
06:20 और आउटपुट देखें।
06:22 आप प्रिंट किया हुआ मैसेज, “I have created an object” देखेंगे।
06:29 अब, आप ऑब्जेक्ट प्रारम्भन (initialization) का मतलब समझ चुके होंगे।
06:33 याद रखें, Ruby में फंक्शन्स हैं, जो क्लास प्रदर्शित करते हैं।
06:39 क्लास में प्रत्येक मेथड def और end ब्लॉक में परिभाषित है।


06:45 मल्टीवर्ड मेथड नेम, अंडरस्कोर से अलग हुआ है।
06:48 कुछ करैक्टर्स (characters), जो मेथड नेम के साथ संलग्न हुए है निम्न हैं:
06:54  ? (question-mark)
06:56 = (equal to)
06:58 प्रत्येक करैक्टर मेथड में कुछ मतलब जोड़ता है।
07:02 अब कुछ उदाहरण देखते हैं।


07:05 प्रारंभिक स्तर के Ruby ट्यूटोरियल्स की तरह ही gedit में एक नयी फाइल बनायें।
07:09 और इसको class underscore methods dot rb नाम दें।
07:14 मेरे पास क्लास मेथड्स कोड का एक कार्यकारी उदाहरण है।
07:17 ट्यूटोरियल को पूरा समझते समय, बीच में रोककर कोड टाइप करें।
07:21 यहाँ मैंने Animal नामक एक क्लास को परिभाषित किया।
07:23 फिर मेरे पास दो मेथड्स हैं breathe और walk .
07:28 यह दोनों का def और end कीवर्ड्स के साथ परिभाषित हुए हैं।
07:32 फिर मैंने ऑब्जेक्ट Animal को प्रारम्भ किया।
07:36 मैंने इसे, वेरिएबल animal नियुक्त किया, लोअरकेस a के साथ।
07:40 फिर मैंने क्रमानुसार मेथड्स breathe और walk का उपयोग किया।
07:48 अब प्रोग्राम को निष्पादित करें।
07:51 टर्मिनल खोलें और टाइप करें।
07:53 ruby space class underscore methods dot rb
07:58 और आउटपुट देखें।
08:00 आप लाइन्स देखेंगे :
08:02 “ I breathe”
08:03 “ I walk”
08:04 प्रिंट हुई हैं।
08:05 यह इसलिए है क्योंकि आपने दो मेथड्स breathe और walk उपयोग किये हैं।


08:10 puts स्टेटमेंट, इन मेथड्स में परिभाषित है, परिणाम देते है, जो आप देखते हैं।
08:16 आगे, देखते हैं कि एक अनुगामी question मार्क के साथ मेथड्स कैसे बनाते हैं।
08:21 प्रारंभिक स्तर के Ruby ट्यूटोरियल की तरह ही gedit में एक नयी फाइल बनायें।
08:25 और इसे class underscore methods underscore with underscore trailing underscore characters dot rbनाम दें।
08:35 मेरे पास question मार्क कोड के साथ क्लास मेथड्स का एक कार्यकारी उदाहरण है।
08:40 ट्यूटोरियल को पूरा समझते समय, बीच में रोककर कोड टाइप करें।
08:45 यहाँ उदाहरण के लिए मैंने पहले की तरह ही समान क्लास ली है।
08:48 यहाँ breathe मेथड अनुगामी क्वेश्चन मार्क (question mark (?)”) रखता है।
08:52 ऐसे मेथड्स सामान्यतः boolean वैल्यूज रिटर्न करने में उपयोग होते हैं।


08:55 यह Ruby के मेथड नेमिंग कन्वेंशन (naming convention) पर आधारित है।
09:00 animal dot breathe question-mark, घोषित करके मेथड उपयोग हुआ है।
09:06 टर्मिनल खोलें और टाइप करें
09:09 ruby space class underscore methods underscore with underscore trailing underscore characters dot rb और आउटपुट देखें।


09:22 आप आउटपुट में ट्रू देखेंगे।


09:26 आगे, हम दूसरे मेथड walk को परिभाषित करते हैं।
09:30 इसके पास एक साइन लगाएं equal to =(value)
09:36 animal dot walk, कॉल करके इसको उपयोग करें।
09:41 फिर इस मेथड को निष्पादित करें।
09:44 टर्मिनल खोलें और टाइप करें
09:45 ruby class underscore methods underscore with underscore trailing underscore characters dot rb


09:52 और आउटपुट देखें।
09:56 यह एक undefined मेथड एरर देगा।
09:59 यह इसलिए है क्योंकि equal to साइन अलग मतलब रखता है।
10:03 यह एक मेथड को वैल्यू नियुक्त करने में उपयोग होता है।
10:08 अब, इस बार मेथड को कुछ अलग तरह से उपयोग करते हैं।
10:13 टाइप करें puts animal dot walk equal to “ hops”
10:17 अब, एक अन्य कोशिश करें।
10:20 टर्मिनल पर जाएँ और पहले की तरह ही कमांड रन करें और आउटपुट देखें।
10:27 अब देखेंगे कि शब्द hops प्रिंट हुआ है।
10:30 यह प्रदर्शित करता है कि मेथड के आगे equal टू साइन का मतलब है नियत कार्य।
10:36 अब आप अपने मेथड्स को लिखने में सक्षम होने चाहिए।
10:42 इस ट्यूटोरियल में हमने सीखा -
10:44 classes कैसे घोषित करें
10:46 क्लास के ऑब्जेक्ट्स कैसे बनायें
10:48 Ruby में मेथड्स परिभाषा के भिन्न तरीके
10:52 एक नियत कार्य की तरह :
10:54 एक class Product परिभाषित करना।
10:56 myvar की वैल्यूज और myvar के लिए सेट वैल्यूज प्राप्त करने के लिए मेथड्स परिभाषित करना।
11:01 वैल्यूज सेट करने के लिए, “=” साइन उपयोग करके मेथड परिभाषित करना।
11:05 क्लास के ऑब्जेक्ट्स को शीघ्र दर्शाना और उपरोक्त दो मेथड्स उपयोग करके वैल्यूज सेट और प्राप्त करना।


11:12 निम्न लिंक पर उपलब्ध विडिओ देखें।
11:14 यह स्पोकन ट्यूटोरियल प्रोजेक्ट को सारांशित करता है।
11:18 अच्छी बैंडविड्थ न मिलने पर आप इसे डाउनलोड करके देख सकते हैं।
11:22 स्पोकन ट्यूटोरियल प्रोजेक्ट टीम :
11:24 स्पोकन ट्यूटोरियल्स का उपयोग करके कार्यशालाएं चलाती है,
11:27 ऑनलाइन टेस्ट पास करने वालों को प्रमाणपत्र देते हैं।
11:30 अधिक जानकारी के लिए, कृपया contact@spoken-tutorial.org को लिखें।
11:36 स्पोकन ट्यूटोरियल प्रोजेक्ट, टॉक-टू-अ टीचर प्रोजेक्ट का हिस्सा है।
11:39 यह भारत सरकार के एम एच आर डी के आई सी टी के माध्यम से राष्ट्रीय साक्षरता मिशन द्वारा समर्थित है।
11:46 इस मिशन पर अधिक जानकारी spoken hyphen tutorial dot org slash NMEICT hyphen Intro पर उपलब्ध है।
11:56 आई आई टी बॉम्बे से मैं श्रुति आर्य आपसे विदा लेती हूँ। हमसे जुड़ने के लिए धन्यवाद।

Contributors and Content Editors

Sakinashaikh, Shruti arya