สรุป tRPC คืออะไร ใช้งานอย่างไร ฉบับสั้นกระชับ

หลังจากอ่านคร่าวๆ ยังไม่ได้ลองใช้จริง ต้องบอกว่าน่าสนใจ โดยเฉพาะใครสาย TypeScript น่าจะเอาไปปรับใช้ได้ไม่ยาก

tRPC

เป็นเครื่องมือที่เอาไว้สร้าง APIs ตัวเทียบที่มีอยู่ในท้องตลาด ก็คือ Rest, GraphQL โดยชูจุดเด่นที่เป็น TypeSafety คือถ้าหลังบ้านมีการเปลี่ยนตัวแปรใน API ที่หน้าบ้านจะสามารถ Detect ได้ ทำให้ลดความผิดพลาดในการเรียกชื่อฟิลด์ 

นอกจากนี้ยังมีฟีเจอร์อย่าง

  • Runtime Build ทำให้ไม่ต้องเสียเวลา Build ก่อน Run
  • มีให้ใช้ใน Javascript Framework ตัวหลักๆแล้ว เช่น Next.js
  • มี Autocomplete และขนาดบันเดิ้ลไฟล์เล็ก เนื่องจากเคลมว่า ไม่มี Dependencies

การใช้งาน

สำหรับการใช้งาน ไม่ได้มีอะไรซับซ้อน แค่ประกาศ Producer มา จากนั้นก็สร้าง HTTP Server ที่ต่างไปก็คือ ตัว Client ที่ใช้ Query จะต้องใช้ tRPC เพื่อ Sync กับหลังบ้าน

เหมาะกับใคร?

แน่นอน อย่างที่บอกไปตอนต้น เหมาะกับคนที่เขียน TypeScript ส่วนคนเขียน Javascript เดิมๆนั้น ตัด tRPC ทิ้งไปก่อนเลย

เหมาะกับคนที่ไม่ได้พัฒนา Public APIs เนื่องจากคนส่วนใหญ่ที่เป็น Client ก็ยังใช้ Rest อยู่ดี ไม่มีเหตุผลที่ต้องมาใช้ tRPC Client เลย ดังนั้นผมคิดว่ามันน่าจะเหมาะกับโปรเจ็คที่ไม่ใหญ่มาก และไม่ต้องมี 3rd party เยอะๆ

เกี่ยวอะไรกับ gRPC ไหม?

สำหรับใครที่ไม่รู้จัก gRPC มันคือ google remote procedure call ใช้เรียก APIs นี่แหละ แต่ว่าใช้เรียกกันระหว่าง Services หรือเอาง่ายๆก็คือ หลังบ้านคุยกันเอง ถึงจะใช้ gRPC แต่ tRPC คือ หน้าบ้านเรียกหลังบ้าน ดังนั้นสรุปก็คือ ใช้งานคนละประเภท แต่ชื่อแค่ชวนให้สับสน


Comments

Popular posts from this blog

วิธีตรวจสอบข้อมูลภาษีของตัวเอง รายได้ทั้งปี และค่าลดหย่อน จบครบที่เดียว

สูตรโกง Regex ใครไม่เก่ง Regular Expression มาทางนี้จ้า

คำถามจิตวิทยา และจริยธรรม เมื่อผมสามารถสับสวิตซ์รถไฟ และต้องเลือกชนใครสักคน

ฝากโค๊ด Online ด้วย Pastebin กันเถอะครับ !!

"yes" "yeah" "yep" เหมือนและต่างกันอย่างไร ?