Skip to content

.NET

ส่วนหนึ่งของ Beginner Book — เสริมจาก csharp/

ASP.NET Core = framework (ชุดเครื่องมือ/โครงสำเร็จรูปสำหรับสร้างโปรแกรม) บน .NET สำหรับสร้าง:

  • web/API — Application Programming Interface คือช่องทางให้โปรแกรมคุยกัน
  • microservice — สถาปัตยกรรมที่แยกระบบเป็นบริการเล็ก ๆ หลายตัว

ตั้งแต่ .NET Core 1.0 Microsoft ออกแบบใหม่หมดด้วย 3 เป้าหมาย:

  • cross-platform — ทำงานข้ามระบบปฏิบัติการ Win/Linux/Mac
  • performant — ประสิทธิภาพสูง
  • modular — แยกเป็นชิ้นส่วนเลือกใช้ได้

ตำแหน่งใน TechEmpower benchmark (การวัดเปรียบเทียบประสิทธิภาพ framework ต่าง ๆ) — ASP.NET Core อยู่ในกลุ่ม top tier โดยเฉพาะหมวด plain text และ JSON serialization เร็วเทียบเคียงกับ framework ระดับท็อปของ Java/Go/Rust

หมายเหตุ: ตัวเลขและอันดับเปลี่ยนไปตาม round และ workload — ควรเช็ค techempower.com/benchmarks round ล่าสุดก่อนอ้างอิงจริง (flagged 2026-06)

ก่อนเริ่ม — ควรผ่าน csharp/ มาก่อน อย่างน้อยถึงบทที่ 11 (async — การเขียนโปรแกรมแบบไม่ต้องรอผลทีละขั้น) เพราะเล่มนี้ใช้ async ตั้งแต่บทแรก ๆ นอกจากนี้ควรคุ้นเคยกับ primary constructor (C# 12 — วิธีย่อประกาศ constructor ในบรรทัดเดียวกับชื่อคลาส), record (ชนิดข้อมูลสำหรับเก็บค่าแบบ immutable — แก้ไขไม่ได้หลังสร้าง), และ switch expression (switch แบบย่อที่คืนค่าออกมาได้เลย) ด้วย เพราะตั้งแต่บทที่ 5 เป็นต้นไปใช้ syntax เหล่านี้ตลอด


โครงสร้างหนังสือ

  1. 00 — ASP.NET Core คืออะไร (host, DI, pipeline)
  2. 01 — REST API แรก (Minimal + Controller, attribute routing)
  3. 02 — Database + EF Core (Code-first, migration, transaction)
  4. 03 — Security + JWT (Identity, Authorization policies)
  5. 04 — Testing (xUnit + WebApplicationFactory + Testcontainers)
  6. 05 — Production Readiness (Docker, health, logging, OpenAPI)
  7. 06 — Middleware + Pipeline ลึก
  8. 07 — Dependency Injection ลึก (lifetime, options pattern)
  9. 08 — Background Service + Channels + Hosted Service

คุณจะได้อะไร

บางหัวข้อในลิสต์นี้ (เช่น OpenTelemetry, Kubernetes, distributed lock) เป็นเรื่องระดับ production ขั้นสูง — อ่านผ่าน ๆ ก่อนได้ ไม่ต้องเข้าใจร้อยเปอร์เซ็นต์ในรอบแรก

  • เข้าใจ pipeline (สายท่อที่ request วิ่งผ่านทีละชั้น) ของ ASP.NET Core — ประกอบด้วย:
    • middleware — ตัวคั่นกลางที่ประมวลผล request ระหว่างทาง
    • filter — ตัวกรองที่รันก่อน/หลัง handler
    • model binding — การแปลงข้อมูลจาก request เป็น parameter
  • เขียน REST API (รูปแบบ API ที่ใช้ HTTP method มาตรฐาน) ที่ idiomatic (เขียนตามแบบแผนที่ภาษานั้นนิยม) ทั้งแบบ Minimal และ Controller
  • ใช้ EF Core (Entity Framework Core — ตัวเชื่อมระหว่าง object กับ database) ได้ดี — query, migration (การปรับโครงสร้าง DB เป็นขั้น ๆ), transaction (กลุ่มคำสั่งที่สำเร็จหรือล้มเหลวพร้อมกัน), performance tuning (การปรับจูนประสิทธิภาพ)
  • ทำ auth (authentication — การยืนยันตัวตน)/authorization (การตรวจสิทธิ์) ที่ปลอดภัย — JWT + policy-based
  • Test ทั้ง unit (ทดสอบหน่วยย่อย) + integration (ทดสอบหลายส่วนทำงานร่วมกัน) ได้
  • Deploy (นำขึ้นใช้งานจริง) ขึ้น Docker/Kubernetes/Azure
  • เลือกระหว่าง Minimal API vs Controller ตามสถานการณ์