मुख्य कंटेंट तक स्किप करें

फल और चर

परिचय

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

फल प्रोग्राम के कार्य और तर्क को बनाने वाली मुख्य इकाई है, और चर इस प्रक्रिया में आवश्यक डेटा को संग्रहीत और प्रबंधित करता है। यदि आप फल और चर का परिभाषित और उपयोग करने के तरीके को सही ढंग से समझते हैं, तो आप Wave भाषा की संरचना और डिज़ाइन इरादों का अधिक गहराई से उपयोग कर सकते हैं।


फल

Wave में, फल एक स्वतंत्र रूप से निष्पादित होने वाला पुन: उपयोग करने योग्य कोड ब्लॉक है। आप अव्यक्त क्रियाओं या गणनाओं को एक इकाई में संक्षिप्त कर सकते हैं, और आवश्यकता पड़ने पर प्रोग्राम में इसे कॉल कर सकते हैं।

फलों का उपयोग करके आप दोहराए जाने वाले कोड को कम कर सकते हैं, और प्रोग्राम को तार्किक रूप से विभाजित करके पठनीयता और रखरखाव को बढ़ा सकते हैं। यह गणना प्रसंस्करण, इनपुट/आउटपुट प्रबंधन, और तर्क अलगाव जैसे विभिन्न उद्देश्यों में भी उपयोग किया जाता है।

Wave में, फल को fun कीवर्ड से परिभाषित किया जाता है, और इसमें फल का नाम, प्राप्तांक सूची, और से घिरा हुआ फल मुख्य भाग शामिल होता है।

फल परिभाषा

Wave में सबसे बुनियादी फल परिभाषा का रूप इस प्रकार है।

fun main() {
// अपना कोड यहां लिखें
}

main फल प्रोग्राम के निष्पादन का प्रवेश बिंदु है, और Wave प्रोग्राम में कम से कम एक main फल होना चाहिए। यह प्रोग्राम इस फल से निष्पादन शुरू करता है।

फल आवश्यकता पड़ने पर प्राप्तांक रख सकता है, और इसे गणना परिणाम या मान को कॉल किए गए स्थान पर वापस भी कर सकता है। यदि एक प्रत्यावर्तन मूल्य है, तो प्रत्यावर्तन प्रकार को फल घोषणा में निर्दिष्ट किया जाता है।

उदाहरण: एक सरल फ़ंक्शन

यह उदाहरण दो पूर्णांक ग्रहण करता है और उनका योग प्रत्यावर्तन करने वाला एक सरल फल है।

fun add(a :i32, b :i32) -> i32 {
return a + b;
}

fun main() {
var result = add(5, 7); // फ़ंक्शन कॉल जोड़ें
println(result); // आउटपुट: 12
}

इस उदाहरण में, add फल दो पूर्णांक प्राप्तांक a और b को ग्रहण करता है, उन्हें जोड़ता है और परिणाम प्रत्यावर्तन करता है। main फल add फल को कॉल करता है, प्रत्यावर्तित मान को एक चर में संग्रहीत करता है और उसे प्रदर्शित करता है।

फल एक विशेष कार्य को संक्षिप्त करता है और इसे प्रोग्राम के विभिन्न हिस्सों में पुन: उपयोग करने देता है।

परिवर्तनीय

परिवर्तनीय प्रोग्राम के भीतर डेटा को संग्रहीत और संचालित करने के लिए उपयोग होते हैं। Wave परिवर्तनीय की घोषणा के समय परिवर्तनशील और अपरिवर्तनीय परिवर्तनी को स्पष्ट रूप से विभाजित करता है, ताकि डेटा परिवर्तन की मंशा को कोड स्तर पर प्रकट कर सके।

इससे प्रोग्राम की स्थिति परिवर्तन अधिक स्पष्ट हो जाती है, और अप्रत्याशित मान परिवर्तनों से होने वाली त्रुटियों को कम किया जा सकता है।

परिवर्तनीय

Wave में, परिवर्तनी मूल रूप से परिवर्तनशील (mutable) होते हैं। अर्थात, एक बार घोषित किए जाने के बाद भी प्रोग्राम निष्पादन के मध्य में मान बदले जा सकते हैं।

परिवर्तनीय को var कीवर्ड का उपयोग करके घोषित किया जाता है।

var x :i32 = 10;
x = 20;

उपरोक्त कोड में x की प्रारंभिक मान 10 है, और बाद में इसे 20 में बदल सकते हैं। ऐसे डेटा के लिए जहां स्थिति बदलनी चाहिए, परिवर्तनीय का उपयोग करें।

अपरिवर्तनीय

जब परिवर्तनीय को अपरिवर्तनीय (immutable) घोषित किया जाता है, एक बार प्रारंभिक मान सौंप दिए जाने के बाद उसे बदला नहीं जा सकता। अपरिवर्तनीय परिवर्तनीयों को let कीवर्ड का उपयोग करके घोषित किया जाता है।

let y :i32 = 5;
// y = 10; // त्रुटि: अपरिवर्तनीय चर अपना मान नहीं बदल सकते।

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

Wave में let कीवर्ड के साथ mut का उपयोग करके, स्पष्ट रूप से परिवर्तनशीलता की अनुमति भी दी जा सकती है।

let mut y :i32 = 5;
y = 10;

इस मामले में, परिवर्तनीय let के साथ घोषित किया गया है, लेकिन mut कीवर्ड द्वारा मूल्य परिवर्तन की अनुमति दी गई है।

परिवर्तनीय घोषणा उदाहरण

निम्नलिखित विभिन्न प्रकार के परिवर्तनीय और अपरिवर्तनीय परिवर्तनीयों को घोषित करने के उदाहरण हैं।

var x :i32 = 10;
let y :f64 = 3.14159;
var name :str = "Wave";
let is_active :bool = true;

इस उदाहरण में, x और name परिवर्तनीय हैं, जबकि y और is_active अपरिवर्तनीय हैं। Wave में var और let को स्पष्ट रूप से अलग करके, यह स्पष्ट करता है कि डेटा बदला जा सकता है या नहीं।

परिवर्तनीय और अपरिवर्तनीय परिवर्तनीयों का उचित तरीके से अलग-अलग उपयोग करने से डेटा की संगति को बनाए रखते हुए एक मजबूत और पूर्वानुमान योग्य कार्यक्रम लिखा जा सकता है।