เกี่ยวกับสาขา


1. ทฤษฎีที่เป็นรากฐาน (Theoretical Foundation)

หัวใจของ CS ไม่ใช่แค่การเขียนโค้ดให้ทำงานได้ แต่คือการเข้าใจว่า “ทำไม” มันถึงทำงานแบบนั้น:

  • Theory of Computation: ศึกษาว่าปัญหาใดบ้างที่คอมพิวเตอร์แก้ได้ และปัญหาใดที่แก้ไม่ได้ (P vs NP)
  • Complexity Theory: การวัดความยากของปัญหาและการใช้ทรัพยากร (Time & Space Complexity) ซึ่งมักแสดงผลในรูปของ Big O Notation เพื่อวิเคราะห์ว่าอัลกอริทึมจะทำงานช้าลงแค่ไหนเมื่อข้อมูลเพิ่มขึ้น
  • Formal Languages: การศึกษาโครงสร้างไวยากรณ์ของภาษาโปรแกรม ซึ่งเป็นที่มาของ Compiler ที่เราใช้งานกัน

2. โครงสร้างและสถาปัตยกรรม (Infrastructure & Architecture)

ทำความเข้าใจตั้งแต่ระดับแรงดันไฟฟ้าไปจนถึงซอฟต์แวร์:

  • Computer Architecture: การออกแบบ CPU, Memory และการจัดวาง Registers
  • Operating Systems (OS): ศึกษาการจัดการ Process, Thread และ Memory Management (เช่น การทำ Garbage Collection ในภาษาอย่าง Dart หรือ Java)
  • Distributed Systems: การทำให้คอมพิวเตอร์หลายเครื่องทำงานร่วมกันเป็นระบบเดียว ซึ่งเป็นหัวใจของระบบ Cloud และ Microservices ในปัจจุบัน

3. การจัดการและวิเคราะห์ข้อมูล (Data Management)

ในยุคปัจจุบัน ข้อมูลคือทรัพยากรที่มีค่าที่สุด:

  • Database Systems: ไม่ใช่แค่การเขียน SQL แต่รวมถึงการออกแบบ Schema, การทำ Normalization ไปจนถึงระบบ NoSQL และการจัดการ Database Indexing เพื่อความรวดเร็ว
  • Data Mining & Big Data: การค้นหารูปแบบที่ซ่อนอยู่ในข้อมูลมหาศาลเพื่อนำมาใช้ประโยชน์ทางธุรกิจ

4. ปัญญาประดิษฐ์และการเรียนรู้ของเครื่อง (AI & Machine Learning)

สาขาที่กำลังเปลี่ยนโฉมโลก:

  • Machine Learning: การสร้างโมเดลที่สามารถเรียนรู้จากข้อมูลได้เองโดยไม่ต้องเขียนคำสั่งควบคุมแบบตายตัว
  • Computer Vision: การทำให้คอมพิวเตอร์ “มองเห็น” และเข้าใจภาพหรือวิดีโอ (เช่น ระบบตรวจจับใบหน้า)
  • NLP (Natural Language Processing): การประมวลผลภาษาธรรมชาติ เพื่อให้คอมพิวเตอร์เข้าใจการสื่อสารของมนุษย์