செயலிகள் மற்றும் மாறிலிகள்
அறிமுகம்
Wave நிரலாக்க மொழியின் முக்கிய வடிவமைப்பு தத்துவம் குறைந்த நிலை செயல்திறனும், உயர்ந்த நிலை அவசரமயமாக்கலின் சமநிலையும் கொண்டு மென்பொருள் மேம்பாட்டிற்கு திறம்பட மற்றும் விவரமான சூழலை வழங்குவதாகும். இந்த பிரிவில், Wave செயலியின் அடிப்படை கூறுகளான செயலிகள் மற்றும் மாறிலிகளை அறிமுகப்படுத்துகிறோம். இந்த கூறுகள் நிரலின் உள்ளே கருத்துக்களை வடிவமைக்கும் மற்றும் தரவுகளை நிர்வகிக்க ும் முக்கியமான பகுதிகள் ஆகும். செயலிகள் மற்றும் மாறிலிகளை வரையறுக்கும் மற்றும் கையாளும் முறைமைகளைப் புரிந்துகொள்வதன் மூலம், Wave-இன் பலவீனங்களை முழுமையாகப் பயன்படுத்த முடியும்.
செயலி
Wave-இல் செயலிகள் மீண்டும் பயன்படுத்தக்கூடிய குறியீட்டு தொகுதிகள் ஆக செயல்படுகின்றன. செயலிகள் ஒரு குறிப்பிட்ட செயல்பாட்டை மூடி வைத்து, தேவையான போது அதை கோர முடியும். இதன் மூலம் கணக்கீடுகள் மேற்கொள்ள, I/O செயல்களை நிர்வகிக்க, அல்லது குறியீட்டை நிர்வகிக்கக்கூடிய தொகுதிகளாக பிரிக்க முடியும்.
Wave-இல் செயலியின் ஒத்திசைவு fun
என்ற விசையுடன் தொடங்குகிறது, செயலியின் பெயர், உள்ளீடுகள் (இருந்தால்), மற்றும் கோடுகளுடன் கூடிய செயலி உடம்பை {}
ஆகியவற்றுடன் காணப்படும்.
செயலி வரையறை
Wave-இல் அடிப்படை செயலி பின்வருமாறு வரையறுக்கப்படுகிறது:
fun main() {
// இங்கே குறியீட்டை எழுதவும்
}
main
செயலி எப்போதும் தேவையான செயலி ஆகும், இது ப்ரோகிராமின் தொடக்க புள்ளியாக செயல்படுகிறது.- செயலி பரிமாற்றங்களை (parameters) கொண்டிருக்கக்கூடும், அது மதிப்புகளை திருப்பி தரக்கூடும். மதிப்பின் வகை செயலியின் பெயருக்குப் பின்னர் குறிப்பிடப்படுகிறது.
உதாரணம்: எளிய செயலி
fun add(a :i32, b :i32) -> i32 {
return a + b;
}
fun main() {
var result = add(5, 7); // add செயலி அழைப்பு
println(result); // வெளியீடு: 12
}
மேலுள்ள உதாரணத்தில்:
add
செயலி இரண்டு முழு எண்களைa
மற்றும்b
பெற்று அவர்களின் கூட்டு மதிப்பை திருப்பி அளிக்கிறது.main
செயலிadd
ஐ அழைத்து அதன் முடிவை அச்சிடுகிறது.
மாறி
மாறிகள் என்பது ஒரு நிரலின் உள்ளே தரவுகளை சேமித்து, அவற்றை மாற்ற பயன்படுத்தப்படும் பொருட்களாகும். Wave உங்களுக்கு மாற்றப்படக்கூடிய மாறிகள் மற்றும் மாற்ற முடியாத மாறிகள் இரண்டையும் ஆதரிக்கின்றது, இது உங்களுக்கு தரவு நிர்வாகம் செய்வதில் அதிக கட்டுப்பாட் டை அளிக்கின்றது.
மாற்றப்படக்கூடிய மாறி
Wave இல் மாறிகள் இயல்பாக மாற்றப்படக்கூடிய (mutable) ஆக உள்ளன. இதன் பொருள், நிரல் இயங்கும் போது அதன் மதிப்பை மாற்ற முடியும்.
மாற்றப்படக்கூடிய மாறி var
விசையுடன் அறிவிக்கப்பட்டுள்ளது.
var x :i32 = 10; // மாற்றப்படக்கூடிய மாறி
x = 20;
மேலுள்ள உதாரணத்தில்:
x
என்பது மாற்றப்படக்கூடிய மாறி ஆகும், முதன்முதலில்10
என்ற மதிப்பை கொண்டுவந்தாலும், பின்னர் அதை20
ஆக மாற்ற முடியும்.
மாற்ற முடியாத மாறி
மாறியை மாற்ற முடியாத (immutable) என அறிவித்தால், அந்த மாறிக்கு ஒரே நேரத்தில் மதிப்பு அளிக்கப்படுவதுடன், அதை பிறகு மாற்ற முடியாது.
மாற்ற முடியாத மாறி var imm
விசையுடன் அறிவிக்கப்படுகிறது.
var imm y :i32 = 5; // மாற்ற முடியாத மாறி
// y = 10; // பிழை: மாற்ற முடியாத மாறியில் மதிப்பை மாற்ற முடியாது.
இங்கே:
y
என்பது மாற்ற முடியாத மாறி ஆகும், இதனை மாற்ற முயற்சிக்கும்போது தொகுப்பாளர் பிழை காட்டும்.
மாறி அறிவிப்பு உதாரணம்
வெவ்வேறு வகை மாற்றப்படக்கூடிய மற்றும் மாற்ற முடியாத மாறிகளை அறிவிப்பதற்கு கீழ்க்காணும் உதாரணம்:
var x :i32 = 10; // மாற்றப்படக்கூடிய முழு எண் மாறி
var imm y :f64 = 3.14159; // மாற்ற முடியாத இரும்பு மாறி
var name :str = "Wave"; // மாற்றப்படக்கூடிய எழுத்து மாறி
var imm is_active :bool = true; // மாற்ற முடியாத புல மாறி
x
என்பது மாற்றப்படக்கூடிய முழு எண் மாறி.y
என்பது மாற்ற முடியாத இரும்பு எண்.name
என்பது மாற்றப்படக்கூடிய எழுத்து மாறி.is_active
என்பது மாற்ற முடியாத புல மாறி.
Wave இல் var
விசையை பயன்படுத்தி மாற்றப்படக்கூடிய மாறிகளை அறிவிக்கின்றோம், var imm
விசையுடன் மாற்ற முடியாத மாறிகளை அறிவிக்கின்றோம்.
மாற்றப்படக்கூடிய மற்றும் மாற்ற முடியாத மாறிகளை பிரித்துக்காட்டுவதன் மூலம், Wave தரவு நிலைத்தன்மை மற்றும் நிரலின் நிலையை சுலபமாக நிர்வகிக்க உதவுகிறது. இதன் மூலம், மேலும் உறுதியான மற்றும் கணிக்கக்கூடிய குறியீடுகளை எழுத முடிகிறது.