พื้นฐานโปรแกรมมิ่ง EP.1: “ตัวแปร” กล่องเก็บของวิเศษในคอมพิวเตอร์ รู้จัก int, float, string, boolean
ยินดีต้อนรับสู่ EP.1 ของซีรีส์ Zero to Coder ครับ! หลังจากที่เราปรับ Mindset เข้าใจวิธีคิดของคอมพิวเตอร์ใน EP.0 กันไปแล้ว วันนี้เราจะมาก้าวแรกสู่โลกของการเขียนโค้ดจริงๆ ด้วยแนวคิดที่เป็นรากฐานที่สุดของทุกภาษา นั่นคือ ตัวแปร (Variables) และ ชนิดของข้อมูล (Data Types)
เคยสงสัยไหมครับว่า เมื่อเราพิมพ์ชื่อล็อกอินเข้า Facebook หรือเมื่อแอปพลิเคชันธนาคารจำยอดเงินคงเหลือในบัญชีของเรา คอมพิวเตอร์จำสิ่งเหล่านี้ไว้ที่ไหน? คำตอบคือ มันเก็บไว้ในสิ่งที่เรียกว่า “ตัวแปร” นั่นเองครับ
1. ตัวแปร (Variable) คืออะไร? จินตนาการถึง “กล่องติดป้ายชื่อ”
วิธีเข้าใจตัวแปรที่ง่ายที่สุดในโลก คือการจินตนาการว่าในหน่วยความจำ (RAM) ของคอมพิวเตอร์มีโกดังขนาดใหญ่ที่เต็มไปด้วยกล่องเปล่า
📦 3 องค์ประกอบของตัวแปร
- ชื่อตัวแปร (Identifier): เหมือนป้ายชื่อที่แปะไว้หน้ากล่อง เช่น
player_nameหรือwalletเพื่อให้เราเรียกใช้ถูกกล่อง - ค่าที่เก็บ (Value): สิ่งของที่เราหยิบใส่ลงไปในกล่อง เช่น ข้อความ
"สมชาย"หรือตัวเลข500 - การเปลี่ยนค่า (Mutable): วันนี้ในกล่องมีเงิน 500 บาท พรุ่งนี้เราหยิบออก 100 บาท เหลือ 400 บาท ป้ายชื่อยังเป็น
walletเหมือนเดิม แต่ของข้างในเปลี่ยนไปได้ นี่คือเหตุผลที่มันถูกเรียกว่า “ตัวแปร”
2. ชนิดข้อมูลพื้นฐาน 4 เสาหลัก (Data Types) ที่ต้องรู้
คอมพิวเตอร์เป็นระบบที่เจ้าระเบียบมาก มันจำเป็นต้องรู้ว่าของที่อยู่ในกล่องคือ “ประเภทอะไร” เพื่อจะได้จัดสรรพื้นที่และจัดการได้อย่างถูกต้อง โดยชนิดข้อมูลพื้นฐานที่มีในแทบทุกภาษามีดังนี้ครับ:
| ชนิดข้อมูล (Type) | ชื่อเรียกในโค้ด | คำอธิบาย | ตัวอย่างค่า |
|---|---|---|---|
| จำนวนเต็ม | Integer (int) |
ตัวเลขกลมๆ ไม่มีจุดทศนิยม ใช้คำนวณ บวก ลบ คูณ หาร ได้ทันที | 25, 100, -5, 0 |
| จำนวนทศนิยม | Float |
ตัวเลขที่มีจุดทศนิยม เหมาะกับราคาสินค้า น้ำหนัก อุณหภูมิ | 99.50, 3.14159, -0.75 |
| ข้อความ | String (str) |
ตัวอักษรหรือประโยค ต้องมีเครื่องหมายคำพูด (Quote) ครอบเสมอ | "Hello World", 'สมชาย', "1234" |
| ค่าความจริง | Boolean (bool) |
สวิตช์สองสถานะ มีค่าได้แค่ จริง (True) หรือ เท็จ (False) | True, False |
3. กับดักยอดฮิตของมือใหม่: `100` กับ `”100″` ไม่เหมือนกัน!
โปรดระวังจุดนี้ให้ดีครับ เพราะเป็นจุดที่ทำให้หลายคนงงมากที่สุด:
# กรณีที่ 1: เป็นตัวเลข (Integer)
a = 50
b = 50
print(a + b) # ผลลัพธ์คือ 100 (บวกเลขตามคณิตศาสตร์)
# กรณีที่ 2: เป็นข้อความ (String) เพราะมีเครื่องหมายคำพูดครอบ
x = "50"
y = "50"
print(x + y) # ผลลัพธ์คือ "5050" (เอาข้อความมาต่อกัน ไม่ได้บวกเลข!)
เมื่อใส่เครื่องหมาย " " คอมพิวเตอร์จะมองว่ามันคือ “ตัวอักษรธรรมดา” เหมือนภาพวาด ไม่สามารถนำไปคำนวณทางคณิตศาสตร์ได้ครับ
4. มารยาทและกฎการตั้งชื่อตัวแปรที่ดี (Best Practices)
แม้คอมพิวเตอร์จะไม่สนว่าเราตั้งชื่อตัวแปรว่าอะไร ตราบใดที่ถูกไวยากรณ์ แต่มนุษย์ที่เป็นเพื่อนร่วมทีมเรา (หรือตัวเราเองในอีก 3 เดือนข้างหน้า) แคร์มากครับ!
- ❌ อย่าตั้งชื่อสั้นไร้ความหมาย: เช่น
a = 1500หรือx1 = "Bangkok"(ใครจะไปจำได้ว่า a คืออะไร?) - ✅ ตั้งชื่อให้อ่านรู้เรื่องทันที (Self-documenting): เช่น
monthly_salary = 15000หรือuser_city = "Bangkok" - ✅ สไตล์การตั้งชื่อยอดนิยม:
- snake_case (ยอดนิยมใน Python): ใช้อักษรพิมพ์เล็กคั่นด้วยขีดล่าง เช่น
total_price,is_logged_in - camelCase (ยอดนิยมใน JavaScript / Java): คำแรกพิมพ์เล็ก คำถัดไปพิมพ์ใหญ่ เช่น
totalPrice,isLoggedIn
- snake_case (ยอดนิยมใน Python): ใช้อักษรพิมพ์เล็กคั่นด้วยขีดล่าง เช่น
🎯 มินิชาเลนจ์ประจำตอน: ลองสร้างโปรไฟล์ตัวละครเกม
สมมติว่าคุณกำลังสร้างเกม RPG ลองคิดชื่อตัวแปรและเลือกชนิดข้อมูลให้เหมาะสมสำหรับข้อมูลเหล่านี้:
1. ชื่อฮีโร่
2. เลเวลปัจจุบัน
3. พลังชีวิตที่เหลือ (HP เช่น 85.5%)
4. สถานะว่ายังมีชีวิตอยู่หรือไม่ (Alive / Dead)
สรุปภาพรวม EP.1
ตัวแปรเปรียบเสมือนกล่องเก็บข้อมูลที่มีป้ายชื่อกำกับ และข้อมูลแต่ละประเภท (ตัวเลข, ข้อความ, ความจริง) ก็มีคุณสมบัติและการใช้งานที่แตกต่างกันอย่างสิ้นเชิง
แต่การมีแค่กล่องเก็บของยังสร้างแอปพลิเคชันไม่ได้ ในตอนถัดไป EP.2 เราจะมาเรียนรู้วิธีทำให้โปรแกรม “คิดและตัดสินใจได้” ผ่านเงื่อนไข if-else คลิกอ่านต่อกันได้เลยครับ!
📚 ไม่พลาดทุกบทเรียนในซีรีส์ Zero to Coder
เรียนรู้พื้นฐานการเขียนโปรแกรมทีละสเต็ป พร้อมตัวอย่างที่นำไปใช้ได้จริงกับทุกภาษาคอมพิวเตอร์