Difference between revisions of "PERL/C3/Access-Modifiers-in-PERL/Hindi"

From Script | Spoken-Tutorial
Jump to: navigation, search
(Created page with " {| Border = 1 | <center>''' Time '''</center> | <center>'''Narration'''</center> |- |00:01 | 'Access Modifiers in PERL' पर स्पोकन ट्यूटोरिय...")
 
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
 
 
{| Border = 1
 
{| Border = 1
| <center>''' Time '''</center>
+
|'''Time '''
| <center>'''Narration'''</center>
+
|'''Narration'''
  
 
|-
 
|-
 
|00:01
 
|00:01
| 'Access Modifiers in PERL' पर स्पोकन ट्यूटोरियल में आपका स्वागत है।  
+
| '''Access Modifiers in PERL''' पर स्पोकन ट्यूटोरियल में आपका स्वागत है।  
  
 
|-
 
|-
 
|00:07
 
|00:07
 
| इस ट्यूटोरियल में हम निम्न के बारे में सीखेंगे:
 
| इस ट्यूटोरियल में हम निम्न के बारे में सीखेंगे:
* स्कोप ऑफ़ वेरिएबल्स  
+
स्कोप ऑफ़ वेरिएबल्स  
* 'Private' वेरिएबल्स  
+
'''Private''' वेरिएबल्स  
* 'Dynamically scoped' वेरिएबल्स
+
'''Dynamically scoped''' वेरिएबल्स
* 'Global' वेरिएबल्स
+
'''Global''' वेरिएबल्स
  
 
|-
 
|-
 
|00:19
 
|00:19
 
| इस ट्यूटोरियल के लिए मैं उपयोग कर रही हूँ:
 
| इस ट्यूटोरियल के लिए मैं उपयोग कर रही हूँ:
* 'उबन्टु लिनक्स 12.04' ऑपरेटिंग सिस्टम  
+
'उबन्टु लिनक्स 12.04' ऑपरेटिंग सिस्टम  
* 'Perl 5.14.2' और  
+
'Perl 5.14.2' और  
* 'gedit' टेक्स्ट एडिटर  
+
'gedit' टेक्स्ट एडिटर  
  
 
|-
 
|-
Line 69: Line 68:
 
|-
 
|-
 
|01:28
 
|01:28
| आप एक वेरिएबल को वैल्यू दिए बिना घोषित कर सकते हैं, जैसे
+
| आप एक वेरिएबल को वैल्यू दिए बिना घोषित कर सकते हैं, जैसे 'my $fvalue सेमीकोलन'
'my $fvalue सेमीकोलन'
+
  
 
|-
 
|-
Line 78: Line 76:
 
|-
 
|-
 
| 01:43
 
| 01:43
| 'my $fValue = 1 सेमीकोलन'
+
| '''my $fValue = 1''' सेमीकोलन
  
 
|-
 
|-
 
| 01:48
 
| 01:48
| 'my $fname' =  डबल कोट्स में 'Rahul' सेमीकोलन
+
| 'my $fname' =  डबल कोट्स में '''Rahul''' सेमीकोलन
  
 
|-
 
|-
Line 142: Line 140:
 
|-
 
|-
 
|03:32
 
|03:32
| अब फाइल सेव करने के लिए 'Ctrl+S' दबाएं।  
+
| अब फाइल सेव करने के लिए '''Ctrl+S''' दबाएं।  
  
 
|-
 
|-
Line 175: Line 173:
 
|-
 
|-
 
|04:23
 
|04:23
| 'टर्मिनल' पर वापस जाएँ और पहले की तरह निष्पादित करें।  
+
| 'टर्मिनल' पर वापस जाएँ और पहले की तरह निष्पादित करें।  
  
 
|-
 
|-
Line 183: Line 181:
 
|-
 
|-
 
| 04:32
 
| 04:32
| आशा है आप ब्लॉक में और ब्लॉक से बाहर 'my' वेरिएबल प्रयोग करने का स्कोप समझने में सक्षम हैं।  
+
| आशा है आप ब्लॉक में और ब्लॉक से बाहर 'my' वेरिएबल प्रयोग करने का स्कोप समझने में सक्षम हैं।  
  
 
|-
 
|-
 
| 04:41
 
| 04:41
| आगे, हम 'Perl' में 'dynamically scoped variable' के बारे में देखेंगे।  
+
| आगे, हम '''Perl''' में '''dynamically scoped variable''' के बारे में देखेंगे।  
  
 
|-
 
|-
 
|04:47
 
|04:47
| 'Local' कीवर्ड 'global' वेरिएबल को एक अस्थाई स्कोप देता है।  
+
| 'Local' कीवर्ड '''global''' वेरिएबल को एक अस्थाई स्कोप देता है।  
  
 
|-
 
|-
Line 199: Line 197:
 
|-
 
|-
 
|04:58
 
|04:58
| आप निम्न की तरह 'local' वेरिएबल घोषित कर सकते हैं:
+
| आप निम्न की तरह '''local''' वेरिएबल घोषित कर सकते हैं:
  
'local $fValue = 100 सेमीकोलन'
+
'''local $fValue''' = 100 सेमीकोलन'
  
'local $fname' =  डबल कोट्स में 'Rakesh' सेमीकोलन  
+
'''local $fname''' =  डबल कोट्स में '''Rakesh''' सेमीकोलन  
  
 
|-
 
|-
Line 211: Line 209:
 
|-
 
|-
 
|05:17
 
|05:17
| 'टर्मिनल' खोलें और टाइप करें: 'gedit scope हाइफन local डॉट pl ampersand' और एंटर दबाएं।  
+
| 'टर्मिनल' खोलें और टाइप करें: '''gedit scope''' हाइफन local डॉट pl ampersand' और एंटर दबाएं।  
  
 
|-
 
|-
 
|05:27
 
|05:27
| यह 'gedit' में 'scope हाइफन local डॉट pl' फाइल खोलेगा।  
+
| यह 'gedit' में '''scope हाइफन local डॉट pl''' फाइल खोलेगा।  
  
 
|-
 
|-
 
| 05:33
 
| 05:33
| स्कीन पर प्रदर्शित की तरह निम्न कोड टाइप करें। अब मैं कोड समझाती हूँ।  
+
| स्क्रीन पर प्रदर्शित की तरह निम्न कोड टाइप करें। अब मैं कोड समझाती हूँ।  
  
 
|-
 
|-
Line 227: Line 225:
 
|-
 
|-
 
|05:47
 
|05:47
| फंक्शन 'Welcome()' में, हमने एक 'local' वेरिएबल उसी नाम '$fname' से घोषित किया है।  
+
| फंक्शन '''Welcome()''' में, हमने एक '''local''' वेरिएबल उसी नाम '$fname' से घोषित किया है।  
  
 
|-
 
|-
 
| 05:54
 
| 05:54
|  वेरिएबल के नाम से पहले 'local' कीवर्ड पर ध्यान दें
+
|  वेरिएबल के नाम से पहले '''local''' कीवर्ड पर ध्यान दें
  
 
|-
 
|-
 
| 05:59
 
| 05:59
| और हमने इस वेरिएबल को वैल्यू 'Rakesh' असाइन की है।  
+
| और हमने इस वेरिएबल को वैल्यू '''Rakesh''' असाइन की है।  
  
 
|-
 
|-
 
| 06:03
 
| 06:03
| अतः, मूलतः, फंक्शन 'Welcome()' में, '$fname' एक नए अस्थायी 'लोकल' वेरिएबल की तरह रूपांतरित होता है।  
+
| अतः, मूलतः, फंक्शन '''Welcome()''' में, '''$fname''' एक नए अस्थायी 'लोकल' वेरिएबल की तरह रूपांतरित होता है। फिर, फंक्शन 'Hello()' कॉल किया जा रहा है।  
फिर, फंक्शन 'Hello()' कॉल किया जा रहा है।  
+
  
 
|-
 
|-
Line 252: Line 249:
 
|-
 
|-
 
|06:25
 
|06:25
| अब प्रोग्राम को सेव करने के लिए 'Ctrl + S' दबाते हैं।  
+
| अब प्रोग्राम को सेव करने के लिए '''Ctrl + S''' दबाते हैं।  
  
 
|-
 
|-
Line 260: Line 257:
 
|-
 
|-
 
|06:31
 
|06:31
| 'टर्मिनल' पर वापस जाएँ और टाइप करें: 'perl scope हाइफन local.pl' और एंटर दबाएँ।  
+
| 'टर्मिनल' पर वापस जाएँ और टाइप करें: '''perl scope हाइफन local.pl''' और एंटर दबाएँ।  
  
 
|-
 
|-
 
|06:41
 
|06:41
 
| आउटपुट निम्न की तरह दिखता है।  
 
| आउटपुट निम्न की तरह दिखता है।  
'Hello, Rakesh!'
+
'''Hello, Rakesh!'''
'Hello, Welcome to Spoken tutorials!'
+
'''Hello, Welcome to Spoken tutorials!'''
  
 
|-
 
|-
Line 274: Line 271:
 
|-
 
|-
 
|06:51
 
|06:51
| जब फंक्शन 'Welcome()' कॉल होता है, तो इसके अंदर फंक्शन 'Hello()' 'local' वेरिएबल को एक्सेस करता है।  
+
| जब फंक्शन '''Welcome()''' कॉल होता है, तो इसके अंदर फंक्शन '''Hello()' 'local''' वेरिएबल को एक्सेस करता है।  
  
 
|-
 
|-
 
| 06:59
 
| 06:59
| 'Welcome()' में, '$fname' वैल्यू 'Rakesh' रखता है।  
+
| '''Welcome()''' में, '''$fname''' वैल्यू '''Rakesh''' रखता है।  
  
 
|-
 
|-
 
| 07:04
 
| 07:04
| इसके बाद फंक्शन 'Hello()' एक बार फिर वेरिएबल '$fname' को एक्सेस करता है।  
+
| इसके बाद फंक्शन '''Hello()''' एक बार फिर वेरिएबल '''$fname''' को एक्सेस करता है।  
  
 
|-
 
|-
 
| 07:11
 
| 07:11
| लेकिन इस समय, यह वो वेरिएबल '$fname' है जो 'Welcome to spoken tutorials' को इनिशिअलाइज़ हुआ था।  
+
| लेकिन इस समय, यह वो वेरिएबल '''$fname''' है जो '''Welcome to spoken tutorials''' को इनिशिअलाइज़ हुआ था।  
  
 
|-
 
|-
 
| 07:19
 
| 07:19
| यह फंक्शन 'Welcome()' में लोकल वेरिएबल '$fname' को एक्सेस नहीं करता है।  
+
| यह फंक्शन '''Welcome()''' में लोकल वेरिएबल '''$fname''' को एक्सेस नहीं करता है।  
  
 
|-
 
|-
 
| 07:25
 
| 07:25
|  जिसका मतलब है कि ब्लॉक 'Welcome()' छोड़ने के बाद, लोकल वेरिएबल 'scope' को पुरानी स्थिति में वापस लाता है।
+
|  जिसका मतलब है कि ब्लॉक '''Welcome()''' छोड़ने के बाद, लोकल वेरिएबल '''scope''' को पुरानी स्थिति में वापस लाता है।
  
 
|-
 
|-
Line 306: Line 303:
 
|-
 
|-
 
|07:43
 
|07:43
| 'ग्लोबल वेरिएबल्स' 'our' कीवर्ड के साथ घोषित होते हैं।  
+
| 'ग्लोबल वेरिएबल्स' '''our''' कीवर्ड के साथ घोषित होते हैं।  
  
 
|-
 
|-
Line 320: Line 317:
 
|-
 
|-
 
|08:06
 
|08:06
| 'टर्मिनल' पर वापस जाएँ और टाइप करें: 'gedit scope हाइफन our डॉट pl ampersand' और एंटर दबाएं।  
+
| 'टर्मिनल' पर वापस जाएँ और टाइप करें: '''gedit scope''' हाइफन our डॉट pl ampersand' और एंटर दबाएं।  
  
 
|-
 
|-
 
|08:16
 
|08:16
| यह 'gedit' में 'scope हाइफन our डॉट pl' फाइल खोलेगा।  
+
| यह '''gedit''' में '''scope हाइफन our डॉट pl' फाइल खोलेगा।  
  
 
|-
 
|-
Line 332: Line 329:
 
|-
 
|-
 
|08:27
 
|08:27
|  मैंने 'package main' और 'our $i' की तरह एक 'ग्लोबल वेरिएबल' घोषित किया है और इसे '100' से इनिशिअलाइज़ किया है।  
+
|  मैंने 'package main' और 'our $i' की तरह एक 'ग्लोबल वेरिएबल' घोषित किया है और इसे '''100''' से इनिशिअलाइज़ किया है।  
  
 
|-
 
|-
 
|08:37
 
|08:37
| 'package First' घोषणा पर ध्यान दें।  
+
| '''package First''' घोषणा पर ध्यान दें।  
  
 
|-
 
|-
 
| 08:40
 
| 08:40
| 'package' कोड का संग्रह है जिसका खुद का 'namespace' होता है।  
+
| ''''package''' कोड का संग्रह है जिसका खुद का '''namespace''' होता है।  
  
 
|-
 
|-
 
| 08:46
 
| 08:46
| 'Namespace' 'पैकेजेस' के बीच 'वेरिएबल नेम' कोलिजन (collision) यानि संघट्ट को बचाता है।  
+
| '''Namespace''' 'पैकेजेस' के बीच 'वेरिएबल नेम' कोलिजन (collision) यानि संघट्ट को बचाता है।  
  
 
|-
 
|-
 
| 08:51
 
| 08:51
| हम 'पैकेज' और 'namespace' के बारे में अधिक आगे के ट्यूटोरियल्स में देखेंगे।  
+
| हम 'पैकेज' और '''namespace''' के बारे में अधिक आगे के ट्यूटोरियल्स में देखेंगे।  
  
 
|-
 
|-
 
|08:56
 
|08:56
| 'package First' में, ग्लोबल वेरिएबल 'i' वैल्यू 10 रखता है।  
+
|'''package First''' में, ग्लोबल वेरिएबल '''i''' वैल्यू 10 रखता है।  
  
 
|-
 
|-
 
|09:02
 
|09:02
| 'package Second' में ग्लोबल वेरिएबल 'i' को वैल्यू 20 असाइन की जाती है।  
+
| 'package Second' में ग्लोबल वेरिएबल '''i''' को वैल्यू 20 असाइन की जाती है।  
  
 
|-
 
|-
 
|09:08
 
|09:08
| मेन पैकेज 'package First variable' और 'package Second variable' दोनों को उपयोग करता है।  
+
|मेन पैकेज '''package First variable''' और '''package Second variable''' दोनों को उपयोग करता है।  
 
   
 
   
 
|-
 
|-
Line 368: Line 365:
 
|-
 
|-
 
| 09:21
 
| 09:21
| 'पैकेज वेरिएबल' 'package name कोलन कोलन variable name' से उल्लिखित होता है।  
+
| 'पैकेज वेरिएबल' '''package name कोलन कोलन variable name''' से उल्लिखित होता है।  
  
 
|-
 
|-
 
| 09:29
 
| 09:29
| हमारे उदाहरण में, यह '$First कोलन कोलन i, $Second कोलन कोलन i' है।  
+
| हमारे उदाहरण में, यह '''$First कोलन कोलन i, $Second कोलन कोलन i''' है।  
  
 
|-
 
|-
Line 400: Line 397:
 
|-
 
|-
 
| 10:16
 
| 10:16
| इस ट्यूटोरियल में, हमने निम्न करना सीखा:  उदाहरणों के साथ
+
| इस ट्यूटोरियल में, हमने निम्न करना सीखा:  उदाहरणों के साथ वेरिएबल्स का स्कोप  
* वेरिएबल्स का स्कोप  
+
'''private variables''' की घोषणा  
* 'private variables' की घोषणा  
+
'''dynamically scoped variables''' और  
* 'dynamically scoped variables' और  
+
'''global variables'''
* 'global variables'
+
  
 
|-
 
|-
Line 420: Line 416:
 
|-
 
|-
 
| 10:42
 
| 10:42
| 'FirstModule' की तरह एक 'पैकेज' की घोषणा करें।   
+
| '''FirstModule''' की तरह एक 'पैकेज' की घोषणा करें।   
  
 
|-
 
|-
Line 428: Line 424:
 
|-
 
|-
 
| 10:52
 
| 10:52
| 'SecondModule' की तरह एक अन्य पैकेज घोषित करें।  
+
| '''SecondModule''' की तरह एक अन्य पैकेज घोषित करें।  
  
 
|-
 
|-
Line 436: Line 432:
 
|-
 
|-
 
| 11:05
 
| 11:05
| एक सब-रूटीन 'First()' घोषित करें।  
+
| एक सब-रूटीन '''First()''' घोषित करें।  
  
 
|-
 
|-
 
| 11:08
 
| 11:08
|  सब-रूटीन में, निम्न की तरह 'local' और 'my' कीवर्ड के साथ दो वेरिएबल्स घोषित करें:
+
|  सब-रूटीन में, निम्न की तरह '''local''' और 'my' कीवर्ड के साथ दो वेरिएबल्स घोषित करें:
  
 
|-
 
|-
Line 452: Line 448:
 
|-
 
|-
 
| 11:27
 
| 11:27
| एक अन्य सब-रूटीन 'Result()' कॉल करें।  
+
| एक अन्य सब-रूटीन '''Result()''' कॉल करें।  
  
 
|-
 
|-
Line 468: Line 464:
 
|-
 
|-
 
| 11:42
 
| 11:42
| '$age' और '$ageword' की वैल्यूज़ को दोबारा प्रिंट करें।   
+
| '$age' और '''$ageword''' की वैल्यूज़ को दोबारा प्रिंट करें।   
  
 
|-
 
|-
Line 476: Line 472:
 
|-
 
|-
 
| 11:49
 
| 11:49
| फंक्शन 'First()' को कॉल करें।  
+
| फंक्शन '''First()''' को कॉल करें।  
  
 
|-
 
|-
 
| 11:51
 
| 11:51
| नीचे की तरह 'Package First' और 'Package Second' को प्रिंट करें।  
+
| नीचे की तरह '''Package First''' और '''Package Second''' को प्रिंट करें।  
  
 
|-
 
|-

Latest revision as of 11:13, 3 March 2017

Time Narration
00:01 Access Modifiers in PERL पर स्पोकन ट्यूटोरियल में आपका स्वागत है।
00:07 इस ट्यूटोरियल में हम निम्न के बारे में सीखेंगे:

स्कोप ऑफ़ वेरिएबल्स Private वेरिएबल्स Dynamically scoped वेरिएबल्स Global वेरिएबल्स

00:19 इस ट्यूटोरियल के लिए मैं उपयोग कर रही हूँ:

'उबन्टु लिनक्स 12.04' ऑपरेटिंग सिस्टम 'Perl 5.14.2' और 'gedit' टेक्स्ट एडिटर

00:32 आप अपनी पसंद का कोई भी टेक्स्ट एडिटर उपयोग कर सकते हैं।
00:36 आपको 'Perl' प्रोग्रामिंग का बुनियादी ज्ञान होना चाहिए।
00:40 यदि नहीं तो स्पोकन ट्यूटोरियल वेबसाइट पर सम्बंधित 'Perl' स्पोकन ट्यूटोरियल्स को देखें।
00:47 अब 'वेरिएबल्स के स्कोप' के परिचय से शुरू करते हैं।
00:51 वेरिएबल का स्कोप कोड का वो क्षेत्र है जिसमें वेरिएबल एक्सेस किया जा सकता है।
00:58 दूसरे शब्दों में, यह वेरिएबल्स की प्रत्यक्षता को दिखाता है।
01:03 पहले, हम 'Perl' में 'my', 'local' और 'our' मॉडिफायर्स के बारे में चर्चा करेंगे।
01:10 'my' का मतलब है 'Private variables',
01:13 'local' का मतलब है 'Dynamically scoped variables',
01:17 'our' का मतलब है 'Global variables'.
01:20 'my' कीवर्ड के साथ घोषित हुए वेरिएबल्स उस 'ब्लॉक' के बाहर स्कोप खो देंगे जिसमें वो घोषित हुए हैं।
01:28 आप एक वेरिएबल को वैल्यू दिए बिना घोषित कर सकते हैं, जैसे 'my $fvalue सेमीकोलन'
01:37 आप एक वेरिएबल को वैल्यू असाइन करके भी घोषित कर सकते हैं, जैसे
01:43 my $fValue = 1 सेमीकोलन
01:48 'my $fname' = डबल कोट्स में Rahul सेमीकोलन
01:55 समान 'my' स्टेटमेंट के साथ अनेक वेरिएबल्स को घोषित करने के लिए सिंटैक्स निम्न प्रकार है:
02:02 'my' ब्रैकेट खोलें '$fname' कॉमा '$lname' कॉमा '$age' ब्रैकेट बंद करें सेमीकोलन
02:12 अब एक सैंपल प्रोग्राम प्रयोग करके 'private' वेरिएबल्स को समझते हैं।
02:17 मेरे पास पहले से सैंपल प्रोग्राम है। मैं इसे 'gedit' टेक्स्ट एडिटर में खोलती हूँ।
02:24 'टर्मिनल' खोलें और टाइप करें: 'gedit scope हाइफन my डॉट pl ampersand' और एंटर दबाएं।
02:34 'Scope-my dot pl' फाइल अब 'gedit' में खुलती है।
02:39 स्क्रीन पर प्रदर्शित की तरह निम्नलिखित कोड टाइप करें। अब मैं कोड समझाती हूँ।
02:46 यहाँ, मैंने 'my' कीवर्ड के साथ एक 'private' वेरिएबल '$fname' घोषित किया है।
02:52 और इसे वैल्यू 'Raghu' असाइन की है।
02:56 इस ब्लॉक में, 'print' स्टेटमेंट 'fname' वेरिएबल जोकि 'Raghu' है उसमें वैल्यू प्रिंट करता है।
03:04 अगले ब्लॉक में, मैंने उसी 'private' वेरिएबल '$fname' को 'Other' वैल्यू असाइन की है।
03:11 अतः, 'प्रिंट स्टेटमेंट' इस विशेष ब्लॉक में 'Other' प्रिंट करेगा।
03:17 इस प्रोग्राम में आखिरी 'प्रिंट स्टेटमेंट' कोई आउटपुट प्रिंट नहीं करेगा।
03:23 ऐसा इसलिए है क्योंकि पहले परिभाषित ब्लॉक्स के स्कोप के बाहर, 'fname' को कोई वैल्यू असाइन नहीं है।
03:32 अब फाइल सेव करने के लिए Ctrl+S दबाएं।
03:37 अब प्रोग्राम को निष्पादित करते हैं।
03:40 'टर्मिनल' पर वापस जाएँ और टाइप करें 'perl scope हाइफन my डॉट pl' और एंटर दबाएं।
03:49 आउटपुट निम्न की तरह दिखता है:

'Block 1: Raghu'

'Block 2: Other'

'Outside Block: ' कोई आउटपुट नहीं।

03:59 अतः, 'my' वेरिएबल का स्कोप केवल कोड के एक विशेष ब्लॉक में एक्सेस किया जाता है।
04:06 अब, मौजूदा प्रोग्राम को थोड़ा सा बदलते हैं।
04:10 अब आखिरी 'प्रिंट स्टेटमेंट' से पहले ब्लॉक्स के बाहर 'my $fname = डबल कोट्स में John सेमीकोलन' जोड़ते हैं। बदलावों को सेव करें।
04:23 'टर्मिनल' पर वापस जाएँ और पहले की तरह निष्पादित करें।
04:28 प्रदर्शित आउटपुट का विश्लेषण करें।
04:32 आशा है आप ब्लॉक में और ब्लॉक से बाहर 'my' वेरिएबल प्रयोग करने का स्कोप समझने में सक्षम हैं।
04:41 आगे, हम Perl में dynamically scoped variable के बारे में देखेंगे।
04:47 'Local' कीवर्ड global वेरिएबल को एक अस्थाई स्कोप देता है।
04:52 वेरिएबल वास्तविक ब्लॉक से कॉल हुए किसी भी 'फंक्शन' के लिए दृश्यमान होता है।
04:58 आप निम्न की तरह local वेरिएबल घोषित कर सकते हैं:

local $fValue = 100 सेमीकोलन'

local $fname = डबल कोट्स में Rakesh सेमीकोलन

05:13 अब एक सैंपल प्रोग्राम प्रयोग करके इसे समझते हैं।
05:17 'टर्मिनल' खोलें और टाइप करें: gedit scope हाइफन local डॉट pl ampersand' और एंटर दबाएं।
05:27 यह 'gedit' में scope हाइफन local डॉट pl फाइल खोलेगा।
05:33 स्क्रीन पर प्रदर्शित की तरह निम्न कोड टाइप करें। अब मैं कोड समझाती हूँ।
05:40 यहाँ, पहली लाइन में, हमने एक वेरिएबल '$fname' घोषित किया है और इसे इनिशिअलाइज़ किया है।
05:47 फंक्शन Welcome() में, हमने एक local वेरिएबल उसी नाम '$fname' से घोषित किया है।
05:54 वेरिएबल के नाम से पहले local कीवर्ड पर ध्यान दें
05:59 और हमने इस वेरिएबल को वैल्यू Rakesh असाइन की है।
06:03 अतः, मूलतः, फंक्शन Welcome() में, $fname एक नए अस्थायी 'लोकल' वेरिएबल की तरह रूपांतरित होता है। फिर, फंक्शन 'Hello()' कॉल किया जा रहा है।
06:15 यहाँ 'Hello()' की फंक्शन परिभाषा है।
06:18 प्रोग्राम के अंत में, हम 'Welcome()' और 'Hello()' दोनों फंक्शन्स को कॉल कर रहे हैं।
06:25 अब प्रोग्राम को सेव करने के लिए Ctrl + S दबाते हैं।
06:29 अब प्रोग्राम को निष्पादित करते हैं।
06:31 'टर्मिनल' पर वापस जाएँ और टाइप करें: perl scope हाइफन local.pl और एंटर दबाएँ।
06:41 आउटपुट निम्न की तरह दिखता है।

Hello, Rakesh! Hello, Welcome to Spoken tutorials!

06:48 अब आउटपुट को समझते हैं।
06:51 जब फंक्शन Welcome() कॉल होता है, तो इसके अंदर फंक्शन Hello()' 'local वेरिएबल को एक्सेस करता है।
06:59 Welcome() में, $fname वैल्यू Rakesh रखता है।
07:04 इसके बाद फंक्शन Hello() एक बार फिर वेरिएबल $fname को एक्सेस करता है।
07:11 लेकिन इस समय, यह वो वेरिएबल $fname है जो Welcome to spoken tutorials को इनिशिअलाइज़ हुआ था।
07:19 यह फंक्शन Welcome() में लोकल वेरिएबल $fname को एक्सेस नहीं करता है।
07:25 जिसका मतलब है कि ब्लॉक Welcome() छोड़ने के बाद, लोकल वेरिएबल scope को पुरानी स्थिति में वापस लाता है।
07:32 आगे, हम 'Perl' में 'ग्लोबल' वेरिएबल्स के बारे में सीखेंगे।
07:38 एक 'ग्लोबल वेरिएबल' प्रोग्राम में कहीं भी एक्सेस किया जा सकता है।
07:43 'ग्लोबल वेरिएबल्स' our कीवर्ड के साथ घोषित होते हैं।
07:47 यहाँ कुछ उदाहरण हैं।

'our $fvalue = 100 सेमीकोलन' 'our $fname = डबल कोट्स में Priya सेमीकोलन'

08:01 अब, 'ग्लोबल' वेरिएबल्स का एक कार्यकारी उदाहरण देखते हैं।
08:06 'टर्मिनल' पर वापस जाएँ और टाइप करें: gedit scope हाइफन our डॉट pl ampersand' और एंटर दबाएं।
08:16 यह gedit में scope हाइफन our डॉट pl' फाइल खोलेगा।
08:22 अब मैं वो सैंपल प्रोग्राम समझाती हूँ जो मैंने लिखा है।
08:27 मैंने 'package main' और 'our $i' की तरह एक 'ग्लोबल वेरिएबल' घोषित किया है और इसे 100 से इनिशिअलाइज़ किया है।
08:37 package First घोषणा पर ध्यान दें।
08:40 'package कोड का संग्रह है जिसका खुद का namespace होता है।
08:46 Namespace 'पैकेजेस' के बीच 'वेरिएबल नेम' कोलिजन (collision) यानि संघट्ट को बचाता है।
08:51 हम 'पैकेज' और namespace के बारे में अधिक आगे के ट्यूटोरियल्स में देखेंगे।
08:56 package First में, ग्लोबल वेरिएबल i वैल्यू 10 रखता है।
09:02 'package Second' में ग्लोबल वेरिएबल i को वैल्यू 20 असाइन की जाती है।
09:08 मेन पैकेज package First variable और package Second variable दोनों को उपयोग करता है।
09:15 प्रोग्राम में, मैंने सारे 'पैकेजेस' में समान वेरिएबल 'i' घोषित किया है।
09:21 'पैकेज वेरिएबल' package name कोलन कोलन variable name से उल्लिखित होता है।
09:29 हमारे उदाहरण में, यह $First कोलन कोलन i, $Second कोलन कोलन i है।
09:39 हमारे पास एक फाइल में विविध 'पैकेजेस' हैं और ग्लोबल वेरिएबल सारे 'पैकेजेस' से एक्सेस किये जायेंगे।
09:47 अब, फाइल को सेव करें और प्रोग्राम को निष्पादित करें।
09:51 अतः, 'टर्मिनल' पर जाएँ और टाइप करें: 'perl scope हाइफन our डॉट pl' और एंटर दबाएं।
09:59 'टर्मिनल' पर आउटपुट प्रदर्शित होता है।
10:03 'वेरिएबल i' का नियत कार्य कैसे किया गया था, यह समझने के लिए आप आउटपुट का अपने आप विश्लेषण करें
10:11 यह हमें इस ट्यूटोरियल के अंत में लाता है। इसे सारांशित करते हैं।
10:16 इस ट्यूटोरियल में, हमने निम्न करना सीखा: उदाहरणों के साथ वेरिएबल्स का स्कोप

private variables की घोषणा dynamically scoped variables और global variables

10:29 कम्पाइलेशन तेज़ी से करने के लिए 'लोकल' के बदलें 'my' उपयोग करने की सलाह दी जाती है।
10:35 यहाँ आपके लिए एक नियत कार्य है।
10:37 निम्न नियत कार्य के लिए कोड लिखें और इसे निष्पादित करें।
10:42 FirstModule की तरह एक 'पैकेज' की घोषणा करें।
10:46 एक वेरिएबल '$age' को 'our' की तरह घोषित करें और वैल्यू '42' असाइन करें।
10:52 SecondModule की तरह एक अन्य पैकेज घोषित करें।
10:56 एक वेरिएबल '$ageword' को 'our' की तरह घोषित करें और डबल कोट्स में "Forty-Two" वैल्यू असाइन करें।
11:05 एक सब-रूटीन First() घोषित करें।
11:08 सब-रूटीन में, निम्न की तरह local और 'my' कीवर्ड के साथ दो वेरिएबल्स घोषित करें:
11:16 'local' '$age = 52' सेमीकोलन
11:20 'my' '$ageword' = डबल कोट्स में Fifty-two सेमीकोलन
11:27 एक अन्य सब-रूटीन Result() कॉल करें।
11:31 इस फंक्शन में '$age' और '$ageword' की वैल्यूज़ को प्रिंट करें।
11:37 सब-रूटीन का अंत करें।
11:39 सब-रूटीन 'Result()' को घोषित करें।
11:42 '$age' और $ageword की वैल्यूज़ को दोबारा प्रिंट करें।
11:47 सब-रूटीन का अंत करें।
11:49 फंक्शन First() को कॉल करें।
11:51 नीचे की तरह Package First और Package Second को प्रिंट करें।
11:57 निम्न लिंक पर उपलब्ध वीडिओ स्पोकन ट्यूटोरियल प्रोजेक्ट को सारांशित करता है। कृपया इसे डाउनलोड करें और देखें।
12:05 स्पोकन ट्यूटोरियल प्रोजेक्ट टीम स्पोकन ट्यूटोरियल्स का उपयोग करके कार्यशालाएं चलाती है और ऑनलाइन टेस्ट पास करने वालों को प्रमाणपत्र देती है। अधिक जानकारी के लिए कृपया हमें लिखें।
12:18 स्पोकन ट्यूटोरियल प्रोजेक्ट भारत सरकार के एम एच आर डी के NMEICT द्वारा निधिबद्ध है। इस मिशन पर अधिक जानकारी इस लिंक पर उपलब्ध है।
12:31 आय आय टी बॉम्बे से मैं श्रुति आर्य आपसे विदा लेती हूँ। हमसे जुड़ने के लिए धन्यवाद।

Contributors and Content Editors

Devraj, Pratik kamble, Shruti arya