.NET 6 จับมือทำ

อธิบายทิศทางของบทความชุดนี้

Ponggun
T. T. Software Solution
3 min readFeb 18, 2023

--

บทความก่อนหน้านี้ ผมแนะนำแนวทางการใช้ VS Studio ซึ่งมี GUI ที่อำนวยความสะดวกในการช่วยพัฒนา .NET 6 Web API มาให้อย่างสะดวกรวดเร็วครับ แต่เราอาจจะยังไม่เข้าใจถึงโครงสร้างและไฟล์ต่างๆที่ VS Studio สร้างมาให้เราโดยอัฒโนมัติ และยังรวมไปถึงคำสั่งต่างๆที่ใช้เพื่อรันโปรแกรมของเราขึ้นมาได้ครับ

ในบทความนี้ผมจึงอยากจะชวนผู้อ่านมาร่วมเน้นการสอนพื้นฐานของการใช้งาน Tools และการพัฒนาโครงสร้าง Web API เพื่อนำมาเป็น Backend
ในการนำไปต่อยอดกับ Frontend อื่นๆในอนาคตนะครับ

เนื้อหาจะมีการเปรียบเทียบกับ VS Studio เป็นระยะๆนะครับ เพราะผมเพ้อคิดถึงความง่ายดายที่ VS Studio ช่วยทำให้อยู่ตลอดเลย แต่ก็ต้องลองตัดใจเพื่อหัดใช้และศึกษา VS Code ให้มากขึ้นครับ เหะๆ (- -”)

แฮร่ !!! มาหัดใช้ VS Code กันครับผม

เผื่อผู้อ่านอยากศึกษาเรื่องของ ความแตกต่างระหว่าง ASP.NET Core และ ASP.NET 4.x, โครงสร้างและการทำงานของ Web API Project, Kestrel, Middleware, Nuget, Minimal APIs

เผื่อผู้อ่านสนใจ Fundamental ของ .NET ผมแนะนำบทความจาก Saladpuk นะครับ ของดีย์

ส่วน Async Programming ผมแนะนำบทความนี้นะครับ

จุดประสงค์ของบทความนี้

ตั้งใจให้ผู้อ่านได้แนวทางการพัฒนาและดูแล Web API ของเราได้อย่างเหมาะสม ยืดหยุ่น รองรับการเปลี่ยนแปลงที่เกิดขึ้นจากความต้องการของลูกค้า และติดตั้งบน Servers ต่างๆได้อย่างสะดวกนะครับ

เนื้อหาเลยจะไม่ได้เน้นลงลึกในแต่ละหัวข้อ แต่จะรวบรวมหัวข้อที่คิดว่าจำเป็นในการพัฒนา Web API ที่จำเป็นให้ได้มากที่สุดแทนครับผม มองเป็น Keyword ไว้ตามไปศึกษาเพิ่มเติมกันต่อก็ได้นะครับ เย้ ^^

  • ติดตั้งโปรแกรมที่จำเป็นกับการพัฒนา Web API ด้วย .NET 6
  • แนะนำ VS Code Extension เพื่อทำให้การพัฒนา .NET 6 ได้สะดวกขึ้น
  • เข้าใจการใช้ .NET CLI ในการจัดการโปรเจ็ค, ฐานข้อมูล และการรันโปรแกรม
  • ศึกษาโครงสร้างของไฟล์ใน .NET 6 โปรเจ็ค
  • เข้าใจการ Debugging ด้วย VS Code
  • เข้าใจแนวทางการพัฒนาโปรเจ็คให้ Source Code มีความยืดหยุ่นและดูแลรักษาได้ง่าย ด้วย Interface, Dependency Injection, Service Lifetimes, Clean Architecture
  • หัดติดตั้งและเชื่อมต่อฐานข้อมูล PostgreSQL ด้วย Docker และ DBeaver
  • หัดติดตั้งและเชื่อมต่อฐานข้อมูล MongoDB ด้วย Docker และ MongoDB Compass
  • ทดลองใช้ Swagger OpenAPI
  • ทดลองใช้งาน Postman ในการเรียก Web API
  • ศึกษาเรื่อง IOption Pattern ในการเรียกใช้ Configuration File, Environment Variable
  • ทดลองใช้งาน Entity Framework ด้วย Code First Migration, Seeding Data และ Database Context ด้วยการเชื่อมต่อไปที่ PostgreSQL
  • ศึกษาเรื่อง Logging ด้วย Serilog และ Sink ด้วยการเชื่อมต่อไปที่ MongoDB
  • ศึกษาเรื่อง User Authentication ด้วย .NET Core Identity and JSON Web Tokens
  • ศึกษาการทำ Unit Testing ด้วย xUnit
  • ทดลองพัฒนา Backgroud/Schedule Process ด้วย Hangfire
  • ทดลองสร้างระบบ Health Check UI ด้วย AspNetCore.Diagnostics.HealthChecks
  • เปรียบเทียบสิ่งที่ทำไปทั้งหมดในบทความกับ The Twelve Factors App

สรุป

ในบทความนี้เนื้อหาจะเยอะมากๆเลย ผมตั้งใจให้เป็นแบบนี้เพื่อวางรากฐานสำหรับสิ่งที่จำเป็นถ้าเราอยากจะพัฒนาโปรแกรมด้วย .NET 6 ครับผม ไม่ว่าจะเป็นเรื่องของ Tools ที่ใช้, เทคนิคต่างๆ เช่น Dependency Injection, Docker

ผมคาดหวังว่าเนื้อหาในบทความนี้จะเป็นประโยนช์กับผู้อ่านไม่มากก็น้อยนะครับ

ขอบคุณผู้อ่านทุกท่านมากๆครับผม (/\)

Happy Coding

นายป้องกัน

--

--

Ponggun
T. T. Software Solution

Development Manager, Web Developer with ASP.Net, ASP.net Core, Azure and Microsoft Technologies