ภาษา C# (C-Sharp) เป็นภาษาการเขียนโปรแกรมจาก Microsoft ที่มีความชัดเจนและเป็นระบบสูง การเข้าใจ “Syntax” หรือ ไวยากรณ์ของภาษา C# ถือเป็นจุดเริ่มต้นสำคัญของการเรียนรู้การเขียนโปรแกรม เพราะ Syntax คือกฎเกณฑ์ที่บอกคอมพิวเตอร์ว่าต้องทำอะไรและทำอย่างไร เช่น การประกาศตัวแปร การใช้เครื่องหมายวงเล็บ หรือการสร้างคำสั่งควบคุมการทำงาน
ในบทความนี้ เราจะเรียนรู้โครงสร้างหลักของภาษา C# พร้อมคำอธิบายและตัวอย่างโค้ดที่เข้าใจง่าย เพื่อวางพื้นฐานให้สามารถเขียนโปรแกรมได้อย่างถูกต้อง
Syntax คืออะไร
คำว่า Syntax (ไวยากรณ์) หมายถึง “กฎและรูปแบบการเขียนโปรแกรม” ที่คอมพิวเตอร์สามารถเข้าใจและประมวลผลได้
แต่ละภาษาจะมีกฎเฉพาะของตัวเอง เช่น การประกาศตัวแปร การใช้เครื่องหมาย ; ปิดท้ายบรรทัด หรือรูปแบบของวงเล็บ {}
สำหรับภาษา C# นั้น Syntax ถูกออกแบบมาให้เป็นระบบระเบียบ อ่านง่าย และลดโอกาสเกิดข้อผิดพลาดจากการเขียนโค้ดผิดรูปแบบ
โครงสร้างพื้นฐานของโปรแกรมภาษา C#
ทุกโปรแกรมในภาษา C# จะมีโครงสร้างหลัก ที่ประกอบด้วย namespace, class, และ method โดยเฉพาะเมธอด Main() ซึ่งเป็นจุดเริ่มต้นของโปรแกรม เมื่อรันโปรแกรม คอมพิวเตอร์จะเริ่มประมวลผลจากฟังก์ชันนี้
ในตัวอย่างด้านล่าง คือโปรแกรมที่แสดงข้อความออกทางหน้าจอคอนโซล
namespace MyConsoleApp
{
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
}
}
}อธิบายส่วนประกอบของโค้ด
- namespace MyConsoleApp
ใช้สำหรับจัดกลุ่มคลาสในโปรแกรมให้เป็นระเบียบและป้องกันชื่อซ้ำ - class Program
เป็นคลาสหลักของโปรแกรม ซึ่งทุกโปรแกรมใน C# ต้องมีอย่างน้อยหนึ่งคลาส - static void Main(string[] args)
คือเมธอดหลักที่โปรแกรมจะเริ่มทำงานจากตรงนี้เสมอ (เรียกว่า “Entry Point”) - Console.WriteLine(“Hello, World!”);
เป็นคำสั่งให้แสดงข้อความออกทางหน้าจอคอนโซล
การประกาศตัวแปร (Variable Declaration)
ในภาษา C# ทุกตัวแปรต้องประกาศชนิดข้อมูล (Data Type) ให้ชัดเจน เช่น จำนวนเต็ม ข้อความ หรือค่าความจริง การประกาศตัวแปรช่วยให้โปรแกรมจัดการหน่วยความจำและข้อมูลได้อย่างมีประสิทธิภาพมากขึ้น
int age = 25;
string name = "Somchai";
double height = 175.5;
bool isStudent = true;int→ เก็บค่าจำนวนเต็มstring→ เก็บข้อความdouble→ เก็บค่าทศนิยมbool→ เก็บค่าความจริง (true/false)
คำสั่งควบคุมการทำงาน (Control Structures)
คำสั่งควบคุมใน C# ใช้สำหรับกำหนดทิศทางการทำงานของโปรแกรม เช่น การตัดสินใจ การทำซ้ำ หรือการหยุดทำงานบางส่วน ซึ่งเป็นหัวใจสำคัญของตรรกะโปรแกรม
ตัวอย่างการใช้คำสั่ง if…else เพื่อเปรียบเทียบค่าและตัดสินใจ
int score = 80;
if (score >= 50)
{
Console.WriteLine("ผ่านเกณฑ์");
}
else
{
Console.WriteLine("ไม่ผ่านเกณฑ์");
}อธิบายการทำงานของโค้ด:
- สร้างตัวแปร
scoreเพื่อเก็บคะแนน - เงื่อนไข
if (score >= 50)ตรวจสอบว่าคะแนนมากกว่าหรือเท่ากับ 50 หรือไม่ - ถ้าเป็นจริง → แสดงข้อความ “ผ่านเกณฑ์”
- ถ้าไม่จริง → แสดงข้อความ “ไม่ผ่านเกณฑ์”
ตัวอย่างคำสั่ง for loop
for (int i = 1; i <= 5; i++)
{
Console.WriteLine("รอบที่ " + i);
}อธิบายการทำงานของโค้ด:
- เริ่มตัวแปร
iจากค่า 1 - ทำซ้ำตราบใดที่
i <= 5 - ทุกครั้งที่จบลูปจะเพิ่มค่า
iขึ้นทีละ 1 - ภายในลูปจะแสดงข้อความ “รอบที่ x” ออกทางหน้าจอ
ตัวอย่างคำสั่ง while loop
int n = 1;
while (n <= 3)
{
Console.WriteLine("รอบที่ " + n);
n++;
}อธิบายการทำงานของโค้ด:
- สร้างตัวแปร
nโดยกำหนดค่าเริ่มต้นที่ 1 - ตรวจสอบเงื่อนไข
n <= 3หรือไม่ - ถ้าเป็นจริงให้แสดงข้อความ “รอบที่ n”
- หลังจากนั้นเพิ่มค่า
nขึ้นทีละ 1 จนกว่าเงื่อนไขจะเป็นเท็จ
ฟังก์ชันหรือเมธอด (Method)
Method คือชุดคำสั่งที่รวมการทำงานเฉพาะด้านไว้ด้วยกัน เพื่อให้เรียกใช้งานได้หลายครั้ง โดยไม่ต้องเขียนโค้ดซ้ำ
static void ShowMessage(string message)
{
Console.WriteLine(message);
}
static void Main()
{
ShowMessage("สวัสดีจาก C#!");
}อธิบายการทำงานของโค้ด:
- สร้างเมธอด
ShowMessageที่รับข้อความจากพารามิเตอร์message - ภายในเมธอด ใช้
Console.WriteLineเพื่อแสดงข้อความ - ในเมธอด
Main()เรียกใช้งานShowMessage()พร้อมส่งข้อความ “สวัสดีจาก C#!” - โปรแกรมจะแสดงข้อความดังกล่าวบนหน้าจอ
แนวคิดการเขียนโปรแกรมเชิงวัตถุ (Object-Oriented Programming)
ภาษา C# ถูกออกแบบภายใต้แนวคิด OOP (Object-Oriented Programming) ซึ่งเน้นการสร้าง “วัตถุ (Object)” ที่มี “คุณสมบัติ (Property)” และ “พฤติกรรม (Method)” ของตัวเอง
class Student
{
public string Name;
public int Age;
public void ShowInfo()
{
Console.WriteLine($"ชื่อ: {Name}, อายุ: {Age}");
}
}
class Program
{
static void Main()
{
Student s1 = new Student();
s1.Name = "สมชาย";
s1.Age = 20;
s1.ShowInfo();
}
}อธิบายการทำงานของโค้ด:
- สร้างคลาส
StudentมีสองตัวแปรคือNameและAge - ภายในคลาสมีเมธอด
ShowInfo()สำหรับแสดงข้อมูลของนักเรียน - ในคลาส
Programสร้างอ็อบเจกต์s1จากคลาสStudent - กำหนดค่า
NameและAgeให้กับอ็อบเจกต์นั้น - เรียกใช้เมธอด
ShowInfo()เพื่อแสดงข้อมูลออกทางหน้าจอ
การเข้าใจ C# Syntax เป็นจุดเริ่มต้นของการเขียนโปรแกรมที่มั่นคง เพราะเป็นพื้นฐานของทุกโปรแกรม ไม่ว่าจะเป็น Web App, Desktop App หรือเกมใน Unity
เมื่อเข้าใจโครงสร้าง คำสั่งควบคุม ฟังก์ชัน และแนวคิดเชิงวัตถุแล้ว เราจะสามารถสร้างโปรแกรมขนาดเล็กและต่อยอดสู่ระบบขนาดใหญ่ได้อย่างมั่นใจ
