สรุป 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

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

ไขรหัสนาซี Enigma แบบง่ายๆ สไตล์เอนจิเนียร์อินดี้ (The Imitation Game)

รีวิว Dentiste Mastic Mint Bomb เม็ดอมที่ไม่ได้มีดีแค่ความสดชื่น

โปรแกรมบวกลบเมทริกซ์ง่ายๆ by C++ (ตอนที่ 1)

วิธีใช้ Google Chrome Extension บน Microsoft Edge (Chromium)