Skip to main content

ฟังก์ชันและตัวแปร

แนะนำ

ปรัชญาการออกแบบหลักของภาษาโปรแกรม Wave คือการรักษาสมดุลระหว่างประสิทธิภาพระดับต่ำและการยกระดับสูง เพื่อให้การพัฒนาซอฟต์แวร์มีความยืดหยุ่นและมีประสิทธิภาพ ในส่วนนี้เราจะแนะนำฟังก์ชันและตัวแปร ซึ่งเป็นส่วนประกอบพื้นฐานของโปรแกรม Wave ส่วนประกอบเหล่านี้มีความสำคัญในการจัดการตรรกะและข้อมูลภายในโปรแกรม การเข้าใจวิธีการกำหนดและจัดการฟังก์ชันและตัวแปรจะช่วยให้คุณสามารถใช้ประโยชน์จาก Wave ได้เต็มที่


ฟังก์ชัน

ใน Wave ฟังก์ชันทำหน้าที่เป็น บล็อกโค้ดที่สามารถนำกลับมาใช้ใหม่ และสามารถทำงานได้อย่างอิสระ ฟังก์ชันจะทำการห่อหุ้มการกระทำเฉพาะและสามารถเรียกใช้งานได้ตลอดโปรแกรมเมื่อมีความจำเป็น

ด้วยวิธีนี้คุณสามารถทำการคำนวณ จัดการงาน I/O หรือแบ่งโค้ดออกเป็นหน่วยที่จัดการได้ง่าย

ลายเซ็นของฟังก์ชันใน Wave จะเริ่มต้นด้วยคีย์เวิร์ด fun ตามด้วยชื่อฟังก์ชัน พารามิเตอร์ (ถ้ามี) และร่างกายของฟังก์ชันที่อยู่ในวงเล็บ {}

การกำหนดฟังก์ชัน

ใน Wave ฟังก์ชันพื้นฐานสามารถกำหนดได้ดังนี้:

fun main() {
// เขียนโค้ดที่นี่
}
  • ฟังก์ชัน main เป็นจุดเริ่มต้นของการทำงานของโปรแกรมและจำเป็นต้องมีเสมอ
  • ฟังก์ชันสามารถมีพารามิเตอร์และสามารถส่งค่าผลลัพธ์กลับได้ โดยชนิดของค่าที่ส่งกลับจะระบุหลังชื่อฟังก์ชัน

ตัวอย่าง: ฟังก์ชันง่ายๆ

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 สามารถควบคุมความสอดคล้องของข้อมูลและสถานะของโปรแกรมได้ดียิ่งขึ้น ซึ่งช่วยให้การเขียนโค้ดที่มั่นคงและสามารถทำนายได้มากขึ้น