𝗜 𝗕𝘂𝗶𝗹𝘁 𝗔𝗻 𝗔𝗜 𝗦𝗲𝗿𝘃𝗶𝗰𝗲 𝗪𝗶𝘁𝗵 𝗕𝗮𝗹𝗹𝗲𝗿𝗶𝗻𝗮
ผมสร้าง API สำหรับการวิเคราะห์ความรู้สึก (sentiment analysis) ผมใช้ Ballerina ซึ่งผมไม่เคยใช้ภาษานี้มาก่อนเลย
ปกติผมจะใช้ Express หรือ Flask ผมเลยอยากลองอะไรใหม่ๆ ดูบ้าง
โค้ด Backend ส่วนใหญ่เป็นงานวางระบบพื้นฐาน (plumbing) คุณต้อง parse JSON, ย้ายข้อมูล, และจัดการข้อผิดพลาด ตรรกะ (logic) จริงๆ นั้นมีเพียงเล็กน้อย แต่ส่วนของการเชื่อมต่อ (wiring) นั้นมีขนาดใหญ่มาก
Ballerina นำเรื่อง networking เข้ามาไว้ในตัวภาษาเลย และนี่คือสิ่งที่ผมได้เรียนรู้:
- Routing เป็นส่วนหนึ่งของฟังก์ชัน คุณไม่จำเป็นต้องมี router แยกต่างหาก
- JSON จะเปลี่ยนเป็น typed records โดยอัตโนมัติ ไม่ต้องทำการ parse เอง
- การเรียกใช้งานผ่าน Network จะใช้ลูกศร
->ส่วนการเรียกใช้งานภายใน (local calls) จะใช้จุด. - ลูกศรนี้จะแสดงให้เห็นว่าการเรียกใช้งานตรงไหนที่อาจเกิดข้อผิดพลาดได้ ทำให้เห็นจุดที่เสี่ยงได้อย่างชัดเจน
- Error คือค่าที่ส่งกลับมา (return values) โดยใช้ keyword
checkในการจัดการความล้มเหลว ซึ่งช่วยให้ happy path ดูสะอาดตา
Ballerina เหมาะสำหรับงานเชื่อมต่อ (glue work) ใช้มันเพื่อเชื่อมต่อ API และฐานข้อมูล มันทำให้การเชื่อมต่อระบบ (wiring) รู้สึกเป็นธรรมชาติ
ลองใช้ Ballerina ดู หากคุณต้องการเลิกเอา framework ต่างๆ มาเย็บต่อกัน